december 29, 2021

Sådan arkiveres indlæg og sider

hvad gør du med offentliggjort indhold, som du vil fjerne fra offentlig visning, men ikke vil papirkurv?

du arkiverer det. Simpel. Nå, nej. Funktionalitet, der uden tvivl enten skal være indbygget eller bestemt skal være let at implementere, er faktisk unødvendigt vanskelig. Det hjælper heller ikke, at ordtryk forvirrer vandet ved at bruge arkivbetegnelsen for ældre indlæg.

i denne artikel viser jeg dig, hvordan du kan arkivere indhold ved hjælp af plugin til redigering af strøm til at gøre det tunge løft.

foto af et arkiv
arkivering er en vigtig, men manglende del af ordtryk

Bemærk: fremgangsmåden beskrevet i denne artikel gælder for indlæg, sider og brugerdefinerede indlægstyper. Jeg har brugt udtrykket” post ” blot for nemheds skyld.

for at levere arkivering skal vi tilføje endnu et trin til slutningen af udgivelsesprocessen, en mulighed efter “offentliggjort”, ved at tilføje en ny poststatus for “arkiveret”. Arkivering af indlæg er derefter et simpelt spørgsmål om at ændre poststatus til den nye status og sikre, at det arkiverede indlæg ikke vises nogen steder på siden, inklusive i søgeresultater og menuer.

har otte indbyggede poststatus, og det er meget nemt at tilføje til listen. Imidlertid er enkle opgaver, såsom at tilføje den nye status til rullemenuen poststatus i feltet Udgiv meta på skærmbilledet til redigering af indlæg, frustrerende vanskelige. Den mest almindelige løsning bruger HTML-akrobatik til at tvinge nye statuser ind i brugergrænsefladen. Ikke ligefrem udvikling bedste praksis.

heldigvis kan plugin til Redigeringsstrøm hjælpe os med at udvide udgivelsesarbejdsprocessen, samtidig med at vi undgår HTML-krangel på klientsiden.

Installer Plugin til redigering af strøm

Rediger strøm har masser af fantastiske funktioner til styring af indlæg i et teammiljø. Vi vil ikke gå ind i dem her, men jeg vil anbefale at læse Paul Kaiser ‘ s anmeldelse af Redigeringsstrømmen her.org.

sluk ubrugte moduler

For nu skal vi bare have Redigeringsstrøms brugerdefinerede Statusmodul aktiveret, så når det er installeret, skal du klikke på Rediger strøm i hovedmenuen og deaktivere alle moduler undtagen brugerdefinerede status.

Skærmgreb af skærmbilledet til styring af Redigeringsstrømsmoduler
til arkivering behøver du kun brugerdefinerede status, men tjek også de andre moduler

Konfigurer status

Skærmgreb, der viser den opdaterede Status
rullemenuen opdateret Status

klik på brugerdefinerede statusser og,

  1. gør Kladdestatus til standardstatus ved at holde musen over “kladde” og klikke på menupunktet “lav standard”.
  2. Slet alle statuser undtagen kladde (igen, rul musen over status og klik på menupunktet Slet).
  3. brug formularen “Tilføj ny” til at tilføje en ny brugerdefineret status for “arkiveret”. Klik på fanen” Indstillinger”, og vælg de posttyper, du vil kunne arkivere – brugerdefinerede posttyper er også tilgængelige.

nu, i feltet Udgiv meta på redigeringsskærmen for indlæg, viser rullemenuen Status de brugerdefinerede statuser, inklusive den nye arkiverede status.

for at arkivere et indlæg skal du blot vælge “arkiveret” og klikke på “Opdater”. Dette fjerner indlægget fra front-end, inklusive søgninger. Du vil også se, at et” arkiveret ” link, komplet med posttælling, føjes til statuslinkene øverst på postlistesiden, hvilket giver dig hurtig og nem adgang til de arkiverede indlæg

 Skærmgreb, der viser arkiveret i poststatuslinkene på postlisteskærmen
det nye arkiverede link tilføjet til postlisteskærmen

men hvad med menuer?

ignorerer status, når det kommer til at bygge menuer. Hvis du har lagt en side i menuen, vises den, selvom dens status er arkiveret eller faktisk udkast.

for at spare dig for at skulle tjekke dine menuer, hver gang du arkiverer en side, skal du bruge denne kode enten i dine funktioner.php-fil eller i et simpelt plugin:

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

dette hænger ind i statusændringshandlingen, der affyres, hver gang et indlæg ændrer status. I dette tilfælde er vi interesserede i ændringen fra “Publicer” til “arkiv” (udkast til elementer er usandsynligt at være i en menu). Når denne ændring sker, vil vi slette ethvert menupunkt med postens ID.

arkivering af indhold er en ret grundlæggende funktion af et indholdsstyringssystem, og det er lidt overraskende, at denne facilitet ikke allerede har indbygget. At rulle din egen løsning er besværlig, og den enkleste løsning er et hack, der ikke ville sidde godt sammen med de fleste udviklere.

brug af Redigeringsstrøm til arkivering er en ligetil, hackfri løsning, der ikke kun giver enkel arkiveringsfunktionalitet, men også en introduktion til et kraftfuldt plugin til indholdsstyring.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.