La réponse à cette question fonctionne très bien, mais je veux exclure l'éditeur également lorsque d'autres modèles sont utilisés. Pouvez-vous s'il vous plaît me dire comment étendre le code pour que cela fonctionne avec plus d'un modèle?
Oui, essayez ceci:
function remove_editor() {
if (isset($_GET['post'])) {
$id = $_GET['post'];
$template = get_post_meta($id, '_wp_page_template', true);
switch ($template) {
case 'template_01.php':
case 'template_02.php':
case 'template_03.php':
case 'template_04.php':
// the below removes 'editor' support for 'pages'
// if you want to remove for posts or custom post types as well
// add this line for posts:
// remove_post_type_support('post', 'editor');
// add this line for custom post types and replace
// custom-post-type-name with the name of post type:
// remove_post_type_support('custom-post-type-name', 'editor');
remove_post_type_support('page', 'editor');
break;
default :
// Don't remove any other template.
break;
}
}
}
add_action('init', 'remove_editor');
Changez le 'template_01.php' ... 'template_04.php'
avec les noms de vos modèles et si vous le souhaitez, vous pouvez ajouter d'autres noms de modèles en ajoutant plus de cas.
par exemple.
case 'template_05.php':
Cependant, le code ci-dessus et celui de answer nécessitent que vous définissiez d'abord les modèles de page à partir de l'écran de modification de page.
J'espère que cela aide et clarifie comment cela fonctionne.