Intereting Posts
Почему мой визуальный редактор сообщений ломается, когда я пытаюсь добавить кнопку TinyMCE? Возьмите сохраненные адреса электронной почты из пользовательского типа сообщений и перейдите в одну строку Покажите счет автора общей суммы должностей, присваиваемых пользовательскому термину таксономии Мета-запрос И / Или Имеет ли WP, php или текущую структуру (woofoo / genesis и т. Д.). Предложить способ запланировать изменения цвета текста / bg? API-интерфейс плагина SVN и обновления – как идентифицируются плагины? Пользовательские метаботы и поля Multicheck Issue фильтр крюка после того, как_content на определенной странице Показаны текущие термины таксономии Добавить пользовательское поле на страницу архива? Добавить виджет панели инструментов на страницу, созданную с помощью add_menu_page ()? Запрос Не работает как ожидалось Stomping WP_Query в архиве автора для облегчения разбивки на страницы с пользовательскими запросами Использовать существующие размеры изображений для WooCommerce WordPress и nginx, загрузите несколько страниц вместо того, чтобы их обслуживать

wp_editor некоторая функциональность, не работающая над настраиваемой темой

Я создаю пользовательскую тему. В этой теме у меня есть некоторые настраиваемые параметры на экране редактирования страницы. Для этого у меня есть настраиваемая кнопка, которая появляется, и при нажатии открывается раскрывающийся div, который я создал (у этого наложения есть настраиваемые поля параметров). Оба HTML для кнопки и наложения выводятся через действие post_submitbox_misc_actions. Основная форма этого выглядит в моем файле functions.php:

add_action( 'post_submitbox_misc_actions', 'add_custom_button' ); function add_custom_button() { global $current_screen; if( $current_screen->post_type == 'page' ) { //The custom button and HTML is echoed out here } } 

Теперь я хочу добавить редактор WordPress по умолчанию в качестве поля в моем оверлейном div. Для начала я взял базовый пример из кода:

 $content = ''; $editor_id = 'mycustomeditor'; wp_editor( $content, $editor_id ); 

Однако это отображает проблемы, связанные с некоторыми функциями. Например, если я нажимаю на вкладку «текст», ничего не происходит, то же самое, если я нажимаю кнопки «Вставить Загрузить», «Добавить медиа». Если я нажму кнопку «Вставить Загрузить», URL-адрес будет добавлен с помощью «#TB_inline? Width = 640 & inlineId = select-download», но больше ничего не произойдет. Все остальные кнопки в редакторе работают.

Я проверил мою консоль браузера и не получил ошибок JavaScript, когда редактор загружает / нажимает кнопку в редакторе.

В действии "admin_enqueue_scripts":

 wp_enqueue_media(); 

функция вызывается.

Есть ли что-нибудь еще, что мне нужно сделать, чтобы использовать редактор, или что-то, что я пропустил или настроил неправильно?

Проблема заключалась в том, как я создал свой оверлей. В значительной степени я использовал e.stopPropagation (), чтобы остановить внутренние divs от закрытия на наложении при щелчке родителя. Использование e.stopPropagation () предотвратило работу некоторых кликов редактора wp.

Вместо этого я использовал проверку, которая применила бы только закрытие наложения на родительском, а не на потомственные элементы, которые удалили использование e.stopPropagation ().

 $( "#parent_overlay" ).click( function( e ) { //Without this check all inner elements would also apply the closing code if( e.target == this ) { $( "#parent_overlay" ).fadeOut(); $( "body" ).removeClass( "noscroll" ); } });