web-dev-qa-db-fra.com

Changer la page d'édition pour un type d'article personnalisé?

Je cherchais ça toute la journée et je ne le trouve pas.

Je travaille sur une page de contacts personnalisée et j'utilise la fonctionnalité de type de publication personnalisée afin de pouvoir mieux la contrôler. Je cherche à changer la page d'édition pour qu'elle soit un modèle personnalisé (par exemple, lorsque je passe à /wp-admin/post.php?post=1234&action=edit), je souhaite afficher une page personnalisée. Je n'ai besoin d'aucune boîte à méta ou quoi que ce soit. Peut-être l'éditeur, mais près du bas de la page (pas en haut par défaut).

J'ai trouvé comment supprimer les méta-boîtes, mais je n'ai pas trouvé comment obtenir une page blanche sur la page d'édition du CPT.

function remove_metaboxes(){
    remove_meta_box('postexcerpt', 'obpcontacts', 'normal'); // Excerpt box
    remove_meta_box('commentstatusdiv', 'obpcontacts', 'normal'); // Comment status box
    remove_meta_box('commentsdiv', 'obpcontacts', 'normal'); // Comment box
}
add_action( 'add_meta_boxes', 'remove_metaboxes',11 );

Réflexions sur la manière de créer un modèle personnalisé dans la section d'édition wp-admin pour mon type d'article personnalisé?

4
Pat

Autant que je sache, vous pouvez supprimer presque tout, à l'exception de la balise de titre h2 et de la bordure .postbox-container. Notez également que le #message n'est pas visible par défaut mais peut apparaître en fonction de ce que vous faites.

Lorsque vous enregistrez votre CPT, définissez supports sur un tableau vide.

'supports' => array ('')

Ensuite, vous pouvez utiliser ce qui suit pour annuler la publication et le slug (le slug n’est pas visible par défaut, mais il figure dans les options de l’écran),

function remove_metaboxes(){
    remove_meta_box('slugdiv', 'obpcontacts', 'normal'); // Slug
    remove_meta_box('submitdiv', 'obpcontacts', 'side'); // Publish box
}
add_action( 'add_meta_boxes', 'remove_metaboxes', 11 );

Il ne vous restera plus que quelques éléments à supprimer avec javascript:

//jQuery enqueue only on your CPT
.removeClass("wrap");  //remove all CSS
5
Wyck

Si vous n'avez pas besoin de la fonctionnalité (par opposition à la masquer), vous pouvez la supprimer entièrement dans la liste des arguments fournis à register_post_type().

Cela affichera uniquement le titre et les champs de l'éditeur.

$args = array(
    'supports' => array( 'title', 'editor' )
); 

Supports possibles:

  • 'Titre'
  • 'éditeur' (contenu)
  • 'auteur'
  • 'vignette' (image sélectionnée, le thème actuel doit également prendre en charge les post-vignettes)
  • 'extrait'
  • 'trackbacks'
  • 'Les champs personnalisés'
  • 'commentaires' (verra aussi la bulle de décompte des commentaires sur l'écran d'édition)
  • 'révisions' (stockera les révisions)
  • 'attributs de page' (ordre du menu, hiérarchique doit être vrai pour afficher l'option Parent)
  • "post-formats" ajouter des formats de post, voir Post Formats
2
epilektric