Sisältö Markkinointi

PHP: Käytä WordPress-sovellusliittymää lyhytkoodin luomiseen alasivujen luetteloimiseksi

Työskentelemme yritysasiakkaalle melko monimutkaisen toteutuksen parissa. Sivustoa rakennetaan WordPressissä, mutta siinä on paljon kelloja ja pilliä. Usein, kun teen tällaista työtä, haluan tallentaa mukautetun koodin myöhemmin uudelleen muille sivustoille. Tässä tapauksessa ajattelin, että se oli niin hyödyllinen toiminto, halusin jakaa sen maailman kanssa. Käytämme Avada WordPress -teema Fusion Page Builder -sovelluksella vanhempana teemana ja ottamalla käyttöön melko vähän mukautettua koodia lapsiteemassamme.

WordPressin sovellusliittymässä on jo muutama toiminto, joita voidaan käyttää alasivujen luettelointiin, kuten wp_list_pages ja get_pages. Ongelmana on, että he eivät palauta tarpeeksi tietoa, jos aiot luoda dynaamisesti luettelon, jossa on joukko tietoja.

Tälle asiakkaalle he halusivat lähettää virkanimitykset ja saada luettelon avoimista työpaikoista automaattisesti laskevassa järjestyksessä julkaisupäivänsä mukaan. He halusivat myös näyttää otteen sivusta.

Joten ensin meidän oli lisättävä ote sivumalliin. Teemansa funktiot.php: ssä lisättiin:

add_post_type_support ('sivu', 'ote');

Sitten meidän oli rekisteröitävä mukautettu lyhytkoodi, joka luo luettelon alasivuista, linkit niihin ja otteen niistä. Tee tämä, meidän on käytettävä WordPress-silmukka. Lisäsimme funktioihin.php:

// Luettelofunktion alisivut dknm_list_child_pages ($ atts, $ content = "") {global $ post; $ atts = shortcode_atts (taulukko ('ifempty' => 'Ei tietueita', 'aclass' => ''), $ atts, 'list_subpages'); $ args = array ('post_type' => 'sivu', 'posts_per_page' => -1, 'post_parent' => $ post-> ID, 'orderby' => 'publish_date', 'order' => 'DESC' ,); $ parent = uusi WP_Query ($ args); if ($ parent-> have_posts ()) {$ string. = $ content. ' "; while ($ parent-> have_posts ()): $ parent-> the_post (); $ string. = ' '.get_the_title ().' "; jos (has_excerpt ($ post-> ID)) {$ string. = '-' .get_the_excerpt (); } $ merkkijono. = ' "; lopulta; } muu {$ string = ' '. $ atts [' ifempty '].' "; } wp_reset_postdata (); palauta $ string; } add_shortcode ('list_subpages', 'dknm_list_child_pages');

Nyt lyhytkoodi voidaan toteuttaa kaikkialla sivustossa näyttämään lapsisivut linkin ja otteen kanssa. Käyttö:

[list_subpages aclass = "button" ifempty = "Valitettavasti meillä ei tällä hetkellä ole työpaikkoja."] Luettelo työpaikoista [/ list_subpages]

Tuloksena on mukava, puhdas järjestämätön luettelo julkaistuista työpaikoista, jotka ovat heidän urasivunsa alapuolella olevia lapsisivuja.

Jos työpaikkoja ei julkaistu (ei alisivuja), se julkaisee:

Valitettavasti meillä ei tällä hetkellä ole työpaikkoja.

Jos työpaikkoja on julkaistu (lapsisivut), se julkaisee:

Luettelo työpaikoista:

Douglas Karr

Douglas Karr on CMO of OpenINSIGHTS ja perustaja Martech Zone. Douglas on auttanut kymmeniä menestyneitä MarTech-startuppeja, auttanut yli 5 miljardin dollarin due diligence -tarkastuksessa Martechin hankinnoissa ja investoinneissa ja avustaa edelleen yrityksiä niiden myynti- ja markkinointistrategioiden toteuttamisessa ja automatisoinnissa. Douglas on kansainvälisesti tunnustettu digitaalisen transformaation ja MarTechin asiantuntija ja puhuja. Douglas on myös julkaissut Dummie's-oppaan ja yritysjohtajuuskirjan.

Aiheeseen liittyvät artikkelit

Takaisin alkuun -painiketta
lähellä

Adblock havaittu

Martech Zone pystyy tarjoamaan sinulle tämän sisällön veloituksetta, koska ansaitsemme sivustomme mainostulojen, kumppanilinkkien ja sponsoroinnin kautta. Olisimme kiitollisia, jos poistaisit mainosten esto-ohjelman, kun katselet sivustoamme.