WordPress: Wéi lëschte Kannersäiten mat engem Shortcode
Mir hunn d'Hierarchie vun de Site fir e puer vun eise nei opgebaut WordPress Clienten, an eng vun de Saachen, déi mir probéieren, ass d'Informatioun effizient ze organiséieren. Fir dëst ze maachen, wëlle mir dacks eng Master Säit erstellen an e Menü enthalen deen automatesch d'Säiten drënner opzielt. Eng Lëscht vu Kannersäiten, oder Ënnersäiten.
Leider gëtt et keng inherent Funktioun oder Feature fir dëst bannent WordPress ze maachen, also hu mir e Shortcode entwéckelt fir op de Client säi Site ze addéieren. Hei ass wéi Dir de Shortcode mat all senge Variablen benotzt, déi an engem WordPress Post oder Säit populéiert sinn:
[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"]
Ënnerdeelung vum Gebrauch:
ifempty="No child pages found"
: Dësen Text gëtt ugewisen wann et keng Kannersäite verfügbar sinn.order="ASC"
: Dëst sortéiert d'Lëscht vun de Kannersäiten an opsteigend Uerdnung.orderby="title"
: Dëst ordent d'Kannersäiten no hirem Titel.ulclass="custom-ul-class"
: Gëllt d'CSS Klass "custom-ul-class" op d'<ul>
Element vun der Lëscht.liclass="custom-li-class"
: Gëllt d'CSS Klass "custom-li-class" op all<li>
Element an der Lëscht.aclass="custom-a-class"
: Gëllt d'CSS Klass "custom-a-class" op all<a>
(Link) Element an der Lëscht.displayimage="yes"
: Dëst beinhalt d'ausgezeechent Bild vun all Kand Säit an der Lëscht.align="aligncenter"
: Dëst alignéiert déi ausgezeechent Biller am Zentrum.
Setzt dëse Shortcode direkt an den Inhaltsberäich vun engem WordPress Post oder Säit wou Dir wëllt datt d'Lëscht vun de Kannersäiten erscheint. Denkt drun d'Wäerter vun all Attribut ze personaliséieren fir den Design an d'Struktur vun Ärem WordPress Site ze passen.
Zousätzlech, wann Dir gär e kuerzen Extrait wann all Säit beschriwwe gëtt, erlaabt de Plugin Extraiten op Säite fir datt Dir dësen Inhalt op den Astellunge vun der Säit ännere kënnt.
Lëscht Kand Säiten 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');
D 'Funktioun add_shortcode_listchildpages
füügt e personaliséierte Shortcode
No Records
- Global Post Variabel: D'Funktioun fänkt un andeems d'global Variabel deklaréiert gëtt
$post
, déi benotzt gëtt fir Zougang zu Informatioun iwwer den aktuelle Post oder Säit bannent WordPress. - Shortcode Attributer: D
shortcode_atts
Funktioun setzt Standardwäerter fir d'Kuerzcode Attributer op. D'Benotzer kënnen dës iwwerschreiden wann se de Shortcode aginn. Attributer enthalen:ifempty
: Message fir ze weisen wann et keng Kannersäite gëtt.order
: Uerdnung vun de Kannersäiten (ASC oder DESC).orderby
: Critèrë fir Kannersäiten ze bestellen (zB publish_date).ulclass
: CSS Klass fir de<ul>
Element.liclass
: CSS Klass fir de<li>
Elementer.aclass
: CSS Klass fir de<a>
(anker) Elementer.displayimage
: Ob dat ausgezeechent Bild vun de Kannersäiten ze weisen.align
: Ausrichtung vum ausgezeechente Bild.
- Ufro Argumenter: D'Funktioun setzt a
WP_Query
fir all Kand Säiten vun der aktueller Säit ze recuperéieren, no der spezifizéierter Attributer zortéiert. - Generéiere vun der Lëscht:
- Wann Kannersäiten fonnt ginn, konstruéiert d'Funktioun eng HTML onordéiert Lëscht (
<ul>
), mat all Kand Säit vertruede vun engem Lëscht Element (<li>
). - Bannent all Lëscht Element kontrolléiert d'Funktioun ob d'Astellungsbild baséiert op der
displayimage
Attribut. - D'Funktioun erstellt och e Link op all Kand Säit mat der
<a>
Tag, a wa verfügbar, füügt den Auszuch vun der Kand Säit.
- Wann Kannersäiten fonnt ginn, konstruéiert d'Funktioun eng HTML onordéiert Lëscht (
- Ausgang oder Standard Message: Wann et keng Kannersäite gëtt, gëtt d'Funktioun de Message aus, deen vum
ifempty
Attribut. - Reset Post Daten: D
wp_reset_postdata
Funktioun setzt d'WordPress Ufro zréck, garantéiert datt d'global$post
Objet gëtt op d'Original Haaptquery Post restauréiert. - Shortcode Aschreiwung: Endlech, der
add_shortcode
Funktioun Registerelistchildpages
als neie shortcode, verbënnt et zu deradd_shortcode_listchildpages
Funktioun, déi et verfügbar mécht fir a Posts a Säiten ze benotzen.
Dës Funktioun ass nëtzlech fir dynamesch Ënnersäiten op enger Elteren Säit ze notéieren, d'Navigatioun an d'Organisatioun an engem WordPress Site ze verbesseren. Ech géif recommandéieren et an e personaliséierte Plugin ze addéieren wann Dir et op Är WordPress Site wëllt addéieren. Oder ... Dir kënnt de Plugin eroflueden deen ech publizéiert hunn.
Lëscht Kand Säiten Shortcode Plugin
Ech sinn endlech ronderëm de Code an e Plugin gedréckt fir et méi einfach ze installéieren an ze benotzen, an den Lëscht Kand Säiten Shortcode Plugin gouf vum WordPress haut guttgeheescht! Luet et erof an installéiert et - wann Dir et gär hutt, gitt eng Iwwerpréiwung!