我正在使用自定义插件将自定义按钮添加到我的可视化编辑器中。现在,我已经跟踪了this tutorial 并添加了一个“代码”按钮,但我还想添加一个“引用”按钮,将所选文本包装在<cite></cite>
标签。我确信我可以复制这个插件并做一些小的修改,但这看起来很笨拙和低效,我更愿意通过同一个插件添加这两个按钮。
我知道这有一个相关的问题here, 但这是几年前的事了,我正在使用WordPress 3.9.1,它使用了TinyMCE的新版本。因此,我不完全确定这个答案有多重要,或者如何将其应用于TinyMCE 4。*。
下面是我用来添加“代码”按钮的PHP脚本:
<?php
add_action( \'init\', \'code_button\' );
function code_button() {
add_filter( "mce_external_plugins", "code_add_button" );
add_filter( \'mce_buttons\', \'code_register_button\' );
}
function code_add_button( $plugin_array ) {
$plugin_array[\'mycodebutton\'] = $dir = plugins_url( \'shortcode.js\', __FILE__ );
return $plugin_array;
}
function code_register_button( $buttons ) {
array_push( $buttons, \'codebutton\' );
return $buttons;
以及相关JS文件:
(function() {
tinymce.create(\'tinymce.plugins.code\', {
init : function(ed, url) {
ed.addButton(\'codebutton\', {
title : \'Code\',
cmd : \'codebutton\',
icon: \'icon dashicons-editor-code\'
});
ed.addCommand(\'codebutton\', function() {
var selected_text = ed.selection.getContent();
var return_text = \'\';
return_text = \'<code>\' + selected_text + \'</code>\';
ed.execCommand(\'mceInsertContent\', 0, return_text);
});
},
// ... Hidden code
});
// Register plugin
tinymce.PluginManager.add( \'mycodebutton\', tinymce.plugins.code );
})();
要添加另一个自定义按钮,我需要对这些文件进行哪些更改?
谢谢
最合适的回答,由SO网友:SpencerDub 整理而成
我在堆栈溢出时询问了这个问题,得到了following answer 来自用户Howlin:
有一个插件可以帮助你,它叫做Visual Editor
Custom Buttons.
安装后,仪表板菜单上有一个称为Visual Editor自定义按钮的选项,
有一个名为“添加新样式”的选项称为新样式,例如“引用”确保勾选了“包装选择”选项,在“之前”框中输入内容之前要包装的内容,例如在“之后”框中输入内容之后要包装的内容,例如在上面的“在编辑器中显示”框中勾选一个或两个选项
如果选择了视觉/文本,则选择按钮图标/快速标签(可选)完成上述操作后,单击屏幕右侧的蓝色“发布”打开要使用新样式的页面/帖子,突出显示文本单击刚刚创建的样式,应该将其插入这个插件让我可以轻松地做我想做的事情,而不用玩我不懂的代码。对我有用!