web-dev-qa-db-ja.com

特定のカスタム投稿タイプのWYSIWYGを削除することは可能ですか?

私は私のカスタム投稿タイプの一番上にあるWYSIWYGを使いたくありません。私はカスタムフィールドの私のリストの一番下に置くことができるカスタムフィールドtextareaを使いたいです。

これは可能ですか?

17
scottgemmell
add_action('init', 'init_remove_support',100);
function init_remove_support(){
    $post_type = 'your post type';
    remove_post_type_support( $post_type, 'editor');
}

テーマに配置してください。functions.php

18
Butuzov

実際にはWYSIWYGエディタを無効にして、HTMLソースエディタのみを残すことができます。以下の機能を選択してください。

// disable wyswyg for custom post type, using the global $post
add_filter('user_can_richedit', function( $default ){
  global $post;
  if( $post->post_type === 'product')  return false;
  return $default;
});

// disable wyswyg for custom post type, using get_post_type() function
add_filter('user_can_richedit', function( $default ){
  if( get_post_type() === 'product')  return false;
  return $default;
});
11
biziclop

あるいは、'supports'配列の$argsパラメータを介して、 register_post_type() 呼び出しで直接ポストエディタサポートを処理できます。

デフォルト値は'supports' => array( 'title', 'editor' )です。

必要なものに変更することができます。例えば、'supports' => array( 'title' )です。

8
Chip Bennett

再:このコメント:

AdvancedCustomFieldsと組み合わせてカスタムタイプUIを使用しています。

カスタム投稿タイプUIプラグイン は、そのUIのregister_post_type()$args配列パラメータをすべて公開します。

この場合は、 Supports セクションを見つけて/ uncheck Editor を無効にするだけです。

Custom Post Types UI Plugin - Register Post Type options

6
Chip Bennett