我正在尝试向TinyMCE编辑器添加一个按钮。我正在使用WordPress 3.9.1,所以我关注this tutorial 添加新的TinyMCE按钮。现在,我只是想让教程版本正常工作——完成后,我将编辑按钮的脚本,以实际执行我想要的操作。
我已将此添加到我的孩子主题中functions.php
文件:
// Hooks your functions into the correct filters
function my_add_mce_button() {
// check user permissions
if ( !current_user_can( \'edit_posts\' ) && !current_user_can( \'edit_pages\' ) ) {
return;
}
// check if WYSIWYG is enabled
if ( \'true\' == get_user_option( \'rich_editing\' ) ) {
add_filter( \'mce_external_plugins\', \'my_add_tinymce_plugin\' );
add_filter( \'mce_buttons\', \'my_register_mce_button\' );
}
}
add_action(\'admin_head\', \'my_add_mce_button\');
// Declare script for new button
function my_add_tinymce_plugin( $plugin_array ) {
$plugin_array[\'my_mce_button\'] = get_template_directory_uri() .\'/js/mce-button.js\';
return $plugin_array;
}
// Register new button in the editor
function my_register_mce_button( $buttons ) {
array_push( $buttons, \'my_mce_button\' );
return $buttons;
}
我还创建了一个包含以下内容的脚本,并将其保存为子主题文件夹的/js目录中的“mce-button.js”。
(function() {
tinymce.PluginManager.add(\'my_mce_button\', function( editor, url ) {
editor.addButton(\'my_mce_button\', {
text: \'New Button\',
icon: false,
onclick: function() {
editor.insertContent(\'WPExplorer.com is awesome!\');
}
});
});
})();
然而,当我保存所有这些并加载帖子编辑器(在“视觉”选项卡中)时,没有任何按钮加载,并且我无法在编辑器中输入文本。事实上,如果我转到“文本”选项卡并输入文本,然后切换回“视觉”选项卡,则不会显示我输入的文本。
有人能帮我弄清楚为什么我的TinyMCE编辑器坏了,以及如何在不坏的情况下正确添加按钮?
非常感谢。