WordPress 3.9 - Проблемы с редактированием нового TinyMCE

9

Скоро выйдет 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, который также, похоже, не имел никакого эффекта.

Я использую плагин WordPress Beta Tester, и у меня установлен TinyMCE Advanced, но он отключен.

С новым TinyMCE, как я могу продолжать использовать / настройку, и есть ли какие-либо «Gotchas», которые изменились по сравнению с предыдущей версией TinyMCE?

РЕДАКТИРОВАТЬ

Похоже, $in['wordpress_adv_hidden'] = false;больше не используется - не знаю, как показать кухонную раковину.

Howdy_McGee
источник

Ответы:

7

Строки были новыми, не более для ваших требований.

Это новый контент хука.

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 9758082 и эту ветку для WP 3.9 и новый TinyMCE 4.0, чтобы понять тему.

Принудительная панель инструментов2

Чтобы всегда показывать панель инструментов 2, без использования кнопки wp_advдобавьте следующий источник в плагин.

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для переключения панели инструментов, см. Тикет 27963 . Затем можно использовать следующий источник.$in['wordpress_adv_hidden'] = FALSE;

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

    $in['wordpress_adv_hidden'] = FALSE;

    return $in; 
}
bueltge
источник
Так что тут не скрывается «кухонная раковина» (toolbar2)?
Howdy_McGee
Что такое кухонная раковина?
Бюлтге
Панель инструментов2, wp_adv- показать панель инструментов1 и панель инструментов 2 по умолчанию. Раньше вы могли делать это, $in['wordpress_adv_hidden'] = false;что больше не работает.
Howdy_McGee
Ах хорошо. Теперь я добавил источник в мой ответ для принудительного использования панели инструментов2.
Бюлтге
1
@Howdy_McGee Я только что прочитал в Make WordPress Core, что параметр кухонной мойки должен вернуться в 3.9.1 очень скоро.
helgatheviking
6

Одним из изменений является то, что:

theme_advanced_buttons1 будет изменен на:

toolbar1 что позволяет обновлять кнопки, чтобы моя новая функция выглядела примерно так:

function myformatTinyMCE( $in ) {
    $in['toolbar1'] = 'bold';
    $in['toolbar2'] = 'formatselect';
    return $in; 
}
add_filter( 'tiny_mce_before_init', 'myformatTinyMCE' );

Кроме того, похоже, что formatselectна этой итерации не так уж и много. Вероятно, следует преобразовать в, styleselectпоскольку это позволяет использовать больше параметров и настроек (например, вложенных стилей), а также использовать более минималистичный дизайн.

Другой Гоча это варианты выравнивания были изменены , justifyчтобы alignвыглядеть примерно так: alignleft, aligncenter, alignright, alignjustify.

Howdy_McGee
источник