Cum să actualizezi statusul unei pagini din publicat în schiță și din schiță în publicat
Încerc să înțeleg cum să scriu codul care îmi va permite să fac următoarele lucruri cu paginile unui blog WordPress.
Am nevoie să pot specifica ID-urile paginilor pe care vreau să le listez (aproximativ 15 în total) și apoi să ofer utilizatorului posibilitatea de a selecta care dintre ele vor fi publicate sau care vor fi schițe. Acest lucru le va elimina din meniu și va elimina, de asemenea, pagina de pe site.
Am găsit această afirmație
Pentru a schimba statusul unei postări, obții postarea, schimbi câmpul de status, apoi apelezi
wp_update_post
cu noul obiect post
Cel mai apropiat plugin existent este http://wordpress.org/extend/plugins/wp-hide-pages/ cu excepția faptului că acest plugin folosește wp-list-pages
. Și, doar le ascunde și nu le mută efectiv din Publicat în Schiță.

Da, o soluție mai rapidă și mai simplă. În plus, atunci se va concentra doar pe scrierea actualizării statusului și nu va trebui să se preocupe de re-actualizarea sau ignorarea celorlalte date preluate din postarea curentă

Întrebarea mea este identică cu cea a OP. Folosesc codul din acest răspuns. Statusul postării mele nu se schimbă din draft în publicat, dar wp_update_post
returnează 1.

Iată o funcție care modifică statusul unui articol
/*
$post_id - ID-ul articolului pe care doriți să-l modificați.
$status - Statusul articolului: publish|pending|draft|private|static|object|attachment|inherit|future|trash.
*/
function change_post_status($post_id,$status){
$current_post = get_post( $post_id, 'ARRAY_A' );
$current_post['post_status'] = $status;
wp_update_post($current_post);
}
pur și simplu apelați funcția și transmiteți ID-ul articolului și noul status dorit, de exemplu:
change_post_status(12,'private');

Cum aș putea adăuga funcționalitatea de a face statusul o opțiune selectabilă..? Doresc să pot comuta între publicat și ciornă doar și apoi să actualizez articolul cu opțiunea selectată...

Știi că ai deja un meniu derulant pentru asta în ecranul de editare?

ha ha.. da.. dar încerc să construiesc o pagină personalizată de opțiuni pentru administrare care să evite acea pagină.. Aș dori să am o listă de pagini specifice disponibile și să ofer utilizatorului admin posibilitatea să comute între a le avea publicate.. sau ca ciornă (nepublicate) - știu că se poate face, dar mă chinui cu codul pentru a realiza asta.

actualizează întrebarea ta cu codul pe care îl ai și voi avea o imagine mai clară despre unde te pot ajuta.

Nu am mult mai mult cod decât ceea ce mi-ai dat tu.. De fapt nu știu să dezvolt cod, dar de obicei reușesc să modific ceva dacă este aproape de ceea ce vreau să fac... În esență, am nevoie de o pagină de opțiuni care să-mi permită să listeze un ID specific de pagină și să ofere administratorului posibilitatea de a alege publicare sau ciornă pentru fiecare pagină listată, apoi să apese salvare (sau actualizare) și să setăm fiecare pagină conform configurației utilizatorului. Mi-ar plăcea să învăț cum să fac asta, dar simt că poate cer prea mult pe un forum de suport gratuit.. ?

Tocmai am actualizat întrebarea mea pentru a-ți oferi o idee mai bună despre ce încerc să realizez
