Cum să arhivați postările și paginile WordPress
ce faceți cu conținutul WordPress publicat pe care doriți să îl eliminați din vizualizarea publică, dar nu doriți să îl aruncați la gunoi?
îl arhivați. Simplu. Ei bine, nu. Funcționalitatea care, fără îndoială, ar trebui să fie încorporată sau cu siguranță ar trebui să fie ușor de implementat este de fapt inutil de dificilă. De asemenea, nu ajută ca WordPress să încurce apele folosind termenul de arhivă pentru postările mai vechi.
în acest articol, vă voi arăta cum puteți arhiva conținutul folosind pluginul Edit Flow pentru a face ridicarea grea.
notă: abordarea descrisă în acest articol se aplică postărilor, paginilor și tipurilor de postări personalizate. Am folosit termenul „post” pur și simplu pentru comoditate.
pentru a oferi arhivare, avem nevoie pentru a adăuga un alt pas la sfârșitul procesului de publicare, o opțiune după „publicat”, prin adăugarea unui nou statut post de „arhivate”. Arhivarea postărilor este apoi o chestiune simplă de a schimba starea postării în noua stare și de a vă asigura că postarea arhivată nu apare nicăieri pe site, inclusiv în rezultatele căutării și meniuri.
WordPress are opt stări postale încorporate și adăugarea la listă este foarte ușoară. Cu toate acestea, sarcini simple, cum ar fi adăugarea noului statut în meniul derulant post status din caseta publicare meta de pe ecranul de editare post, sunt frustrant de dificile. Fără niciun filtru sau acțiune utilă disponibilă în WordPress în sine, cea mai comună soluție folosește acrobații HTML asistate de JQuery pentru a forța noi stări în interfața cu utilizatorul din browser. Nu este chiar cea mai bună practică de dezvoltare.
din fericire, plugin-ul Edit Flow ne poate ajuta să extindem fluxul de lucru de publicare evitând în același timp wrangling HTML client-side.
Instalați pluginul Edit Flow
Edit Flow are o mulțime de funcții excelente pentru gestionarea postărilor într-un mediu de echipă. Nu vom intra în ele aici, dar aș recomanda citirea recenziei lui Paul Kaiser despre Edit Flow aici pe WPMU.org.
opriți modulele neutilizate
deocamdată, trebuie doar să avem activat modulul de stări personalizate Edit Flow, așa că, odată instalat, faceți clic pe Edit Flow din meniul principal și dezactivați toate modulele, cu excepția stărilor personalizate.
configurați stările
faceți clic pe stările personalizate și,
- Faceți starea schiță starea implicită trecând mouse-ul peste „schiță” și făcând clic pe opțiunea de meniu „faceți implicit”.
- ștergeți toate stările, cu excepția schiței (din nou, rotiți mouse-ul peste stare și faceți clic pe opțiunea de meniu ștergere).
- utilizați formularul „Adăugați nou” pentru a adăuga o nouă stare personalizată a „arhivat”. Faceți clic pe fila” Opțiuni ” și selectați tipurile de postări pe care doriți să le arhivați – sunt disponibile și tipuri de postări personalizate.
acum, în caseta publicare meta de pe ecranul Editare postare, meniul derulant stare va afișa stările personalizate, inclusiv noua stare arhivată.
pentru a arhiva o postare, pur și simplu selectați „arhivat” și faceți clic pe „Actualizare”. Aceasta va elimina postarea din front-end, inclusiv căutările. Veți vedea, de asemenea, că un link „arhivat”, completat cu numărul de postări, este adăugat la linkurile de stare din partea de sus a paginii listei de postări, oferindu-vă acces rapid și ușor la postările arhivate
dar ce zici de meniuri?
WordPress ignoră starea atunci când vine vorba de construirea meniurilor. Dacă ați pus o pagină în meniu, atunci aceasta va fi afișată chiar dacă starea sa este arhivată sau, într-adevăr, schiță.
pentru a vă salva dacă trebuie să verificați meniurile de fiecare dată când arhivați o pagină, utilizați acest cod fie în funcțiile dvs.fișier php sau într-un plugin simplu:
function remove_archived_from_menu($post) {_wp_delete_post_menu_item($post->ID);}add_action( 'publish_to_archived', 'remove_archived_from_menu');
acest cârlige în acțiunea de schimbare de stare, care este concediat de fiecare dată când un post schimbă starea. În acest caz, suntem interesați de schimbarea de la „publicare” la „arhivă” (este puțin probabil ca elementele de schiță să fie într-un meniu). Când apare această modificare, dorim să ștergem orice element de meniu cu ID-ul postării.
arhivarea conținutului este o funcție destul de de bază a unui sistem de gestionare a conținutului și este puțin surprinzător faptul că WordPress nu are deja această facilitate încorporată. Rularea propriei soluții este greoaie și cea mai simplă soluție este un hack care nu ar sta bine cu majoritatea dezvoltatorilor.
utilizarea Edit Flow pentru a oferi arhivare este o soluție simplă, fără hack, care nu numai că oferă funcționalități simple de arhivare, ci și o introducere într-un plugin puternic de gestionare a conținutului.