Ukukhangisa Okuqukethwe

I-WordPress: Ungawabhala Kanjani Amakhasi Engane Usebenzisa I-Shortcode

Sakhe kabusha i-hierarchy yamasayithi ethu ambalwa WordPress amaklayenti, futhi enye yezinto esizama ukuzenza ukuhlela ulwazi kahle. Ukwenza lokhu, sivame ukufuna ukwakha ikhasi eliyinhloko futhi sifake imenyu ebhala ngokuzenzakalelayo amakhasi angezansi kwalo. Uhlu lwamakhasi ezingane, noma amakhasi amancane.

Ngeshwa, awukho umsebenzi ongokwemvelo noma isici sokwenza lokhu ngaphakathi kwe-WordPress, ngakho-ke senze ikhodi emfushane ukuze sengeze kusayithi yeklayenti. Nansi indlela ongayisebenzisa ngayo i-shortcode nakho konke okuguquguqukayo kwayo okugcwele ngaphakathi kokuthunyelwe kwe-WordPress noma ikhasi:

[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"]

Ukuhlukaniswa kokusetshenziswa:

  • ifempty="No child pages found": Lo mbhalo uzovezwa uma engekho amakhasi engane atholakalayo.
  • order="ASC": Lokhu kuhlunga uhlu lwamakhasi ezingane ngokulandelana okunyukayo.
  • orderby="title": Lokhu ku-oda amakhasi engane ngesihloko sawo.
  • ulclass="custom-ul-class": Isebenzisa isigaba se-CSS esithi “custom-ul-class” ku- <ul> ingxenye yohlu.
  • liclass="custom-li-class": Isebenzisa isigaba se-CSS esithi “custom-li-class” kusigaba ngasinye <li> ingxenye ohlwini.
  • aclass="custom-a-class": Isebenzisa isigaba se-CSS “custom-a-class” kusigaba ngasinye <a> (isixhumanisi) ingxenye ohlwini.
  • displayimage="yes": Lokhu kuhlanganisa isithombe esifakiwe sekhasi ngalinye lengane ohlwini.
  • align="aligncenter": Lokhu kuqondanisa izithombe ezifakiwe phakathi nendawo.

Faka le khodi efushane ngokuqondile endaweni yokuqukethwe kokuthunyelwe kwe-WordPress noma ikhasi lapho ufuna ukuthi uhlu lwamakhasi ezingane luvele. Khumbula ukwenza ngokwezifiso amanani esibaluli ngasinye ukuze afanele ukwakheka nesakhiwo sesayithi lakho le-WordPress.

Ngokwengeziwe, uma ungathanda i- ngcaphuno emfushane ichaza ikhasi ngalinye, i-plugin inika amandla izingcaphuno emakhasini ukuze ukwazi ukuhlela lokho okuqukethwe kuzilungiselelo zekhasi.

Faka ohlwini Ikhodi Efushane Yamakhasi Engane

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');

Umsebenzi add_shortcode_listchildpages yengeza ikhodi emfushane yangokwezifiso

No Records

, ongayisebenzisa ngaphakathi kokuthunyelwe kwe-WordPress noma amakhasi ukuze ubonise uhlu lwamakhasi ezingane. Nakhu ukuhlukaniswa kokuthi ikhodi isebenza kanjani:

  1. I-Global Post Iyaguquguquka: Umsebenzi uqala ngokumemezela i-global variable $post, esetshenziselwa ukufinyelela ulwazi mayelana nokuthunyelwe kwamanje noma ikhasi ngaphakathi kwe-WordPress.
  2. Izimfanelo ze-Shortcode: I shortcode_atts umsebenzi usetha amanani azenzakalelayo ezibaluli ze-shortcode. Abasebenzisi bangakwazi ukubhala ngaphezulu lokhu lapho befaka ikhodi emfishane. Izibaluli zifaka:
    • ifempty: Umlayezo ozoboniswa uma kungekho amakhasi engane.
    • order: I-oda lamakhasi wengane (ASC noma i-DESC).
    • orderby: Imibandela yoku-oda amakhasi engane (isb, idethi_yokushicilela).
    • ulclass: Ikilasi le-CSS le <ul> into.
    • liclass: Ikilasi le-CSS le <li> izakhi.
    • aclass: Ikilasi le-CSS le <a> (ihange) izakhi.
    • displayimage: Ukuthi sibonise yini isithombe esifakiwe samakhasi wengane.
    • align: Ukuqondanisa kwesithombe esifakiwe.
  3. Izimpikiswano Zombuzo: Umsebenzi usetha i-a WP_Query ukubuyisa wonke amakhasi ezingane ekhasi lamanje, ahlelwe ngokuvumelana nezimfanelo ezishiwo.
  4. Ukukhiqiza Uhlu:
    • Uma amakhasi ezingane etholakala, umsebenzi wakha uhlu olungahlelekile lwe-HTML (<ul>), ikhasi ngalinye lengane limelelwe into yohlu (<li>).
    • Ngaphakathi kwento yohlu ngalunye, umsebenzi uhlola ukuthi isithombe esifakiwe kufanele siboniswe yini ngokususelwe ku- displayimage imfanelo.
    • Umsebenzi futhi udala isixhumanisi ekhasini ngalinye lengane usebenzisa i <a> ithegi, futhi uma ikhona, yengeza ingcaphuno yekhasi lengane.
  5. Okukhiphayo noma Umlayezo Ozenzakalelayo: Uma engekho amakhasi engane, umsebenzi ukhipha umlayezo oshiwo yi- ifempty imfanelo.
  6. Setha kabusha Idatha Yeposi: I wp_reset_postdata umsebenzi usetha kabusha umbuzo we-WordPress, uqinisekisa ukuthi umhlaba wonke $post into ibuyiselwa kokuthunyelwe kombuzo oyinhloko.
  7. Ukubhaliswa Kwekhodi Emfishane: Ekugcineni, i add_shortcode amarejista omsebenzi listchildpages njenge-shortcode entsha, eyixhumanisa ne- add_shortcode_listchildpages umsebenzi, okwenza itholakale ukuze isetshenziswe kokuthunyelwe namakhasi.

Lo msebenzi uwusizo ekufakeni kuhlu amakhasi amancane ekhasini lomzali, ukuthuthukisa ukuzulazula nokuhleleka ngaphakathi kwesayithi le-WordPress. Ngingancoma ukuyengeza ku-plugin yangokwezifiso uma ungathanda ukuyengeza kusayithi lakho le-WordPress. Noma... ungadawuniloda i-plugin engiyishicilele.

Faka ohlwini I-plugin ye-Shortcode Yamakhasi Engane

Ekugcineni ngifike ngacindezela ikhodi ku-plugin ukwenza kube lula ukuyifaka nokuyisebenzisa, kanye ne Faka kuhlu i-plugin yamakhodi ezinwele zezingane kuvunywe yi-WordPress namuhla! Sicela uyilande futhi uyifake - uma uthanda, nikeza isibuyekezo!

I-WordPress Plugin Yokufakwa Kuhlu Kwamakhasi Wezingane

Douglas Karr

Douglas Karr i-CMO ye VulaINSIGHTS kanye nomsunguli we Martech Zone. UDouglas usize inqwaba yeziqalo eziphumelelayo ze-MarTech, uye wasiza ekukhuthaleni okungaphezu kuka-$5 bil ekuthengeni nasekutshalweni kwe-Martech, futhi uyaqhubeka nokusiza izinkampani ekusebenziseni nasekuzenzeleni amasu azo okuthengisa nokumaketha. UDouglas uyingcweti yokuguqula idijithali eyaziwa emhlabeni wonke kanye nesikhulumi se-MarTech. UDouglas futhi ungumbhali oshicilelwe wencwadi kaDummie kanye nencwadi yobuholi bebhizinisi.

Izihloko ezihlobene Nalesi

Buyela emuva kunkinobho phezulu
Close

I-Adblock itholiwe

Martech Zone iyakwazi ukukunikeza lokhu okuqukethwe ngaphandle kwenkokhiso ngoba senza imali ngesayithi yethu ngemali engenayo yezikhangiso, izixhumanisi ezingaphansi, noxhaso. Singajabula uma ungasusa i-ad blocker yakho njengoba ubuka isayithi lethu.