Wordpressバックエンドからカスタムフィールドセクションを削除しようとしています。カスタムフィールドを表示する関数を見つけたと思います。この関数は、wp-admin/edit-page-form.phpの181行目にあります。
do_meta_boxes('page','normal',$post)
関数を削除すると、Wordpressは他のボックスも表示しません。
Wordpressバックエンドから特定のボックスを削除するにはどうすればよいですか?
Wordpressバックエンドからカスタムフィールドセクションを削除しようとしています。カスタムフィールドを表示する関数を見つけたと思います。この関数は、wp-admin/edit-page-form.phpの181行目にあります。
do_meta_boxes('page','normal',$post)
関数を削除すると、Wordpressは他のボックスも表示しません。
Wordpressバックエンドから特定のボックスを削除するにはどうすればよいですか?
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' );
投稿に対してこれを行うには、「ページ」を「投稿」に変更します
これをfunction.phpファイルに入れます
コアファイルを変更しているのですが、アップグレードやエンドユーザーに関してはお勧めできません。[画面オプション]に移動して[カスタムフィールド]のチェックを外すか、プラグインhttp://wordpress.org/extend/plugins/custom-write-panel/を使用してエディターパネルを非表示にします。または、プラグインを使用せずに各エディターオプションを無効にするために必要なコードをプラグインで確認します。
これは、すべての投稿タイプに対してこれを行う方法です。
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 );
}
これを行うには、管理者内の個々のボックスの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
?>