Arkivering av php. Opprette et ZIP-arkiv i PHP

I går på forumet ble jeg spurt om lage ZIP-arkiver i PHP. Jeg tenkte litt og innså at dette emnet ville være interessant for et stort antall mennesker, fordi ZIP-arkivering i PHP et veldig populært tema. Og i denne artikkelen vil jeg vise et eksempel, hvordan lage et ZIP-arkiv ved hjelp av et PHP-skript.

La meg gi deg et eksempel med en gang lage et ZIP-arkiv, og så vil jeg nøye kommentere det:

$zip = new ZipArchive(); //Lag et objekt for arbeid med ZIP-arkiver
$zip->open("archive.zip", ZIPARCHIVE::CREATE); //Åpne (opprett) arkiv archive.zip
$zip->addFile("index.php"); //Legg til index.php-filen i arkivet
$zip->addFile("styles/style.css"); //Legg til filen styles/style.css til arkivet
$zip->lukk(); //Fullfør arbeidet med arkivet
?>

Som et resultat av å kjøre dette skriptet, vil du se ZIP-arkiv, som vil ha en fil i roten index.php, og en katalog vil også bli opprettet stiler, som vil inneholde filen style.css. Jeg tror alt dette er åpenbart og logisk. Og nå skal jeg kommentere hva vi gjorde med deg:

  • Laget et objekt ZipArkiv ved å bruke konstruktøren.
  • Laget et arkiv ved hjelp av metoden åpen() gjenstand ZipArkiv. Vi har gitt videre navnet på arkivet ( archive.zip) og en konstant ZIPARCHIVE::CREATE, som melder at dersom arkivet ikke eksisterer, så må det opprettes.
  • Metode Legg til fil() legger til filer i arkivet. Først la vi til filen " index.php", som ligger i samme katalog som skriptet. Deretter la vi til filen style.css, som også indikerer den riktige banen til den i forhold til skriptet.
  • Metode Lukk() avslutter arbeidet med arkivet. Kjør det alltid for å frigjøre datamaskinressurser og også for å unngå en rekke problemer knyttet til driften av dette skriptet og andre skript som trenger tilgang til dette arkivet.

På denne enkle måten kan du opprette ZIP-arkiver automatisk ved hjelp av PHP. I den neste artikkelen vil vi diskutere med deg, hvordan trekke ut zip-arkiv via php.

Det er tydelig at det er lettere for malskapere å bruke standardfunksjoner og WordPress-malkoder for å vise standardvisninger av alle nettstedssider, men dette skaper et enhetlig utseende og en følelse av overgang til de samme sidene på nettstedet.

Jeg skal vise deg med en gang hva vi får som resultat.

Type WordPress-arkiver: arkiv over kategorier før endringer
Arkiv med seksjoner med fjernede miniatyrbilder og en lenke for flere detaljer.

Viktig! Siden denne oppgaven løses ved å endre malkoden, før arbeid gjør vi (database + nettstedfiler). I tillegg lager vi to kopier av arbeidsmalen, en for redigering, den andre for å gjenopprette feil redigering.

Endre utseendet til WordPress-arkiver

For å endre utseendet til WordPress-arkiver, må du finne, eller rettere sagt, bestemme hvilken fil i arbeidsmalen som viser arkiver. I de fleste maler blir alle arkiver skrevet ut i en enkelt fil, den kalles (archive.php).

Jeg gjentar, for å være sikre fra å miste nettstedet, bruker vi ikke editoren i nettstedets administrative panel, men redigerer heller de tidligere laget sikkerhetskopiene av malfilene.

I et tekstredigeringsprogram (som Notepad++), åpne archive.php-filen og begynn å redigere. I filen archive.php (på slutten av filen) ser vi etter en funksjon som viser arkivbloggen:

Navn er navnet på filen som brukes til å sende ut arkivbloggen.

Den første ideen for å fullføre oppgaven er enkel: vi må endre koden til filen som viser arkivene (content.php), nemlig fjerne flere funksjoner fra den, og dermed endre utseendet til alle nettstedets arkiver (kategorier, forfattere, datoer, etc.).

Men spørsmålet oppstår, hvis vi endrer koden til malfilen, vil den gå tilbake til sin forrige tilstand etter den første oppdateringen av malen, vi trenger ikke dette. Derfor vil vi ikke redigere filen content.php, men kopiere den og lage vår egen fil under et annet navn, for eksempel content-cat.php og redigere den.

