Turinio Rinkodara

„WordPress“: kaip įtraukti antrinius puslapius naudojant trumpąjį kodą

Atkūrėme kelių mūsų svetainių hierarchiją WordPress klientų, o vienas iš dalykų, kuriuos stengiamės padaryti – efektyviai tvarkyti informaciją. Norėdami tai padaryti, dažnai norime sukurti pagrindinį puslapį ir įtraukti meniu, kuriame automatiškai pateikiami po juo esantys puslapiai. Antrinių puslapių arba antrinių puslapių sąrašas.

Deja, „WordPress“ nėra tam būdingos funkcijos ar funkcijos, todėl sukūrėme trumpąjį kodą, kurį galime pridėti prie kliento svetainės. Štai kaip galite naudoti trumpąjį kodą su visais jo kintamaisiais, esančiais „WordPress“ įraše arba puslapyje:

[listchildpages ifempty="No child pages found" order="ASC" orderby="title" ulclass="custom-ul-class" liclass="custom-li-class" aclass="custom-a-class" displayimage="yes" align="aligncenter"]

Naudojimo suskirstymas:

  • ifempty="No child pages found": Šis tekstas bus rodomas, jei antrinių puslapių nėra.
  • order="ASC": antrinių puslapių sąrašas rūšiuojamas didėjančia tvarka.
  • orderby="title": antriniai puslapiai išdėstomi pagal jų pavadinimą.
  • ulclass="custom-ul-class": Taiko CSS klasę „custom-ul-class“ <ul> sąrašo elementas.
  • liclass="custom-li-class": kiekvienam taiko CSS klasę „custom-li-class“. <li> elementas sąraše.
  • aclass="custom-a-class": kiekvienam taiko CSS klasę „custom-a-class“. <a> (nuoroda) elementą sąraše.
  • displayimage="yes": Tai apima kiekvieno antrinio sąrašo puslapio rodomą vaizdą.
  • align="aligncenter": Tai sulygiuoja rodomus vaizdus centre.

Įdėkite šį trumpąjį kodą tiesiai į „WordPress“ įrašo arba puslapio, kuriame norite matyti antrinių puslapių sąrašą, turinio sritį. Nepamirškite tinkinti kiekvieno atributo reikšmių, kad jos atitiktų jūsų „WordPress“ svetainės dizainą ir struktūrą.

Be to, jei norite a trumpa ištrauka aprašydamas kiekvieną puslapį, papildinys įgalina puslapių ištraukas, kad galėtumėte redaguoti tą turinį puslapio nustatymuose.

Išvardykite antrinių puslapių trumpąjį kodą

function add_shortcode_listchildpages($atts, $content = "") { 
    global $post; 
    $string = '';

    $atts = shortcode_atts(array(
        'ifempty' => '<p>No Records</p>',
        'order' => 'DESC',
        'orderby' => 'publish_date',
        'ulclass' => '',
        'liclass' => '',
        'aclass' => '',
        'displayimage' => 'no',
        'align' => 'alignleft'
    ), $atts, 'listchildpages');

    $args = array(
        'post_type' => 'page',
        'posts_per_page' => -1,
        'post_parent' => $post->ID,
        'orderby' => $atts['orderby'],
        'order' => $atts['order']
    );

    $parent = new WP_Query($args);

    if ($parent->have_posts()) {
        $string .= $content.'<ul class="'.$atts['ulclass'].'">';
        while ($parent->have_posts()) : $parent->the_post();
            $string .= '<li class="'.$atts['liclass'].'">';
            $true = array("y", "yes", "t", "true");
            $showimage = strtolower($atts['displayimage']);
            if (in_array($showimage, $true)) {
                if (has_post_thumbnail($post->ID)) {
                    $image_attributes = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'thumbnail'); 
                    $string .= '<a class="'.$atts['aclass'].'" href="'.get_permalink().'" title="'.get_the_title().'">';
                    $string .= '<img src="'.$image_attributes[0].'" width="'.$image_attributes[1].'" height="'.$image_attributes[2].'" alt="'.get_the_title().'" class="'.$atts['align'].'" /></a>';
                }
            }
            $string .= '<a class="'.$atts['aclass'].'" href="'.get_permalink().'" title="'.get_the_title().'">'.get_the_title().'</a>';
            if (has_excerpt($post->ID)) {
                $string .= ' - '.get_the_excerpt();
            }
            $string .= '</li>';
        endwhile;
        $string .= '</ul>';
    } else {
        $string = $atts['ifempty'];
    }

    wp_reset_postdata();

    return $string;
}
add_shortcode('listchildpages', 'add_shortcode_listchildpages');

