Пользовательские стили для WordPress tinymcePhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Пользовательские стили для WordPress tinymce

Сообщение Anonymous »

Я прочитал несколько учебных пособий для добавления пользовательских стилей в редактор Wysiwyg (tinymce). Ни один из них, кажется, не работает в новейших версиях WordPress. Я использую V3.3.2. Инструкции от Codex работают, но в ограниченном состоянии ... < /p>

Примечание: чтобы быть на 100% чистым, я пытаюсь добавить раскрытие «стили», который Автор может использовать для применения моих пользовательских стилей к тексту. (Пожалуйста, не путайте мой вопрос с тем, как стилизовать редактор самостоятельно, используя editor-style.css ...) < /p>

Мне удалось заработать код, работающий, но только используя закомментированную строку в my_mce_before_init () . Проблема с этой версией заключается в том, что она добавляет класс с общим
. Я пытаюсь использовать более мощную версию кода (как показано ниже), но что -то не совсем правильно. Выпадающая коробка Styles появляется, но она пустая. Если я нажимаю на него, первый пункт говорит «стили», но ничего не делает. Я подозреваю, что в моем массиве есть что -то. Надеюсь, кто -то более знающий, чем я, сможет меня подтолкнуть. > Вот как я добавляю кнопку: < /p>

Код: Выделить всё

// Add the Style selectbox to the second row of MCE buttons
function my_mce_buttons_2($buttons)
{
array_unshift($buttons, 'styleselect');
return $buttons;
}
add_filter('mce_buttons_2', 'my_mce_buttons_2');
< /code>

Вот как я добавляю стили (он работает, когда я не понаправду): < /p>

//Define the actual styles that will be in the box
function my_mce_before_init($init_array)
{
// add classes using a ; separated values
//$init_array['theme_advanced_styles'] = "Section Head=section-head;Sub Section Head=sub-section-head";

$temp_array['theme_advanced_styles'] = array(
array(
'title' => 'Section Head',
'block' => 'h3',
'classes' => 'section-head'
),
array(
'title' => 'Sub Section Head',
'block' => 'h4',
'classes' => 'sub-section-head'
)
);

$styles_array = json_encode( $temp_array['theme_advanced_styles'] );

//  THIS IS THE PROBLEM !!!! READ BELOW
$init_array['theme_advanced_styles'] = $styles_array;

return $init_array;
}
add_filter('tiny_mce_before_init', 'my_mce_before_init');
< /code>

[b] Обновление: я выяснил (см. Мой ответ ниже). Перед тем, как прокручивать вниз, обратите внимание в приведенном выше коде, тема_адвансия_styles 
- неправильный ключ. Это должно быть Style_formats при определении пользовательских стилей так, как я делаю. Я подозреваю, что это распространенная ошибка. [/b]


Подробнее здесь: https://stackoverflow.com/questions/105 ... ss-tinymce
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»