Vi ser etter en funksjon i filen som viser miniatyrbilder. Miniatyrbildefunksjonen vil være øverst. Vi fjerner miniatyrbildeutgangen.

ellerog fjern linjen med "Les mer", "malnavn".

Vi lagrer den opprettede og redigerte content-cat.php-filen og laster den opp til nettstedskatalogen i arbeidsmalmappen. Denne filen vil vises i nettstedets administrative panel på Utseende→ Rediger-fanen.

La oss gå videre til det andre trinnet. I filen som sender ut arkiver (archive.php), endre filnavnets innhold til content-cat .

Vi lagrer og ser på resultatet. Hvis noe er galt, vil systemet vise en feil, en feilfil og en feillinje. For å rette feilen, returner de lagrede sikkerhetskopieringsmalfilene til deres plass og gjenta alt på nytt.

Råd. Hvis du vil lese mer om mal-tagger og standard WordPress-funksjoner, vær oppmerksom på denne siden: https://wp-kama.ru. Dette er ikke en annonse eller til og med en lenke, denne siden er tydeligere enn den offisielle WordPress-siden i mal- og funksjonstagger-delen.

I utviklingen av temaet

Etter min mening krever temaet kunngjøringer på WordPress-nettsteder fortsettelse. I de kommende innleggene vil jeg snakke om temaene: og.

WordPress Codex

Skjult tekst

funksjonen_post_thumbnail

Funksjon

the_post_thumbnail

Hensikt

The_post_thumbnail-funksjonen gir ut html-koden til post-thumbnail-bildet, en tom verdi hvis det ikke er noe bilde.

applikasjon

Denne maltaggen, funksjonen_post_thumbnail, må brukes internt

Bruk

the_post_thumbnail(string|array $size = "post-thumbnail", string|array $attr = "")

Kilde

Fil: wp-includes/post-thumbnail-template.php

Funksjon the_post_thumbnail($size = "post-thumbnail", $attr = "") ( echo get_the_post_thumbnail(null, $size, $attr); )

Alternativer

$størrelse (streng/array)

Størrelsen på miniatyrbildet som skal mottas. Det kan være en streng med betingede størrelser: thumbnail, medium, large, full eller en rekke av to elementer (bildebredde og høyde): array(60, 60).

Misligholde: 'post-thumbnail', det vil si størrelsen som er satt for gjeldende tema av funksjonen set_post_thumbnail_size()

$attr (streng/array)

En rekke attributter som må legges til den resulterende html img-taggen (alt er et alternativt navn).

Misligholde:

Eksempel

" title= "_("permalink"), the_title_attribute("echo=0")); ?>"> !}get("layout", "imgwidth"), $SMTheme->get("layout", "imgheight")), array("class" => $SMTheme->get("layout","imgpos") . " featured_image")); hvis (!er_single())( ?>

Her er de viktigste nyhetene vi har publisert i 2008 på siden.


Oppdatering (6. desember): Lagt til manglende zip-sikkerhetsfiks

Det har vært et stort antall andre tillegg og forbedringer siden forrige alfa, men her er en kort oversikt over de viktigste endringene:

  • (dokumentasjonen er oppdatert til gjeldende tilstand)
  • ext/msql har blitt fjernet, mens ext/ereg nå vil øke E_DEPRECATED-varsler
  • ext/mhash er erstattet av ext/hash, men full BC opprettholdes
  • PHP bruker nå cc som standard kompilator, i stedet for gcc
  • En rekke feilrettinger til ext/pdo, ext/soap, stream-laget blant andre

Flere endringer under panseret krever også grundige tester med eksisterende applikasjoner for å sikre at eventuelle bakoverkompatibilitetsbrudd minimeres.

Vi vil gjerne at utviklere, designere, ledere eller andre med interesse for programmeringsspråket PHP blir med oss ​​for det som lover å bli en fantastisk begivenhet til en svært rimelig pris:

  • Standardbilletter: £60,00
  • Early bird (til 8. november): £50,00
  • Konsesjonsbilletter: £35,00

* Bekreftelse med din bedrifts brevhode
**Med student-ID. Begrenset antall sitteplasser tilgjengelig

DETTE ER EN FORHÅNDSVISNING AV UTVIKLING - IKKE BRUK DEN I PRODUKSJON!

Hensikten med denne alfa-utgivelsen er å oppmuntre brukere til ikke bare å delta aktivt i å identifisere feil, men også å sikre at alle nye funksjoner eller nødvendige bakoverkompatibilitetsbrudd er notert i dokumentasjonen. Vennligst rapporter eventuelle funn til eller .

