wordpress后台编辑器的优化、增强

更新和维护一个中文网站往往需要复杂的文字编辑工作,尽管我现在的编辑器功能已经十分强大,但还是无法我一些必须的要求,比如,给字加点。我现在能做的也只是通过手工添加代码给它加上稠密的小点,这样的方式自然是很笨拙的,最好能强化一下后台编辑器,需要添加什么功能,只需点一下即可。下面转载一篇相关文章,以便学习:

如果文字内容在你的WordPress博客里比重比较大,那么你一定经常需要和WordPress的编辑器打交道。这篇文章就介绍一些增强WordPress编辑器用途的小技巧。

为编辑器添加新的HTML标签

默认情况下WordPress编辑器不允许不符合XHTML 1.0标准的HTML标签出现在编辑器里。例如,iframe就会被编辑器过滤掉。如果你需要在文章或者页面里插入iframe,结果会让你很沮丧。

下面的代码强制编辑器接受更多HTML标签。你只需要把它们粘贴到主题的functions.php文件里然后保存就可以了。

  function fb_change_mce_options($initArray) { 
  $ext = 'pre[id|name|class|style],iframe[align|longdesc| 
  name|width|height|frameborder|scrolling|marginheight| 
  marginwidth|src]'; 
  if ( isset( $initArray['extended_valid_elements'] ) ) { 
  $initArray['extended_valid_elements'] .= ',' . $ext; 
  } else { 
  $initArray['extended_valid_elements'] = $ext; 
  } 
  return $initArray; 
  } 
  add_filter('tiny_mce_before_init', 'fb_change_mce_options');

将HTML编辑器设为默认编辑器

惯于写代码的站长们更习惯编写HTML,所以他们不太喜欢WordPress的可视化编辑器,而且在所见即所得编辑器里更可能生成无效代码或者混乱的代码。

那么要怎样把HTML编辑器设为WordPress的默认编辑器呢?打开主题的functions.php文件,加入以下代码:

add_filter('wp_default_editor', create_function('', 'return "html";'));

在编辑器里添加默认内容

在functions.php文件里添加以下代码:

function insertFootNote($content) {
              if(!is_feed() && !is_home()) {
                      $content.= "<div class='subscribe'>";
                      $content.= "<h4>标题</h4>";
                      $content.= "<p>显示的正文内容<a href='http://指向的链接'>链接文字</a></p>";
                      $content.= "</div>";
              }
              return $content;
     }
     add_filter ('the_content', 'insertFootNote');

事实上这些内容并不会显示在编辑器里,但你每次发布新文章时,文章结尾会出现你事先设定的内容。

显示Tiny MCE中的隐藏按钮

默认情况下,WordPress的TinyMCE编辑器中只给出了最常用的编辑按钮,比如加粗、斜体、标题等。如果你需要更多文字格式选项,可以在functions.php文件里加上下面的代码,让隐藏的按钮统统显示出来:

function enable_more_buttons($buttons) {    
     $buttons[] = 'hr';    
     $buttons[] = 'fontselect';    
     $buttons[] = 'sup';      
      // etc, etc...      
      return $buttons;  
      }  
      add_filter("mce_buttons", "enable_more_buttons");

可用的编辑按钮包括:加粗、斜体、下划线、删除线、左对齐、居中、右对齐、两端对齐、无序列表、编号列表、减少缩进、缩进、剪切、复制、粘贴、撤销、重 做、插入超链接、取消超链接、插入图片、清除、帮助、代码、水平线、删除格式、格式选择、字体选择、字号选择、样式选择、上标、下标、前景色、背景色、特 殊符号、视觉辅助、锚文本、新建文本与分隔符。

添加本地语言的拼写检查

WordPress默认配置中有一个英文拼写检查工具,那么有没有办法对其它语言进行拼写检查呢?

同样可以在functions.php里加上下面的代码(以中文为例)以实现拼写检查功能:

function fb_mce_external_languages($initArray){      
    $initArray['spellchecker_languages'] = '+Chinese=zh, 
    English=en';        
    return $initArray;  
    }  

    add_filter('tiny_mce_before_init', 'fb_mce_external_languages');

虽说WordPress内置的TinyMCE编辑器就是一款所见即所得(WYSIWYG)编辑器,然而我们在后台编辑好的文章和在前台看到的效果,总不十分一致。要让后台编辑结果和前台显示效果实现更高的匹配度,其实也不难。

给WordPress编辑器添加自定义按钮

在WordPress编辑器里添加各种按钮,可以给编辑器增加更多功能,让你更方便地编辑文章。

假设我们需要在HTML编辑器里加上一个Google AdSense广告的插入按钮。首先需要编写一段关于Google AdSense的短代码并加入到funtions.php文件里。下面是一个Google AdSense段代码的示例:

function do_adsense() {
       $adsense = "你的AdSense代码";
       return $adsense;
     }
     add_shortcode('adsense', 'do_adsense');

完成上面的代码后,我们需要在wp-includes/js文件夹下的quicktags.js文件里加入一段代码。不过操作顺序应该是,在quicktags.dev.js文件里加入代码:

edButtons[edButtons.length] =  new edButton(‘ed_adsense’  ,’adsense’  ,[adsense],’’  ,'adsense'  );

然后将quicktags.dev.js更名为quicktags.js,替换原有的quicktags.js文件。(为防止意外情况发生,请事先备份这两个文件)

保存并刷新后台的编辑界面,你就会看到新的编辑按钮了,当然你也可以稍微改动其中的代码来添加其他按钮。

群振

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: