本文欄とは?
コレのこと
理想通りのやり方
以下のCSSを admin.css なり、管理画面でのみ実行されるCSSに定義します。
すべての投稿タイプで非表示にしたい場合は、「 .post-type-posts
」の部分を消してください。
特定の投稿タイプで非表示にしたい場合は、「 .post-type-posts
」の部分を適宜調整してください(例えば、投稿タイプ「アルバム(albums)」ならば、「 .post-type-albums
」のような具合で)
【注意】
この方法は、Wordpress 6.7.2のCSSプロパティを前提として調整しています。
将来的にメジャーアップデートなどでレイアウト構造が変われば、また表示される可能性があります。ご留意ください。
admin.css
body.post-type-posts.block-editor-page .editor-styles-wrapper {
min-height: 0px;
}
body.post-type-posts.block-editor-page .editor-styles-wrapper::after {
height: 0px;
}
body.post-type-posts.block-editor-page .editor-styles-wrapper>.article-content {
display: none;
}
正しいやり方
メジャーアップデートされたとしても、メンテナンスフリーで使えるやり方は以下の通りです。
functions.php
に以下のコードを追記します。
注意
このやり方の場合、Gutenbergエディタではなく、Classic エディタの見た目になります。
そのため、Gutenbergエディタを使っているサイトの場合、
特定の投稿タイプだけ管理画面の見た目が異なるのでアレ? って言われる可能性があります。
とはいえ、クライアント様のこだわりが強くないならば、保守の観点からこっちの方法のほうが良いと思います。
functions.php
/**
* 特定の投稿タイプのみ、本文欄を非表示にする
* Gutenbergエディタの外観のまま非表示にする方法は(CSS以外に)なさそうなので、
* 一旦、Classicエディタに戻し、Classicエディタを非表示にするというアプローチを取ることにした
* @param mixed $use_block_editor
* @param mixed $post
* @link https://bambooworks.co/wordpress-page-hide-editor/
*/
function disable_gutenberg_editor_for_posts($use_block_editor, $post)
{
$post_type = "posts"; // 非表示にしたい投稿タイプを指定
if ($post && $post->post_type === $post_type) {
remove_post_type_support($post_type, 'editor'); // Step2. Classicエディタ自体を非表示にする
return false; // Step1. Gutenbergエディタを非表示にし、Classicエディタを表示する
}
return $use_block_editor;
}
add_filter('use_block_editor_for_post', 'disable_gutenberg_editor_for_posts', 10, 2);