Det har vært en lang rekke andre tillegg og forbedringer, men her er en kort oversikt over de viktigste endringene:

  • (dokumentasjonen kan være utdatert)
  • Tillegg av , (phar er planlagt for litt mer arbeid en head of alpha2), og utvidelser
  • Valgfri syklisk søppeloppsamling
  • Valgfri støtte for MySQLnd-erstatningsdriveren for libmysql
  • Windows eldre enn Windows 2000 (Windows 98, NT4, etc.) støttes ikke lenger ()
  • Nye syntaksfunksjoner som , begrenset GOTO, ternær snarvei "?:"

Flere endringer under panseret krever også grundig testing med eksisterende applikasjoner for å sikre at eventuelle bakoverkompatibilitetsbrudd minimeres. Dette er spesielt viktig for brukere som trenger den udokumenterte Zend-motorens multibyte-støtte.

Vår beste innsender Felix De Vliegher har faktisk forpliktet sine siste innleveringer selv siden han, basert på den høye kvaliteten på innsendingene hans, har blitt tildelt forpliktelsesrettigheter til PHP-depotet. Vi har ikke hørt tilbake fra alle deltakerne, men vi oppfordrer alle til å blogge om opplevelsen deres og gi oss tilbakemelding på hvordan vi kan forbedre fremtidige arrangementer.

Nå bedre sent enn aldri, her er de 10 vinnerne av den lovede elePHPant-lotteriet sponset av Nexen. Legg merke til at Felix ba meg om ikke å inkludere ham i utlodningen, siden han allerede gjeter en del elePHPants hjemme.

  • Eric Stewart
  • Håvard Eide
  • Marc Veldman
  • Michelangelo van Dam
  • Rein Velt
  • Rob Young
  • Sami Greenbury
  • Sebastian Deutsch
  • Sebastian Schürmann
  • Stefan Koopmanschap

Vi vil gi Nexen e-postadressene til vinnerne, slik at de kan ordne med å få elePHPants sendt. Også for de som lurer, kan du fortsette å sende inn tester på . En liten takk til alle deltakere og TestFest-arrangører! Uten de utallige menneskene som hjalp til med å organisere lokale arrangementer, implementere infrastrukturen og innsendingsgranskere, ville testfesten åpenbart ikke fungert så bra som den har gjort. Vi vil garantert gjøre lignende arrangementer i fremtiden basert på den store suksessen til TestFest 2008.

Sikkerhetsforbedringer og rettelser i PHP 5.2.6:

  • Rettet mulig stabelbufferoverløp i FastCGI SAPI identifisert av Andrei Nigmatulin.
  • Fikset heltallsoverløp i printf() identifisert av Maksymilian Aciemowicz.
  • Rettet sikkerhetsproblem beskrevet i CVE-2008-0599 identifisert av Ryan Permeh.
  • Rettet en safe_mode bypass i cURL identifisert av Maksymilian Arciemowicz.
  • Adresser ufullstendige multibyte-tegn på riktig måte i escapeshellcmd() identifisert av Stefan Esser.
  • Oppgradert medfølgende PCRE til versjon 7.6

Hvis jeg spurte deg hvilken standard WordPress-sidetype du bruker minst ofte, ville svaret ditt mest sannsynlig vært arkivmalen. Eller, mer sannsynlig, du har aldri engang hørt om arkivmalen - den er så upopulær. Grunnen er enkel. Standardmåten for bruk av arkiver er langt fra brukervennlig.

La oss fikse dette i dag! La oss lage en WordPress-arkivside som vil være virkelig nyttig. Det beste er at du vil kunne bruke disse arkivene i et hvilket som helst moderne WordPress-tema som er installert på nettstedet ditt. La oss imidlertid først forstå hva vi mener med "arkivside"?

WordPress-arkivhistorie

I WordPress jobber du med massevis av forskjellige maler og strukturelle elementer som kommer ut av esken. Hvis vi ser på listen over kataloger i standard Twenty Fifteen-tema, ser vi følgende:

  • 404 feilside
  • Arkivside (vår gjest i dag)
  • Bildevedleggsside
  • Indeksside (hovedside)
  • Sidemal (for standardsider)
  • Søkeresultatsiden
  • Individuelle innlegg og vedleggssider

