Parfois, vous n'avez pas besoin d'un éditeur de contenu pour les modèles de page spécifiques. C'est utile pour les pages de remerciement et autres pages qui ont un texte fixe et qui n'ont peut-être pas besoin de contenu.
Instructions : Ajoutez le code suivant au fichier functions.php de votre thème WordPress.
Vous devez changer le nom du fichier modèle dans le code. Actuellement, c'est submit.php mais vous pouvez le remplacer par n'importe quel nom de fichier.
add_action( 'admin_init', 'hide_editor' );
function hide_editor() {
$post_id = $_GET['post'] ? $_GET['post'] : $_POST['post_ID'] ;
if( !isset( $post_id ) ) return;
$template_file = get_post_meta($post_id, '_wp_page_template', true);
if($template_file == 'submit.php'){ // edit the template name
remove_post_type_support('page', 'editor');
}
}
Vous pourriez également aimer ajouter du CSS personnalisé pour l'éditeur WordPress.
ça ne marche pas pour moi 🙁
Si le modèle se trouve dans un dossier, vous devrez peut-être utiliser ce modèle : if($template_file == ‘templates/template-example.php’){ // modifiez le nom du modèle et le nom du dossier pour qu'ils correspondent au chemin correct
Assurez-vous également de rafraîchir la page dans le navigateur.
Je viens de tester avec WordPress 6.8.1, ça marche
Vous référencez probablement le mauvais fichier ou le mauvais chemin ici
$template_file === ‘page-template/page-template.php’
Vérifiez en utilisant l'ID au lieu du modèle de page
if ( intval($post_id) === 24346 ) { remove_post_type_support(‘page’, ‘editor’); }
Je viens de tester et ça marche sur WordPress 6.8.1 – assurez-vous de référencer le bon chemin et le bon fichier. ($template_file === ‘template-page/template.php’)
Vous pouvez également tester par ID de page pour voir si l'extrait fonctionne.
if ( intval($post_id) === 24346 ) { remove_post_type_support(‘page’, ‘editor’); }
Pourquoi ne pas utiliser :
get_the_ID();
au lieu de :
$post_id = $_GET[‘post’] ? $_GET[‘post’] : $_POST[‘post_ID’] ;
get_the_ID(); doit être à l'intérieur de la boucle WordPress, alors que cet extrait doit fonctionner dans l'administration.
Ça a marché pour moi ! Super boulot.
Je l'ai ajouté à ma collection d'extraits.
Merci. Ça a marché pour moi.
Tks
Tu m'as sauvé la vie, mon ami. Merci mille fois !
Juste pour info, ma page d'administration ne se chargeait initialement pas après une erreur serveur après avoir mis le code ci-dessus. J'ai changé ceci :
$post_id = $_GET[‘post’] ? $_GET[‘post’] : $_POST[‘post_ID’] ; if( !isset( $post_id ) ) return;
par ceci :
if ( isset ( $_GET[‘post’] ) )
$post_id = $_GET[‘post’];
else if ( isset ( $_POST[‘post_ID’] ) )
$post_id = $_POST[‘post_ID’];
if( !isset ( $post_id ) || empty ( $post_id ) )
return;
…et cela a résolu le problème.
Merci encore !
-Chris
gracias, muy util
cela ne fonctionne pas pour moi, j'obtiens les erreurs undefined index post et post_ID dans le backend
Merci pour ça. Je vais devoir essayer !
Cool, content que ça vous plaise.