WordPress: Cara Ndhaptar Kaca Bocah Nggunakake Shortcode
Kita wis mbangun maneh hirarki situs kanggo sawetara kita WordPress klien, lan salah siji saka iku kita nyoba kanggo ngatur informasi irit. Kanggo nindakake iki, kita kerep pengin nggawe kaca master lan kalebu menu sing kanthi otomatis nampilake kaca ing ngisor iki. Dhaptar kaca anak, utawa subkaca.
Sayange, ora ana fungsi utawa fitur bawaan kanggo nindakake iki ing WordPress, mula kita nggawe shortcode kanggo ditambahake menyang situs klien. Mangkene carane sampeyan bisa nggunakake shortcode karo kabeh variabel sing diisi ing postingan utawa kaca WordPress:
[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"]
Rincian panggunaan:
ifempty="No child pages found"
: Teks iki bakal ditampilake yen ora ana kaca anak sing kasedhiya.order="ASC"
: Iki ngurutake dhaptar kaca anak ing urutan munggah.orderby="title"
: Iki pesen kaca anak miturut judhul.ulclass="custom-ul-class"
: Aplikasi kelas CSS "custom-ul-class" menyang<ul>
unsur dhaptar.liclass="custom-li-class"
: Aplikasi kelas CSS "custom-li-class" kanggo saben<li>
unsur ing dhaftar.aclass="custom-a-class"
: Aplikasi kelas CSS "custom-a-class" kanggo saben<a>
(link) unsur ing dhaftar.displayimage="yes"
: Iki kalebu gambar fitur saben kaca anak ing dhaftar.align="aligncenter"
: Iki nyelarasake gambar sing ditampilake ing tengah.
Lebokake shortcode iki langsung menyang area isi kiriman WordPress utawa kaca sing pengin dhaptar kaca anak katon. Elinga kanggo ngatur nilai saben atribut supaya pas karo desain lan struktur situs WordPress sampeyan.
Kajaba iku, yen sampeyan pengin a cuplikan cekak njlentrehake saben kaca, plugin kasebut ngidini kutipan ing kaca supaya sampeyan bisa ngowahi konten kasebut ing setelan kaca.
Dhaftar Child Pages Shortcode
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');
Fungsi kasebut add_shortcode_listchildpages
nambah shortcode khusus
No Records
- Global Post Variabel: Fungsi kasebut diwiwiti kanthi nyatakake variabel global
$post
, sing digunakake kanggo ngakses informasi babagan kiriman utawa kaca saiki ing WordPress. - Atribut Shortcode: The
shortcode_atts
fungsi nyetel nilai gawan kanggo atribut shortcode. Pangguna bisa ngatasi iki nalika nglebokake shortcode. Atribut kalebu:ifempty
: Pesen kanggo ditampilake yen ora ana kaca anak.order
: Urutan kaca anak (ASC utawa DESC).orderby
: Kriteria kanggo ngurutake kaca anak (contone, publish_date).ulclass
: kelas CSS kanggo<ul>
unsur.liclass
: kelas CSS kanggo<li>
unsur.aclass
: kelas CSS kanggo<a>
(anchor) unsur.displayimage
: Apa arep nampilake gambar sing ditampilake ing kaca anak.align
: Alignment saka gambar fitur.
- Argumen Pitakonan: Fungsi a
WP_Query
kanggo njupuk kabeh kaca anak saka kaca saiki, diurutake miturut atribut sing ditemtokake. - Nggawe Dhaptar:
- Yen kaca anak ditemokake, fungsi kasebut nggawe dhaptar HTML sing ora diurutake (
<ul>
), kanthi saben kaca anak diwakili dening item dhaptar (<li>
). - Ing saben item dhaptar, fungsi mriksa apa arep nampilake gambar sing ditampilake adhedhasar
displayimage
atribut. - Fungsi kasebut uga nggawe link menyang saben kaca anak nggunakake
<a>
tag, lan yen kasedhiya, nambah kutipan saka kaca anak.
- Yen kaca anak ditemokake, fungsi kasebut nggawe dhaptar HTML sing ora diurutake (
- Pesen Output utawa Default: Yen ora ana kaca anak, fungsi output pesen kasebut dening
ifempty
atribut. - Reset Data Kiriman: The
wp_reset_postdata
fungsi ngreset pitakon WordPress, mesthekake yen global$post
obyek dibalèkaké menyang kiriman query utama asli. - Registrasi shortcode: Pungkasan, ing
add_shortcode
register fungsilistchildpages
minangka shortcode anyar, ngubungake menyangadd_shortcode_listchildpages
fungsi, nggawe kasedhiya kanggo digunakake ing kiriman lan kaca.
Fungsi iki migunani kanggo dhaptar subhalaman kanthi dinamis ing kaca induk, nambah navigasi lan organisasi ing situs WordPress. Aku nyaranake nambahake menyang plugin khusus yen sampeyan pengin nambah menyang situs WordPress sampeyan. Utawa… sampeyan bisa ndownload plugin sing diterbitake.
Dhaptar Plugin Shortcode Kaca Anak
Pungkasane, aku njaluk kode menyang plugin supaya luwih gampang dipasang lan digunakake, lan Daptar plugin Shortcode Kaca Anak wis disetujoni dening WordPress dina iki! Mangga download lan nginstal - yen sampeyan seneng, menehi review!