我一直在关注这个教程,很多人都喜欢它:http://codex.wordpress.org/TinyMCE_Custom_Buttons
function myplugin_addbuttons() {
// Don't bother doing this stuff if the current user lacks permissions
if ( ! current_user_can('edit_posts') && ! current_user_can('edit_pages') )
return;
// Add only in Rich Editor mode
if ( get_user_option('rich_editing') == 'true') {
add_filter('mce_buttons', 'register_myplugin_button');
}
}
//Should add 'code' to the tinyMce buttons on the rich editor.
function register_myplugin_button($buttons) {
array_push($buttons, "code");
return $buttons;
}
// init process for button control
add_action('init', 'myplugin_addbuttons');
我想做的就是将“代码”按钮添加到富文本编辑器中。它已经在 HTML 编辑器端了。从教程提到的方式来看,似乎我可以将 array_push“代码”写入按钮。但这不起作用。我做错了什么?
如果您有权向 TinyMCE 配置添加设置(根据您之前的评论,我不确定您是否这样做),那么您可以添加以下内容。
style_formats : [{title : 'Code', inline : 'code'}]
这将执行的操作是在“样式”下拉列表中添加一个“code”项目,该项目会将所选文本包装在代码标签中。
如果您无法访问配置来添加此内容,那么您可能需要开发一个 TinyMCE 插件,以编程方式注册该格式。顺便说一句,您引用的 WordPress 文章中如何开发 TinyMCE 插件的链接不再正确。请查看操作方法文章。
最后,如果所有其他方法都失败,您可以开发一个插件,将所选文本 (ed.selection.getContent()) 包装在代码中,并使用 ed.selection.setContent()
返回它我编写了一个插件,它正是这样做的,即它提供了一个名为“codeElement”的按钮,用户可以使用该按钮将文本包装在代码元素或标签中。
刚刚偶然发现了 http://wordpress.org/plugins/tinymce-code-element/ WordPress 插件,它可以完成这项工作。