Как удалить раздел пользовательских полей из Wordpress? - PullRequest
6 голосов
/ 06 мая 2010

Я пытаюсь удалить раздел пользовательских полей из бэкэнда Wordpress. Я думаю, что нашел функцию, которая отображает настраиваемые поля. Функция находится в строке 181. wp-admin / edit-page-form.php.

do_meta_boxes('page','normal',$post)

когда я удаляю функцию, Wordpress не отображает и другие поля.

Как мне удалить конкретную коробку из бэкэнда Wordpress?

Ответы [ 4 ]

21 голосов
/ 05 ноября 2010
function remove_metaboxes() {
 remove_meta_box( 'postcustom' , 'page' , 'normal' ); //removes custom fields for page
 remove_meta_box( 'commentstatusdiv' , 'page' , 'normal' ); //removes comments status for page
 remove_meta_box( 'commentsdiv' , 'page' , 'normal' ); //removes comments for page
 remove_meta_box( 'authordiv' , 'page' , 'normal' ); //removes author for page
}
add_action( 'admin_menu' , 'remove_metaboxes' );

измените "page" на "post", чтобы сделать это для сообщений

Поместите это в файл function.php

6 голосов
/ 14 июня 2015

Вот как это сделать для всех типов постов:

add_action( 'do_meta_boxes', 'remove_default_custom_fields_meta_box', 1, 3 );
function remove_default_custom_fields_meta_box( $post_type, $context, $post ) {
    remove_meta_box( 'postcustom', $post_type, $context );
}
6 голосов
/ 06 мая 2010

Вы меняете основные файлы, что не очень хорошая идея, когда дело доходит до обновлений и конечного пользователя. Перейдите в «Параметры экрана» и снимите флажок «Пользовательские поля» или используйте плагин http://wordpress.org/extend/plugins/custom-write-panel/, чтобы скрыть панели редактора. Или проверьте плагин на наличие кода, который необходимо отключить для каждого параметра редактора без использования плагина.

0 голосов
/ 13 мая 2010

Это проще всего сделать, отредактировав CSS для отдельного окна в админке. Первый способ, который приходит на ум - добавить следующее в файл functions.php вашей темы.

<?php
add_action('wp_head','hide_custom_fields_postbox');

function hide_custom_fields_postbox()
{
  if ( is_admin() ) {
  ?>
  <style type="text/css">
  div#postcustom {display:none;}
  </style>
  <?php
  }
}//end function
?>
...