desember 29, 2021

Hvordan Arkivere WordPress Innlegg Og Sider

Hva gjør du med publisert WordPress innhold som du vil fjerne fra offentlig visning, men ikke vil søppel?

du arkiverer den. Enkel. Vel, nei. Funksjonalitet som uten tvil bør enten være innebygd eller definitivt bør være enkel å implementere er faktisk unødvendig vanskelig. Det hjelper heller ikke At WordPress muddies vannet ved å bruke arkivtermen for eldre innlegg.

I denne artikkelen vil jeg vise deg hvordan du kan arkivere innhold ved Hjelp Av Edit Flow plugin for å gjøre tunge løft.

Foto av et arkiv
Arkivering er en viktig, men mangler del Av WordPress

Merk: tilnærmingen beskrevet i denne artikkelen gjelder for innlegg, sider og tilpassede innleggstyper. Jeg har brukt begrepet «post» bare for enkelhets skyld.

for å gi arkivering, må vi legge til et nytt trinn til slutten av publiseringsprosessen, et alternativ etter «publisert», ved å legge til en ny poststatus for «arkivert». Arkivering av innlegg er da et enkelt spørsmål om å endre poststatusen til den nye statusen og sikre at det arkiverte innlegget ikke vises hvor som helst på nettstedet, inkludert i søkeresultater og menyer.

WordPress har åtte innebygde poststatuser, og det er veldig enkelt å legge til listen. Enkle oppgaver som å legge til den nye statusen i rullegardinmenyen poststatus i Publiser meta-boksen på skjermbildet for postredigering er imidlertid frustrerende vanskelig. Uten nyttig filter eller handling tilgjengelig I WordPress selv, bruker Den vanligste løsningen JQUERY-assistert HTML akrobatikk for å tvinge nye statuser inn i brukergrensesnittet i nettleseren. Ikke akkurat beste praksis for utvikling.

Heldigvis Kan Edit Flow plugin hjelpe oss med å utvide publiseringsarbeidsflyten mens du unngår html-wrangling på klientsiden.

Installer Edit Flow Plugin

Edit Flow har mange flotte funksjoner for å administrere innlegg i et team miljø. Vi vil ikke gå inn i dem her, men jeg vil anbefale å lese Paul Kaisers gjennomgang Av Edit Flow her på WPMU.org.

Slå Av Ubrukte Moduler

For nå trenger vi bare Å ha Edit Flow ‘ S Custom Statuses module aktivert, så når den er installert, klikker Du På Edit Flow i hovedmenyen og deaktiverer alle moduler unntatt Egendefinerte Statuser.

screen grab Av Edit Flow modules management skjermen
for arkivering trenger Du Bare Egendefinerte Statuser, men sjekk ut de andre modulene også

Konfigurer statusene

Screen grab viser oppdatert Status
oppdatert status dropdown

klikk på egendefinerte statuser og,

  1. Gjør Utkaststatusen til standardstatus ved å holde musen over «Utkast» og klikke på menyalternativet «Gjør Standard».
  2. Slett alle statusene unntatt Utkast (igjen, rull musen over statusen og klikk På Slett menyalternativet).
  3. Bruk skjemaet» Legg Til Ny «for å legge til en ny egendefinert status For «Arkivert». Klikk på» Alternativer » – fanen og velg innleggstypene du vil kunne arkivere-tilpassede innleggstyper er også tilgjengelige.

Nå, I Publiser meta-boksen på post edit-skjermen, Vil Status-rullegardinmenyen vise De Egendefinerte Statusene, inkludert den Nye Arkiverte statusen.

for å arkivere et innlegg, velg «Arkivert» og klikk På «Oppdater». Dette vil fjerne innlegget fra front-end, inkludert søk. Du vil også se at en» Arkivert » lenke, komplett med postantall, legges til statuslinkene øverst på postlistesiden, noe som gir deg rask og enkel tilgang til de arkiverte innleggene

Skjermgrep som viser Arkivert I poststatuslinkene på postlisteskjermen
den nye Arkiverte lenken som er lagt til postlisteskjermen

men hva med Menyer?

WordPress ignorerer statusen når det gjelder å bygge menyer. Hvis du har satt en side i menyen, vil den bli vist selv om statusen er arkivert eller faktisk utkast.

for å spare deg for å måtte sjekke menyene dine hver gang du arkiverer en side, bruk denne koden enten i funksjonene dine.php-fil eller i en enkel plugin:

function remove_archived_from_menu($post) {_wp_delete_post_menu_item($post->ID);}add_action( 'publish_to_archived', 'remove_archived_from_menu');

dette kroker inn statusendringen handling som er avfyrt hver gang et innlegg endrer status. I dette tilfellet er vi interessert i endringen fra «publiser» til » arkiv «(utkast til elementer er usannsynlig å være i en meny). Når den endringen skjer, vil vi slette et menyelement med postens ID.

Arkivering av innhold Er en ganske grunnleggende funksjon av et innholdsstyringssystem, og Det er litt overraskende At WordPress ikke allerede har dette anlegget innebygd. Rulle din egen løsning er tungvint og den enkleste løsningen er en hack som ikke ville sitte godt med de fleste utviklere.

Bruke Edit Flow for å gi arkivering er en rett frem, hack – fri løsning som ikke bare gir enkel arkivering funksjonalitet, men også en introduksjon til en kraftig content management plugin.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.