Funkcija add_shortcode_listchildpages prideda pasirinktinį trumpąjį kodą

No Records

, kurį galite naudoti „WordPress“ įrašuose ar puslapiuose, kad būtų rodomas antrinių puslapių sąrašas. Štai kodo veikimo aprašymas:

  1. Visuotinis įrašo kintamasis: funkcija pradedama deklaruojant visuotinį kintamąjį $post, kuris naudojamas norint pasiekti informaciją apie dabartinį įrašą ar puslapį „WordPress“.
  2. Trumpojo kodo atributai: shortcode_atts funkcija nustato numatytąsias trumpojo kodo atributų reikšmes. Vartotojai gali jų nepaisyti, kai įterpia trumpąjį kodą. Atributai apima:
    • ifempty: pranešimas, rodomas, jei nėra antrinių puslapių.
    • order: antrinių puslapių tvarka (ASC arba DESC).
    • orderby: antrinių puslapių užsakymo kriterijai (pvz., paskelbimo_data).
    • ulclass: CSS klasė <ul> elementas.
    • liclass: CSS klasė <li> elementai.
    • aclass: CSS klasė <a> (inkaro) elementai.
    • displayimage: ar rodyti antrinių puslapių tipinį vaizdą.
    • align: rodomo vaizdo lygiavimas.
  3. Argumentų užklausa: Funkcija nustato a WP_Query norėdami gauti visus antrinius dabartinio puslapio puslapius, surūšiuotus pagal nurodytus atributus.
  4. Sąrašo generavimas:
    • Jei randami antriniai puslapiai, funkcija sudaro HTML netvarkingą sąrašą (<ul>), kiekvienas antrinis puslapis pavaizduotas sąrašo elementu (<li>).
    • Kiekviename sąrašo elemente funkcija patikrina, ar rodyti rodomą vaizdą pagal displayimage atributas.
    • Funkcija taip pat sukuria nuorodą į kiekvieną antrinį puslapį naudodama <a> žymą ir, jei yra, prideda antrinio puslapio ištrauką.
  5. Išvestis arba numatytasis pranešimas: Jei antrinių puslapių nėra, funkcija išveda pranešimą, nurodytą ifempty atributas.
  6. Iš naujo nustatyti įrašo duomenis: wp_reset_postdata funkcija iš naujo nustato „WordPress“ užklausą, užtikrindama, kad pasaulinė $post objektas atkuriamas į pradinį pagrindinės užklausos įrašą.
  7. Trumpojo kodo registracija: Galiausiai, add_shortcode funkcijų registrai listchildpages kaip naują trumpąjį kodą, susiejant jį su add_shortcode_listchildpages funkcija, todėl ją galima naudoti įrašuose ir puslapiuose.

Ši funkcija naudinga dinamiškai įtraukiant antrinius puslapius pirminiame puslapyje, pagerinant naršymą ir tvarkymą „WordPress“ svetainėje. Rekomenduočiau jį pridėti prie tinkinto papildinio, jei norite jį įtraukti į savo „WordPress“ svetainę. Arba... galite atsisiųsti mano paskelbtą papildinį.

Sąrašas antrinių puslapių trumpojo kodo papildinys

Aš pagaliau turėjau įstumti kodą į įskiepį, kad būtų lengviau įdiegti ir naudoti, ir Išvardykite antrinių puslapių trumpojo kodo papildinį šiandien patvirtino WordPress! Atsisiųskite ir įdiekite – jei patiko, pateikite atsiliepimą!

„WordPress“ papildinys vaikų puslapių įtraukimui į sąrašą

Douglas Karr

Douglas Karr yra BRO OpenINSIGHTS ir įkūrėjas Martech Zone. Douglas padėjo daugybei sėkmingų MarTech pradedančiųjų įmonių, padėjo atlikti daugiau nei 5 mlrd. Douglas yra tarptautiniu mastu pripažintas skaitmeninės transformacijos ir MarTech ekspertas bei pranešėjas. Douglasas taip pat yra paskelbtas Dummie vadovo ir verslo lyderystės knygos autorius.

Susiję straipsniai

Atgal į viršų mygtukas
arti

Aptiktas skelbimų blokas

Martech Zone gali pateikti jums šį turinį nemokamai, nes gauname pajamų iš savo svetainės per pajamas iš skelbimų, filialų nuorodas ir rėmimą. Būtume dėkingi, jei peržiūrėdami mūsų svetainę pašalintumėte skelbimų blokavimo priemonę.