Когда Wordpress добавляет класс hide-if-js в метабоксы

У меня есть 2 метабокса, добавленных к типу «страница». Но только в первом случае Wordpress (сам по себе) добавляет класс hide-if-js в контейнер метабокса. Вопрос в следующем: когда Wordpress добавит этот hide-if-js в div-контейнер метабокса??

Код добавления первого метабокса — он автоматически получает класс hide-if-js:

add_action( 'add_meta_boxes', 'add_portfolio_template_meta' );
 function add_portfolio_template_meta() {
add_meta_box('projects-details-for-template', 'Portfolio template options:', 'projects_details_for_template_html', 'page', 'side', 'default');

}

Сценарий добавления второго метабокса:

add_action( 'add_meta_boxes', 'add_contact_template_meta' );
function add_contact_template_meta() {
add_meta_box('contact-details-for-template', 'Contact page details:', 'contact_details_html', 'page', 'side', 'default');

}

person Vitalie    schedule 25.02.2013    source источник


Ответы (2)


Только сегодня столкнулся с этим. Оказывается, это связано с верхним разделом «параметры экрана» (в правом верхнем углу бэкэнда при редактировании поста открывается новый div).

Класс «hide-if-js» будет находиться в вашем метабоксе при загрузке страницы, если он не выбран в «параметрах экрана». Чтобы удалить класс/сделать метабокс видимым, снимите его.

person Kaitlyn McDonald    schedule 19.03.2013

После обновления моего WordPress до версии 3.9 я заметил, что больше не могу печатать в большом поле содержимого. Я также заметил, что меню редактора над полем исчезло. Используя Google Chrome / Inspect Element, я увидел красное сообщение об ошибке, в котором говорилось, что «Uncaught TypeError» tinymce пытался загрузить, но не смог. Я посмотрел справа от инспектора элементов и увидел, что пойманный div имеет стиль «hide-if-js». Стал искать и наткнулся на этот пост.

Я обнаружил, что WordPress 3.9 больше не поддерживает TinyMCE, а вместо этого использует WP-edit. Я никогда не устанавливал TinyMCE, но понял, что поверх него может быть построен другой плагин. Я один за другим деактивировал установленные мной плагины, проверяя после каждого, решило ли это проблему. После деактивации третьего плагина снова появилось меню редактора, и я смог ввести текст в поле содержимого! (Я вернулся и повторно активировал первые два плагина, так как знал, что это не проблемы.)

Надеюсь, это поможет. Кстати, плагин, который вызывал проблему, был Foter, но я уверен, что есть несколько других плагинов, вызывающих ту же проблему.

person R2D2    schedule 27.04.2014