WordPress 3.9-编辑TinyMCE 4.0时遇到问题

时间:2014-03-14 作者:Howdy_McGee

WordPress 3.9即将推出,带来了TinyMCE 4.0。我正在运行我的插件和函数,通过一些测试,发现我的一个函数似乎坏了/不能与新的TinyMCE一起使用

function myformatTinyMCE( $in )
{
    $in[\'theme_advanced_buttons1\'] = \'bold\';
    $in[\'theme_advanced_buttons2\'] = \'formatselect\';
    $in[\'wordpress_adv_hidden\'] = false;
    return $in; 
}
add_filter( \'tiny_mce_before_init\', \'myformatTinyMCE\' );
上面的函数用于将tinyMCE中的按钮限制为特定的按钮,我对其进行了一些简化,以便于测试。如果我打印出来$in 它在正确的位置显示正确的值,但当我实际加载页面时,它只是默认为普通按钮。

我还尝试在TinyMCE Codex 这似乎也没有任何效果。

我正在使用WordPress Beta Tester Plugin和我有TinyMCE Advanced 已安装但已禁用。

有了新的TinyMCE,我如何继续使用/定制,是否有任何与以前的TinyMCE版本不同的“问题”?

EDIT

看起来像$in[\'wordpress_adv_hidden\'] = false; 不再使用-不知道如何打开厨房水槽。

2 个回复
最合适的回答,由SO网友:bueltge 整理而成

字符串是新的,不符合您的要求。

这是钩子的新内容。

array (
  \'selector\' => \'#content\',
  \'resize\' => \'vertical\',
  \'menubar\' => false,
  \'wpautop\' => true,
  \'indent\' => false,
  \'toolbar1\' => \'template,|,bold,italic,strikethrough,bullist,numlist,blockquote,hr,alignleft,aligncenter,alignright,link,unlink,wp_more,spellchecker,wp_fullscreen,wp_adv\',
  \'toolbar2\' => \'formatselect,underline,alignjustify,forecolor,pastetext,removeformat,charmap,outdent,indent,undo,redo,wp_help\',
  \'toolbar3\' => \'\',
  \'toolbar4\' => \'\',
  \'tabfocus_elements\' => \'insert-media-button,save-post\',
  \'body_class\' => \'content post-type-post post-status-draft post-format-standard\',
)
还要将源中数组内的字符串更改为:

function myformatTinyMCE( $in ) {

    $in[\'toolbar1\'] = \'bold\';
    $in[\'toolbar2\'] = \'formatselect\';

    return $in; 
}
add_filter( \'tiny_mce_before_init\', \'myformatTinyMCE\' );
但也可以查看此测试插件Gist 9758082this thread 了解WP 3.9和新的TinyMCE 4.0主题。

强制工具栏2始终显示工具栏2,而不使用按钮wp_adv 将follow源添加到插件。

add_action( \'plugins_loaded\', \'fb_force_show_toolbar2\' );
function fb_force_show_toolbar2() {
    set_user_setting( \'hidetb\', 1 );
}
但是,现在值的提示wordpress_adv_hidden. 在下一个WordPress版本中,3.9之后将恢复旧挂钩wordpress_adv_hidden 要切换工具栏,请参见ticket 27963. 然后可以使用follow源。$in[\'wordpress_adv_hidden\'] = FALSE;

add_filter( \'tiny_mce_before_init\', \'myformatTinyMCE\' );
function myformatTinyMCE( $in ) {

    $in[\'wordpress_adv_hidden\'] = FALSE;

    return $in; 
}

SO网友:Howdy_McGee

一个变化是:

theme_advanced_buttons1 将更改为:

toolbar1 它允许您更新按钮,使我的新功能看起来像:

function myformatTinyMCE( $in ) {
    $in[\'toolbar1\'] = \'bold\';
    $in[\'toolbar2\'] = \'formatselect\';
    return $in; 
}
add_filter( \'tiny_mce_before_init\', \'myformatTinyMCE\' );
而且看起来formatselect 在这个迭代中并没有得到那么多的青睐。应该转换为styleselect 因为它允许更多的选项和自定义(例如嵌套样式),并且还支持更简约的设计。

另一个问题是对齐选项已从justifyalign 像这样:alignleft, aligncenter, alignright, alignjustify.

结束

相关推荐

在TinyMCE快捷码页面上使用虹膜拾色器

我实际上正在开发一个小的短代码插件。在插件主文件上,我注册TinyMCE按钮并链接core js about按钮:add_filter(\"mce_external_plugins\", \"shortcodes_tinymce_plugin\"); add_filter(\"mce_buttons\", \"register_shortcodes_button\"); function register_shortcodes_button($buttons) {