WordPress: Com llistar pàgines infantils mitjançant un codi curt
Hem reconstruït la jerarquia de llocs per a diversos dels nostres WordPress clients, i una de les coses que intentem fer és organitzar la informació de manera eficient. Per fer-ho, sovint volem crear una pàgina mestra i incloure un menú que llisti automàticament les pàgines que hi ha a sota. Una llista de pàgines secundàries o subpàgines.
Malauradament, no hi ha cap funció ni funció inherent per fer-ho a WordPress, de manera que hem desenvolupat un codi curt per afegir al lloc del client. A continuació, s'explica com podeu utilitzar el codi curt amb totes les seves variables poblades dins d'una publicació o pàgina de 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"]
Desglossament de l'ús:
ifempty="No child pages found"
: aquest text es mostrarà si no hi ha pàgines secundàries disponibles.order="ASC"
: Això ordena la llista de pàgines secundàries en ordre ascendent.orderby="title"
: Això ordena les pàgines secundàries pel seu títol.ulclass="custom-ul-class"
: Aplica la classe CSS "custom-ul-class" al fitxer<ul>
element de la llista.liclass="custom-li-class"
: Aplica la classe CSS "custom-li-class" a cadascun<li>
element de la llista.aclass="custom-a-class"
: Aplica la classe CSS "custom-a-class" a cadascun<a>
(enllaç) element de la llista.displayimage="yes"
: inclou la imatge destacada de cada pàgina secundària de la llista.align="aligncenter"
: Això alinea les imatges destacades al centre.
Inseriu aquest codi curt directament a l'àrea de contingut d'una publicació o pàgina de WordPress on voleu que aparegui la llista de pàgines secundàries. Recordeu personalitzar els valors de cada atribut per adaptar-los al disseny i l'estructura del vostre lloc de WordPress.
A més, si voleu un fragment breu en descriure cada pàgina, el connector habilita fragments de pàgines perquè pugueu editar aquest contingut a la configuració de la pàgina.
Llista de codi curt de pàgines infantils
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');
La funció add_shortcode_listchildpages
afegeix un codi curt personalitzat
No Records
- Variable de publicació global: La funció comença declarant la variable global
$post
, que s'utilitza per accedir a informació sobre la publicació o pàgina actual dins de WordPress. - Atributs de codi curt: El
shortcode_atts
La funció estableix valors predeterminats per als atributs de codi curt. Els usuaris poden substituir-los quan insereixen el codi curt. Els atributs inclouen:ifempty
: Missatge per mostrar si no hi ha pàgines secundàries.order
: Ordre de les pàgines fills (ASC o DESC).orderby
: Criteris per ordenar pàgines fills (p. ex., publish_date).ulclass
: classe CSS per a<ul>
element.liclass
: classe CSS per a<li>
elements.aclass
: classe CSS per a<a>
elements (àncora).displayimage
: si s'ha de mostrar la imatge destacada de les pàgines secundàries.align
: Alineació de la imatge destacada.
- Arguments de consulta: La funció configura a
WP_Query
per recuperar totes les pàgines secundàries de la pàgina actual, ordenades segons els atributs especificats. - Generació de la llista:
- Si es troben pàgines fills, la funció construeix una llista HTML no ordenada (
<ul>
), amb cada pàgina secundària representada per un element de llista (<li>
). - Dins de cada element de la llista, la funció comprova si s'ha de mostrar la imatge destacada en funció de
displayimage
atribut. - La funció també crea un enllaç a cada pàgina secundària mitjançant l'
<a>
etiqueta i, si està disponible, afegeix l'extracte de la pàgina secundària.
- Si es troben pàgines fills, la funció construeix una llista HTML no ordenada (
- Sortida o missatge per defecte: Si no hi ha pàgines fills, la funció emet el missatge especificat per
ifempty
atribut. - Restableix les dades de publicació: El
wp_reset_postdata
La funció restableix la consulta de WordPress, assegurant que el global$post
L'objecte es restaura a la publicació de la consulta principal original. - Registre de codi curt: Finalment, el
add_shortcode
registres de funcionslistchildpages
com a codi curt nou, enllaçant-lo aadd_shortcode_listchildpages
funció, fent-lo disponible per utilitzar-lo en publicacions i pàgines.
Aquesta funció és útil per llistar de forma dinàmica subpàgines en una pàgina principal, millorant la navegació i l'organització dins d'un lloc de WordPress. Us recomano afegir-lo a un connector personalitzat si voleu afegir-lo al vostre lloc de WordPress. O... pots descarregar el connector que he publicat.
Llista del connector de codi curt de pàgines infantils
Finalment vaig intentar empènyer el codi a un connector per facilitar la instal·lació i la utilització, i el Llista el complement de codi curt de pàgines infantils Va ser aprovat per WordPress avui! Baixeu-lo i instal·leu-lo; si us agrada, feu una revisió!