WordPress:カスタム投稿タイプの投稿画面から、本文(エディタ)をCSSで非表示にしたい



私の大好きなプラグイン、Magic Fields 2 のバグなのか何のか、Multiline Textboxというタイプのカスタムフィールドを使用し、かつ、本文を非表示にした場合、Multiline Textboxのビジュアルエディタのボタンが消えてしまうという事態が起こった。これは、結構あることらしく、フォーラムにも挙がってたんだけど、具体的な方法はなく。。。

フォーラム :Visual editor not displaying for multiline fields

プラグイン(Magic Fields 2)側で本文非表示にすると、その下のビジュアルエディタのボタンも消えてしまうから、このフォーラムの緊急処置にもあるように、本文部分をCSSで非表示にすることにした。(フックで本文を非表示にしても、ビジュアルエディタのボタンは消えてしまった。)

これが意外とわからなくて、、、
というのも、
『カスタム投稿タイプ「book」のときだけ、本文を非表示にする。』
ただこれだけなんだけど、管理画面ということで、条件分岐が使えない?!

どうしたものかと調べると、global $typenow にpost_typeが入っていることが分かった。
global 、ポイントね! これないと、動かない。

最後に、対象画面のソースから、本文部分のidを調べて、そこだけ、{display: none;}となるようにする、と。

出来上がったコードがこちら。

add_action('admin_print_styles', 'admin_book_css_custom');
function admin_book_css_custom() {
global $typenow;
if($typenow == 'book'):
echo '<style>#postdivrich {display: none;}</style>';
endif;
}

以下、お世話になったサイト

あんまり、使うシーンが思いつかない内容だけど、備忘のために。
昨年は、体調不良から、ほとんど仕事もできず、ブログも書けなかったけど、今年は少しずつ復活できたらなーと思っています^^

WordPress:カスタム投稿タイプの投稿画面から、本文(エディタ)をCSSで非表示にしたい」への3件のフィードバック

  1. 邑里

    はじめまして。
    カスタム投稿タイプによって「メディアを追加」ボタンを隠す方法を探しており、こちらに辿り着きました。
    CSSで隠す方法までは見つけられたのですがpost_typeを当てる方法で困っていたので…とても助かりました。
    貴重な情報をありがとうございます。

    返信
    1. takenao 投稿作成者

      需要が少ない情報だろうな・・・と思いつつ書いたので、お役にたててよかったです!
      コメント、ありがとうございました^^

      返信

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です