pzg's blog

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文件。(为防止意外情况发生,请事先备份这两个文件)

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

《 “WordPress编辑器全攻略” 》 有 5 条评论

  1. 过路访客 的头像

    wordpress 编辑文章时字体选择钮怎么添加?只差这一个按钮没有

    1. countmeon 的头像

      wordpress没有字体大小按钮

  2. BarryYoung 的头像

    请问如何修改编辑器的语言?

    1. countmeon 的头像

      不明白你的意思

  3. 前台 的头像

    前台调用编辑器怎么添加默认文本a ?

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注