web-dev-qa-db-fra.com

Est-il possible de supprimer WYSIWYG pour un certain type de publication personnalisée?

Je ne veux pas utiliser le WYSIWYG en haut de mon type de message personnalisé. Je veux utiliser un champ personnalisé textarea que je peux placer au bas de ma liste de champs personnalisés à la place.

Est-ce possible?

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');
}

placez-le sur votre themes functions.php

18
Butuzov

Vous pouvez réellement désactiver l'éditeur WYSIWYG, en ne laissant que l'éditeur source HTML. Choisissez une fonction ci-dessous:

// 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

Vous pouvez également gérer le support post-éditeur directement dans votre appel register_post_type() , via le paramètre 'supports' dans le tableau $args.

La valeur par défaut est: 'supports' => array( 'title', 'editor' ).

Vous pouvez le changer pour tout ce dont vous avez besoin. par exemple: 'supports' => array( 'title' ).

8
Chip Bennett

Re: ce commentaire:

J'utilise des types personnalisés d'interface utilisateur combinés avec AdvancedCustomFields.

Le plug-in d'interface utilisateur de types de messages personnalisés expose tous les paramètres du tableau register_post_type()$args dans son interface utilisateur.

Dans ce cas, vous devez simplement trouver la section Supports et désactiver/décocher Editeur:

Custom Post Types UI Plugin - Register Post Type options

6
Chip Bennett