Функция позволяет удалить метабокс из админки WordPress.
Так как вы не можете удалить метабокс до того, как он был добавлен, то пожалуйста убедитесь в том, где конкретно вы используете функцию remove_meta_box()
. Обычное её добавление в файл functions.php
может не принести должного результата.
Хороший вариант – это хук add_meta_boxes
. Он подействует на все метабоксы, добавляемые на страницы редактирования записей, страниц и произвольных типов постов. Однако при удалении виджетов из консоли, используйте хук wp_dashboard_setup
.
Сейчас, когда мы говорим о метабоксах, мы подразумеваем их на тех типах записей, в которых отключен редактор Gutenberg. В самом редакторе Gutenberg метабоксы существуют лишь в качестве обратной совметимости, то есть по сути не поддерживаются. В качестве альтернативы мы должны добавлять поля в сам редактор, например в виде сайдбаров, об этом у меня есть целый видеокурс.
remove_meta_box( $id, $screen, $context )
Параметры функции remove_meta_box()
- $id
- (строка) ID метабокса, его вы кстати можете узнать, проинспектировав метабокс в браузере.
Чтобы избавить вас от излишнего инспектирования, вот список стандартных метабоксов в WordPress:
authordiv
– «Автор»,categorydiv
– «Рубрики»,tagsdiv-post_tag
– «Метки»,commentstatusdiv
– «Обсуждение»,commentsdiv
– «Комментарии»,formatdiv
– «Формат»,pageparentdiv
– «Атрибуты страницы»postcustom
– «Произвольные поля» (смотрите видеоурок про них),postexcerpt
– «Отрывок»postimagediv
– «Изображение записи»revisionsdiv
– «Редакции»slugdiv
– «Ярлык»trackbacksdiv
– «Отправить обратные ссылки»
- $screen
- (строка|массив|WP_Screen) Экран или массив экранов, на которых отображается метабокс. Например
post
,page
илиarray( 'post', 'page' )
. - $context
- (строка) По сути это место, в которое был добавлен метабокс, принимает значения
normal
,advanced
,side
.
Примеры
1. Удаляем метабокс «Произвольные поля» со Страниц
add_action( 'add_meta_boxes' , 'true_remove_custom_fields', 25 ); function true_remove_custom_fields() { remove_meta_box( 'postcustom', 'page', 'normal' ); }
Не знаете, куда вставлять код?
2. Удаляем виджеты из консоли
Вот про какие виджеты я говорю:
add_action( 'wp_dashboard_setup', 'true_remove_dashboard_widgets', 25 ); function true_remove_dashboard_widgets(){ remove_meta_box( 'dashboard_right_now', 'dashboard', 'normal' ); // На виду remove_meta_box( 'dashboard_quick_press', 'dashboard', 'side' ); // Быстрый черновик remove_meta_box( 'dashboard_primary', 'dashboard', 'side' ); // Новости и мероприятия WordPress }
Источник: Блог Миши Рудрастых