Schimbarea paginii de editare pentru un tip de postare personalizat?
Am căutat toată ziua acest lucru și nu-l pot găsi.
Lucrez la o pagină personalizată de contacte și folosesc funcția de tip de postare personalizat pentru a avea mai mult control asupra acesteia. Încerc să schimb pagina de editare cu un șablon personalizat (de exemplu când accesez /wp-admin/post.php?post=1234&action=edit
), vreau să afișeze o pagină personalizată. Nu am nevoie de meta boxuri sau altceva. Eventual editorul, dar aproape de partea de jos a paginii (nu în poziția implicită sus).
Am găsit cum să elimin meta boxurile, dar nu am găsit cum să obțin o pagină curată pentru editarea CPT.
function remove_metaboxes(){
remove_meta_box('postexcerpt', 'obpcontacts', 'normal'); // Caseta pentru fragment
remove_meta_box('commentstatusdiv', 'obpcontacts', 'normal'); // Caseta pentru starea comentariilor
remove_meta_box('commentsdiv', 'obpcontacts', 'normal'); // Caseta pentru comentarii
}
add_action( 'add_meta_boxes', 'remove_metaboxes',11 );
Aveți idei despre cum să creez un șablon personalizat în secțiunea de editare wp-admin pentru tipul meu de postare personalizat?
Din câte știu, poți elimina aproape totul, cu excepția tagului de titlu h2
și a marginii .postbox-container
. De asemenea, reține că #message
nu este vizibil în mod implicit, dar poate apărea în funcție de acțiunile tale.
Când îți înregistrezi CPT, setează supports
la un array gol.
'supports' => array ('')
Apoi poți folosi următoarele pentru a elimina caseta de publicare și slug-ul (slug-ul nu este vizibil în mod implicit, dar este acolo sub opțiunile ecranului):
function remove_metaboxes(){
remove_meta_box('slugdiv', 'obpcontacts', 'normal'); // Slug
remove_meta_box('submitdiv', 'obpcontacts', 'side'); // Caseta de publicare
}
add_action( 'add_meta_boxes', 'remove_metaboxes', 11 );
Vei rămâne cu câteva elemente care ar putea necesita eliminarea prin javascript:
//jQuery încărcat doar pe CPT-ul tău
.removeClass("wrap"); //elimină toate CSS-urile

Dacă nu ai nevoie de funcționalitatea respectivă (spre deosebire de a o ascunde), o poți elimina complet din lista de argumente furnizate funcției register_post_type()
.
Aceasta va afișa doar câmpurile pentru titlu și editor.
$args = array(
'supports' => array( 'title', 'editor' )
);
Opțiuni posibile pentru 'supports':
- 'title'
- 'editor' (conținut)
- 'author'
- 'thumbnail' (imagine reprezentativă, tema curentă trebuie să suporte și post-thumbnails)
- 'excerpt'
- 'trackbacks'
- 'custom-fields'
- 'comments' (va afișa și balonul cu numărul de comentarii pe ecranul de editare)
- 'revisions' (va stoca reviziile)
- 'page-attributes' (ordinea în meniu, iar hierarchical trebuie să fie true pentru a afișa opțiunea Părinte)
- 'post-formats' adaugă formate de post, vezi Post Formats