Til tross for deres forskjellige formål, er disse sidene alle veldig like i struktur, og de er ofte forskjellige på noen få områder eller noen få linjer med kode. Den eneste synlige forskjellen mellom indekssiden og arkivsiden er den ekstra overskriften øverst, som endres avhengig av siden som vises.

Tanken bak arkivstrukturen er å tilby bloggadministratoren en praktisk og enkel måte å vise arkiver basert på ulike kriterier. Tross alt er alle disse forskjellige arkivsidene bare versjoner av indekssiden; de viser innhold publisert i en bestemt tidsperiode, av en bestemt forfatter, med visse tagger og kategorier.

Dette høres bra ut fra en programmerers perspektiv, men det er ikke den mest praktiske tilnærmingen fra en brukers perspektiv. I dette tilfellet mangler ett viktig nivå – nivået som ligger mellom brukerens hensikt om å finne innhold og de enkelte elementene i arkivene.

Det er det jeg mener. Foreløpig er den eneste innebygde måten å vise arkiverte lenker på et WordPress-nettsted gjennom en widget. Så hvis du ville tillate brukere å grave dypere inn i arkiver, og du ville gjøre det på en måte som folk kunne forstå, måtte du dedikere en hel sidefelt til arkiver alene (bare for å avsløre forskjellige typer strukturering: arkiver av dato, arkiver etter kategori, arkivmerker, opphavsrettsarkiver, etc.).

Vi trenger en slags mellomledd, en slags side som vil ønske den besøkende velkommen, forklare ham at han er i arkivet, og peke på innholdet han er interessert i, eller foreslå populært innhold.

Det er av denne grunn at vi bestemte oss for å lage en egendefinert arkivside.

Hvordan lage en egendefinert arkivside i WordPress

Her er hva vi skal gjøre. Vår egendefinerte arkivside vil være basert på en egendefinert sidemal. Denne malen lar oss gjøre følgende:

  • Legg til en egendefinert melding (kan inneholde tekst, bilder, registreringsskjema osv. - standard WordPress-innhold).
  • Vis de siste 15 postene (konfigurerbar)
  • Vis lenker til forfatterarkiver
  • Vis lenker til arkiver etter måned
  • Ha flere widgetområder (for å vise ting som populært innhold, kategorier, tagger).

Til slutt vil siden være responsiv og kan brukes på alle nettsider.

Vi må imidlertid starte med et tema. Jeg brukte Zerif Lite-temaet. Jeg innrømmer at dette er et av våre egne temaer. Imidlertid er det et av de 10 mest populære temaene som ble publisert i fjor i WordPress-temakatalogen. Så jeg håper du vil bruke den.

Og ja, hvis du ikke liker emnet, er det ingen grunn til å krangle. Du kan bruke tilnærmingen presentert i denne artikkelen med et hvilket som helst annet emne.

La oss starte med hovedfilen

Den beste modellen for å lage en arkivside er page.php-filen til det nåværende temaet ditt, av noen grunner:

  • Strukturen er allerede optimalisert for å vise vilkårlig innhold i hovedinnholdsblokken
  • Dette er kanskje en av de enkleste sidemalene i temastrukturen din.

Derfor vil vi bruke page.php-filen til Zerif Lite-temaet. Jeg skal lage en kopi av den og kalle den tmpl_archives.php.

(Pass på at du ikke navngir siden side-archives.php. Alle filnavn som begynner med "side-" vil bli behandlet som nye sidemaler innenfor hoved-temafilhierarkiet for WordPress. Dette er grunnen til at vi brukte tmpl_-prefikset) .

La oss endre det til følgende:

Alt denne linjen gjør er å sende inn den tilsvarende innholdsfilen for arkivsiden vår.

Du kan fjerne andre elementer som ser overflødige ut fra arkivsiden din (som kommentarer, for eksempel), men sørg for at du fjerner alle elementer som er relatert til HTML-strukturen. Og generelt, ikke vær redd for å eksperimentere. Tross alt, hvis noe plutselig slutter å fungere, kan du alltid gå tilbake til den forrige koden og enkelt feilsøke den.

I tillegg, ikke glem standardkommentaren - en beskrivelse av malen - som skal være plassert helt i begynnelsen av filen din (i vårt tilfelle, i filen tmpl_archives.php):

Til slutt sitter vi igjen med følgende struktur (med noen elementer fjernet for enkelhets skyld):

I denne filen må vi fjerne alt unødvendig, og la bare strukturelle elementer, samt kall til grunnleggende WordPress-funksjoner:

