WordPress: Cara Menyenaraikan Halaman Kanak-kanak Menggunakan Kod Pendek
Kami telah membina semula hierarki tapak untuk beberapa tapak kami WordPress pelanggan, dan salah satu perkara yang kami cuba lakukan ialah menyusun maklumat dengan cekap. Untuk melakukan ini, kami selalunya ingin membuat halaman induk dan memasukkan menu yang menyenaraikan halaman secara automatik di bawahnya. Senarai halaman kanak-kanak, atau subhalaman.
Malangnya, tiada fungsi atau ciri yang wujud untuk melakukan ini dalam WordPress, jadi kami membangunkan kod pendek untuk ditambahkan pada tapak pelanggan. Begini cara anda boleh menggunakan kod pendek dengan semua pembolehubahnya dihuni dalam siaran atau halaman 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"]
Pecahan Penggunaan:
ifempty="No child pages found"
: Teks ini akan dipaparkan jika tiada halaman kanak-kanak tersedia.order="ASC"
: Ini mengisih senarai halaman kanak-kanak dalam tertib menaik.orderby="title"
: Ini memesan halaman kanak-kanak mengikut tajuknya.ulclass="custom-ul-class"
: Menggunakan kelas CSS "custom-ul-class" pada<ul>
elemen senarai.liclass="custom-li-class"
: Menggunakan kelas CSS "custom-li-class" untuk setiap satu<li>
elemen dalam senarai.aclass="custom-a-class"
: Menggunakan kelas CSS "custom-a-class" untuk setiap satu<a>
(pautan) elemen dalam senarai.displayimage="yes"
: Ini termasuk imej yang ditampilkan bagi setiap halaman kanak-kanak dalam senarai.align="aligncenter"
: Ini menjajarkan imej yang ditampilkan di tengah.
Masukkan kod pendek ini terus ke dalam kawasan kandungan siaran atau halaman WordPress yang anda mahu senarai halaman kanak-kanak dipaparkan. Ingat untuk menyesuaikan nilai setiap atribut agar sesuai dengan reka bentuk dan struktur tapak WordPress anda.
Selain itu, jika anda mahukan petikan pendek menerangkan setiap halaman, plugin membolehkan petikan di halaman sehingga anda dapat mengedit kandungan tersebut pada tetapan halaman.
Senaraikan Kod Pendek Halaman Kanak-kanak
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');
Majlis tersebut add_shortcode_listchildpages
menambah kod pendek tersuai
No Records
- Pembolehubah Pos Global: Fungsi bermula dengan mengisytiharkan pembolehubah global
$post
, yang digunakan untuk mengakses maklumat tentang siaran atau halaman semasa dalam WordPress. - Atribut kod pendek: The
shortcode_atts
fungsi menyediakan nilai lalai untuk atribut kod pendek. Pengguna boleh mengatasinya apabila mereka memasukkan kod pendek. Atribut termasuk:ifempty
: Mesej untuk dipaparkan jika tiada halaman kanak-kanak.order
: Susunan halaman kanak-kanak (ASC atau DESC).orderby
: Kriteria untuk memesan halaman anak (cth, publish_date).ulclass
: Kelas CSS untuk<ul>
elemen.liclass
: Kelas CSS untuk<li>
unsur-unsur.aclass
: Kelas CSS untuk<a>
elemen (sauh).displayimage
: Sama ada mahu memaparkan imej yang ditampilkan halaman kanak-kanak.align
: Penjajaran imej yang ditampilkan.
- Argumen Pertanyaan: Fungsi menyediakan a
WP_Query
untuk mendapatkan semula semua halaman anak halaman semasa, diisih mengikut atribut yang ditentukan. - Menjana Senarai:
- Jika halaman kanak-kanak ditemui, fungsi membina senarai HTML tidak tertib (
<ul>
), dengan setiap halaman kanak-kanak diwakili oleh item senarai (<li>
). - Dalam setiap item senarai, fungsi menyemak sama ada untuk memaparkan imej yang ditampilkan berdasarkan
displayimage
atribut. - Fungsi ini juga mencipta pautan ke setiap halaman kanak-kanak menggunakan
<a>
teg, dan jika tersedia, tambahkan petikan halaman anak.
- Jika halaman kanak-kanak ditemui, fungsi membina senarai HTML tidak tertib (
- Output atau Mesej Lalai: Jika tiada halaman kanak-kanak, fungsi mengeluarkan mesej yang ditentukan oleh
ifempty
atribut. - Tetapkan Semula Data Catatan: The
wp_reset_postdata
fungsi menetapkan semula pertanyaan WordPress, memastikan bahawa global$post
objek dipulihkan kepada catatan pertanyaan utama asal. - Pendaftaran kod pendek: Akhirnya, yang
add_shortcode
daftar fungsilistchildpages
sebagai kod pendek baharu, memautkannya keadd_shortcode_listchildpages
fungsi, menjadikannya tersedia untuk digunakan dalam catatan dan halaman.
Fungsi ini berguna untuk menyenaraikan subhalaman secara dinamik pada halaman induk, meningkatkan navigasi dan organisasi dalam tapak WordPress. Saya akan mengesyorkan menambahkannya pada pemalam tersuai jika anda ingin menambahkannya pada tapak WordPress anda. Atau… anda boleh memuat turun pemalam yang saya terbitkan.
Senaraikan Pemalam Kod Pendek Halaman Kanak-kanak
Akhirnya saya berjaya memasukkan kod ke dalam plugin untuk memudahkan pemasangan dan penggunaannya, dan Senaraikan plugin Shortcode Halaman Anak telah diluluskan oleh WordPress hari ini! Sila muat turun dan pasang - jika anda suka, berikan ulasan!