Muuttujien välittäminen WordPress-malliin tehokkaasti
Yksi haaste, jota teeman tai laajennuksen kehittäjät kohtaavat, get_template_part
on kyvyttömyys välittää muuttujia ladatulle WordPress-mallille. Vaihtoehtoinen käyttö on kuitenkin olemassa locate_template
.
Yleiskatsaus
Tässä esimerkissä näytämme kolme Easy Digital Download -merkintää. Olen käyttänyt EDD:tä jo jonkin aikaa ja vaikka siinä on paljon ominaisuuksia, se on silti yllättävän kevyt.
Haemme merkinnät ja tallennamme ne muuttujaan $edd_download
. Lataamme sitten muuttujan välittävän WordPress -mallin. Itse asiassa muuttujan välittäminen tarkoittaa liikaa: lataamme mallin tavalla, jolla $edd_download
muuttujalla on oikea laajuus käytettäväksi ladatussa mallissa.
Ladataan WordPress-mallia
Tämä koodi voidaan sijoittaa funktioon. Voit sitten liittää funktion johonkin teemasi alueeseen toimintokoukun avulla tai kutsua funktiota yksinkertaisesti mallitunnisteeksi. Teemoissani käytän koukkuja, jotta käyttäjät voivat myöhemmin lisätä tai poistaa sisältöä. Tämä on kaikki mitä tarvitsemme koodia varten:
Mallin koodi
Nyt tarvitsemme WordPress-mallitiedoston. Jos huomaat yllä olevan kutsun, se locate_template
odottaa löytävänsä tiedoston teemakansion hakemistosta download-home.php
.parts
Meidän on aina muistettava soittaa wp_reset_postdata()
foreach-silmukan jälkeen, jos soitimme setup_postdata()
.
Loppusanat
Joten miksi tämä on hyödyllistä kaiken tämän jälkeen? koska käyttäjät voivat luoda mallin alatason teemaan ja helposti ohittaa alkuperäisen mallin. Kyse on käyttäjien elämän helpottamisesta. Toki tämä voidaan saavuttaa myös suodattimilla tai liitettävien toimintojen luomisella, mutta jotkut käyttäjät saattavat pitää yhteen tehtävään keskittyvän mallin muokkaamista puhtaampana lähestymistapana kuin käsitellä tiedostoa, jossa on paljon toimintoja useille erilaisille ja toisiinsa liittymättömille tehtäville.