>

Plassholderkommentaren midt i koden er der vi deretter setter inn våre egendefinerte elementer.

Legg til en tilpasset hilsen

WordPress selv har allerede tatt seg av dette. Vi trenger bare å sette inn følgende linje:

Legger til nye widgetområder

La oss sette opp nye widgetområder i WordPress ved å bruke standardprosessen. Vi vil gjøre dette med en ekstra funksjonsfil for å holde ting gjenbrukbare fra tema til tema. Vi vil opprette en ny fil, archives-page-functions.php, plassere den i hovedtemakatalogen, og også registrere to nye widgetområder:

If(!function_exists("archives_page_widgets_init")) : function archives_page_widgets_init() ( /* Første arkivsidewidget, vist til VENSTRE. */ register_sidebar(array("name" => __("Arkivsidewidget VENSTRE", "zerif -lite"), "description" => __("Denne widgeten vil vises på venstre side av arkivsiden din.", "zerif-lite"), "id" => "arkiver-venstre", "before_widget" => "

", "after_widget" => "
", "before_title" => "

", "after_title" => "

",)); /* Andre arkivsidewidget, vist til HØYRE. */ register_sidebar(array("name" => __("Arkivsidewidget HØYRE", "zerif-lite"), "description" => __ ("Denne widgeten vil vises på høyre side av arkivsiden din.", "zerif-lite"), "id" => "arkiver-høyre", "before_widget" => "
", "after_widget" => "
", "before_title" => "

", "after_title" => "

",)); ) endif; add_action("widgets_init", "archives_page_widgets_init");

If(!function_exists("archives_page_styles")): function archives_page_styles() ( if(is_page_template("tmpl_archives.php")) ( wp_enqueue_style("archives-page-style", get_template_directory_uri() . "/archives-page-page-page-style css"); // standard måte å legge til stilark i WP. ) ) endif; add_action("wp_enqueue_scripts", "archives_page_styles");

Dette er en betinget køoperasjon. Det vil bare fungere hvis den besøkende ser på den arkiverte siden.

Vi må huske å inkludere vår nye archives-page-functions.php-fil ved å legge til følgende linje helt på slutten av gjeldende temas functions.php-fil:

Krev get_template_directory() . "/archives-page-functions.php";

Til slutt, den nye blokken som vi skal bruke i hovedfilen content-tmpl_archives.php er ganske enkel. Plasser følgende kode under the_content();

Alt som gjenstår for oss nå er å ta vare på den eneste manglende filen, archives-page-style.css. La oss imidlertid la det være til senere, siden vi vil bruke det som et oppbevaringssted for alle stilene på vår egendefinerte arkivside, inkludert for widgets.

Viser de siste 15 postene

For å gjøre dette må vi gjøre noe manuell PHP-koding. Selv om visning av innlegg kan implementeres ved hjelp av en rekke widgets, la oss unngå monotonien og dykke ned i koding for å demonstrere flere forskjellige muligheter.

Du spør sikkert hvorfor 15 oppføringer? Jeg vet ikke, jeg dro dette nummeret ut av løse luften. La oss gjøre det tilpassbart med egendefinerte felt.

Her er hva vi skal gjøre:

  • Vi angir antall innlegg ved å bruke feltet arkivert-innlegg-ingen tilpasset.
  • Hvis nummeret ikke er gyldig, vil malen bruke standardverdien for de siste 15 oppføringene.

Nedenfor er koden som gjør dette. Plasser den under forrige seksjon i content-tmpl_archives.php-filen som håndterer de nye widgetområdene.

ID, "archived-posts-no", true)); /* Her sørger vi for at antallet som hentes er rimelig. Hvis det er høyere enn 200 eller lavere enn 2, tilbakestiller vi det til standardverdien på 15. */ if($how_many_last_posts > 200 ||. $hvor mange_siste_innlegg< 2) $how_many_last_posts = 15; $my_query = new WP_Query("post_type=post&nopaging=1"); if($my_query->have_posts()) ( echo "

"; ekko "
    "; $counter = 1; while($my_query->have_posts() && $counter<= $how_many_last_posts) { $my_query->posten(); ?>
  1. ">
"; wp_reset_postdata(); ) ?>

Alt denne koden gjør er å hente verdien av et tilpasset felt, angi antall poster som skal vises, og deretter velge disse postene fra databasen ved å bruke WP_Query();. Jeg bruker også noen Font Awesome-ikoner for å legge til litt stil til denne blokken.

Viser lenker til forfatterarkiver

Denne delen er bare nyttig hvis du driver en blogg med flere forfattere. Hopp over det hvis du har én forfatter.

Denne funksjonaliteten kan implementeres ved å bruke en enkel kodeblokk som må plasseres i filen content-tmpl_archives.php (under forrige blokk):

Våre forfattere

Vi kommer til stiler om et par minutter. For nå, legg merke til at alt gjøres ved å kalle funksjonen wp_list_authors().

Viser lenker til arkiver etter måned

Jeg la til dette elementet helt til slutt fordi det ikke er den mest nyttige komponenten fra en lesers synspunkt. Det er imidlertid viktig å ha det på arkivsiden slik at du slipper å bruke widgets for å vise månedlige arkiver andre steder på siden.

Slik vil det se ut i filen content-tmpl_archives.php:

Etter måned

I dette tilfellet viser vi det som et eget avsnitt med oppføringer atskilt med skråstreker (|).

Komplett arkivsidemal

La oss ta en titt på den komplette content-tmpl_archives.php-filen, som er hovedfilen vår for å sende ut et tilpasset arkiv:

>

ID, "archived-posts-no", true)); if($how_many_last_posts > 200 || $how_many_last_posts< 2) $how_many_last_posts = 15; $my_query = new WP_Query("post_type=post&nopaging=1"); if($my_query->have_posts()) ( echo "

Siste ".$how_many_last_posts." Innlegg

"; ekko "
    "; $counter = 1; while($my_query->have_posts() && $counter<= $how_many_last_posts) { $my_query->posten(); ?>
  1. " rel="bokmerke" title="Permanent lenke til!}">
"; wp_reset_postdata(); ) ?>

Våre forfattere

Etter måned

Stilark

Til slutt, la oss se på stilarket. Slik ser filen archives-page-style.css ut:

Archives-widget-left ( float: venstre; bredde: 50 %; ) .archives-widget-right ( float: venstre; polstring-venstre: 4 %; bredde: 46 %; ) .archives-latest-section ( ) .archives -nyeste seksjon ol ( skriftstil: kursiv; skriftstørrelse: 20px; utfylling: 10 piksler 0; ) .archives-latest-section ol li ( padding-venstre: 8px; ) .archives-authors-section ( ) .archives -authors-section ul ( listestil: ingen; tekstjustering: senter; border-top: 1px prikket #888; border-bottom: 1px prikket #888; utfylling: 10px 0; skriftstørrelse: 20px; margin: 0 0 20px 0; .archives-authors-section ul li (display: inline; padding: 0 10px; ).archives-authors-section ul li a (tekst-dekorasjon:ingen; ) .archives-by-month-section (ext. -align: senter; ord-mellomrom: 5px; måned-seksjon p a ( tekst-dekorasjon: ingen; ) @media only-skjerm og (maks-bredde: 600px) ( .archives-widget-left ( width: 100%; ) .archives-widget-right ( width: 100 %; ) )

Stiler gjelder for det meste fonter og noen få strukturelle elementer, med unntak av et par justeringer, samt en responsiv designblokk på slutten.

La oss se hvordan dette vil se ut i praksis. Her er et nettsted som har massevis av arkivert innhold:

Hvordan integrere denne malen i et hvilket som helst tema

Den tilpassede arkivsiden vi opprettet her er for Zerif Lite-temaet, som er tilgjengelig i den offisielle WordPress-katalogen. Men, som jeg sa, kan den brukes i forbindelse med ethvert tema. Slik gjør du det:

  1. Vi tar filene archives-page-style.css og archives-page-functions.php som vi opprettet i opplæringen og plasserer dem deretter i hovedtemakatalogen.
  2. Rediger temaets functions.php og legg til følgende linje helt til slutt: require get_template_directory() . '/archives-page-functions.php';
  3. Ta temaets page.php-fil, lag en kopi av den, endre navn på den, endre funksjonskallet get_template_part() til get_template_part('content', 'tmpl_archives'); og legg til en beskrivende kommentar helt i begynnelsen: /* Template Navn: Arkivside Egendefinert */.
  4. Ta temaets content-page.php-fil, lag en kopi av den, gi den nytt navn til content-tmpl_archives.php, og legg til alle de tilpassede blokkene vi opprettet i opplæringen, rett under the_content();
  5. La oss teste og nyte.

Slik vil det se ut i standard Twenty Fifteen-temaet: