说到WordPress自带的TinyMCE 编辑器,有些国人总是不太满意。针对这个情况,倡萌已经介绍了一些增强或替代的方法:

今天再补充一些 TinyMCE 编辑器增强技巧,希望能尽可能满足你自己的折腾需求。

更改编辑器默认视图为HTML

大家都知道,在后台新建文章后,编辑器就自动跳转到“可视化”视图,对于一些经常要插入代码或者WEB设计者们来说,可能更习惯使用HTML视图手动编辑。

设置方法:将以下代码添加到主题的functions.php文件里即可:

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

添加编辑器默认内容(编辑器内可见)

新建文章后编辑器里的内容默认是空的,有些朋友做的是WordPress主题站、插件站或单纯的下载站,一些标准的格式化的文章每次都会输入“主题名称”、“主题作者”、“下载地址”等内容,添加默认内容之后,这些重复性的工作以后再也不用了,一切都预定义好了。而且如果发表文章不需要这些预定义的内容,只需要全选-Delete就ok了,并不会很麻烦。

设置方法:在主题functions.php文件添加以下代码即可:

1
2
3
4
5
6
7
function insertPreContent($content) {
if(!is_feed() && !is_home()) {
$content.= "这里的预定义内容在编辑器可见";
}
return $content;
}
add_filter ('default_content', 'insertPreContent');

添加编辑器默认内容(编辑时不可见)

此方法添加的内容在发布文章时自动添加在内容的最后,在编辑的时候是看不见的,用于添加订阅、文章版权信息等等。

设置方法:在主题functions.php文件添加以下代码即可:

1
2
3
4
5
6
7
function insertFootNote($content) {
if(!is_feed() && !is_home()) {
$content.= "这里的预定义内容在编辑器不可见";
}
return $content;
}
add_filter ('the_content', 'insertFootNote');

添加更多的HTML标签

此功能请慎用,因为WordPress自带的TinyMCE编辑器会默认过滤掉不符合XHTML 1.0中的html标签,如<br />、<iframe>等。但不排除某些情况下也可能会用到这些标签,所以把方法放出来供大家参考吧。

添加方法:将以下代码粘贴到主题的functions.php文件里即可:

1
2
3
4
5
6
7
8
9
10
11
12
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');

WordPress自带编辑器的强大往往被人忽略,很大程度上就是其隐藏的编辑按钮默认情况下没有被显示出来而已。

完整的编辑器其实包含这些功能:

加粗(bold)、斜体(italic)、下划线(underline)、删除线(strikethrough)、左对齐(justifyleft)、居中(justifycenter)、右对齐(justfyright)、两端对齐(justfyfull)、无序列表(bullist)、编号列表(numlist)、减少缩进(outdent)、缩进(indent)、剪切(cut)、复制(copy)、粘贴(paste)、撤销(undo)、重做(redo)、插入超链接(link)、取消超链接(unlink)、插入图片(image)、清除格式(removeformat)、帮助(wp_help)、打开HTML代码编辑器(code)、水平线(hr)、清除冗余代码(cleanup)、格式选择(formmatselect)、字体选择(fontselect)、字号选择(fontsizeselect)、样式选择(styleselect)、上标(sub)、下标(sup)、字体颜色(forecolor)、字体背景色(backcolor)、特殊符号(charmap)、隐藏按钮显示开关(wp_adv)、隐藏按钮区起始部分(wp_adv_start)、隐藏按钮区结束部分(wp_adv_end)、锚文本(anchor)、新建文本(类似于清空文本)(newdocument)、插入more标签(wp_more)、插入分页标签(wp_page)、拼写检查(spellchecker)。

下面就把这些功能调出来吧!效果图:

调用方式:将以下代码添加到主题functions.php文件里即可:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function enable_more_buttons($buttons) {
$buttons[] = 'hr';
$buttons[] = 'fontselect';
$buttons[] = 'sup';
$buttons[] = 'del';
$buttons[] = 'fontselect';
$buttons[] = 'cleanup';
$buttons[] = 'styleselect';
 
// 更多按钮自行添加吧...
 
return $buttons;
}
add_filter("mce_buttons", "enable_more_buttons"); //默认将新添加的按钮追加在工具栏的第一行
//add_filter("mce_buttons_2", "enable_more_buttons"); //添加到工具栏的第二行
//add_filter("mce_buttons_3", "enable_more_buttons"); //添加到工具栏的第三行

让编辑器支持中文拼写检查

WordPress自带TinyMCE编辑器默认对英文拼写进行检查,怎么样才能让其支持中文拼写检查呢?

设置方法:在主题的functions.php文件里添加如下代码即可:

1
2
3
4
5
6
7
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');

简单添加自定义按钮

如果你使用了 WordPress3.0以上的版本,可以用以下方法快捷方便的在后台HTML编辑器中加入自定义按钮。效果图:

步骤一:首先创建一个js文件,粘贴如下代码并保存为my_quicktags.js文件:

1
2
3
4
QTags.addButton( 'hr', 'hr', 'n<hr />n', '' ); //快捷输入一个hr横线,点一下即可
QTags.addButton( 'h1', 'h1', 'n<h1>', '</h1>n' ); //快捷输入h1标签
//QTags.addButton( 'my_id', 'my button', 'n', 'n' );
//这儿共有四对引号,分别是按钮的ID、显示名、点一下输入内容、再点一下关闭内容(此为空则一次输入全部内容),n表示换行。

步骤二:把刚才写好的my_quicktags.js放在主题文件夹,再在主题 functions.php 中加入代码:

1
2
3
4
5
6
7
8
add_action('admin_print_scripts', 'my_quicktags');
function my_quicktags() {
wp_enqueue_script(
'my_quicktags',
get_stylesheet_directory_uri().'/my_quicktags.js',
array('quicktags')
);
}

关于quicktags的更多参数(比如 按钮的提示),你可以查看 http://codex.wordpress.org/Quicktags_API

WordPress TinyMCE 编辑器增强技巧大全的更多相关文章

  1. Sublime Text 2 编辑器实用技巧大全

    http://blog.163.com/lgh_2002/blog/static/440175262012429146486/

  2. 不使用插件实现对WordPress默认编辑器的增强

    四处寻觅无果.无意看了一下wordpress官方的API函数.苍天有眼啊!原来,后台的编辑器可以插入很多增强功能.果断卸载掉CK and SyntaxHighlighter编辑器插件.事实上,Word ...

  3. 10个WordPress增强型编辑器大检阅

    Wordpress之所以优秀不在于其本身,而在于无数的插件开发者和性能优化人员.使用过Wordpress的人都知道,WP本身的编辑器极其简陋,就连简单的表格编辑也没有,可能吧这篇文章将介绍一些免费的增 ...

  4. eclipse快捷键以及使用技巧大全

    eclipse快捷键以及使用技巧大全1. 打开MyEclipse 6.0.1,然后"window"→"Preferences" 2. 选择"java& ...

  5. 黄聪:TinyMCE 4 增强 添加样式、按钮、字体、下拉菜单和弹出式窗口

    我最喜欢 WordPress 3.9 的更新是使用了 TinyMCE 4.0 编辑器.新的 TinyMCE 看起来看起来更整洁(真正匹配WP仪表板),它有一些非常不错的附加功能.我的很多老主题和插件必 ...

  6. Sublime2 Text编辑器使用技巧

        Sublime2 Text编辑器使用技巧 ------------------------------------软件使用----------------------------------- ...

  7. vim gvim技巧大全(9)(转载)

    vim gvim技巧大全(9) 2 用命令}移动到这个段落的底部,标记为b3 输入命令:'a,'b move来移动文本.老版本的Vi编辑器不能很好的来处理多文件.但是Vim在处理多文件上却显得优秀得多 ...

  8. Office_Word使用技巧大全(超全)

    目录 不收藏不行的 word 使用技巧大全 三招去掉页眉那条横线 批量转换全角字符为半角字符 快速打开最后编辑的文档 格式刷的使用 删除网上 下载 资料的换行符(象这种 "↓" ) ...

  9. tinymce 编辑器 上传图片

    tinymce编辑器进行本地图片上传 首先下载tinymce.js之后 在form中添加一个<textarea>元素 给其一个id和name 然后就可以初始化编辑器了 tinymce.in ...

随机推荐

  1. HDU5195 线段树+拓扑

    DZY Loves Topological Sorting Problem Description A topological sort or topological ordering of a di ...

  2. Android View的onTouch和onClick和onLongClick事件

    这三个事件的调用顺序是: onTouch->onLongClick->onClick 先看这三个事件的处理函数: public boolean onTouch(View v, Motion ...

  3. [RK3288][Android6.0] 调试笔记 --- 普通串口的添加 【转】

    本文转载自:http://blog.csdn.net/kris_fei/article/details/54574073   标签: rk3288 串口添加 2017-01-16 14:52 1079 ...

  4. Android 的Recovery机制【转】

    本文转载自:http://blog.csdn.net/fengying765/article/details/38301895 Android 的Recovery机制 目录 1. 系统的启动模式 1 ...

  5. python lmdb demo 这接口和BDB一样恶心啊!

    import lmdb lmdb_img_name = "test.lmdb" env = lmdb.open(lmdb_img_name, map_size=1e6) with ...

  6. Codeforces--630J--Divisibility(公倍数)

     J - Divisibility Crawling in process... Crawling failed Time Limit:500MS     Memory Limit:65536KB ...

  7. 图结构练习—BFSDFS—判断可达性(BFS)

    http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2138 注意该图为有向图,1000个点应该最多有 ...

  8. Vue Element-ui table只展开一行

    直接上代码了哈~ <template> <div class="app-content"> <div class="table_expand ...

  9. 【HDU1698】 Just a Hook 【线段树入门】

    原题:原题链接 题意:(机器翻译的...) 让我们将钩子的连续金属棒从1到N编号.对于每次操作,Pudge可以将连续的金属棒(从X到Y编号)改为铜棒,银棒或金棒. 钩的总值计算为N个金属棒的值的总和. ...

  10. B - Cows and Poker Game

    Problem description There are n cows playing poker at a table. For the current betting phase, each p ...