Tempo fa cercavo un modo per listare le categorie in ordine gerarchico e non alfabetico come fa WordPress di default.
Cercando in vari blog mi è stato risposto che WP era molto limitato in questo senso.
Posto qui lo script per visualizzare la lista categorie in ordine gerarchico madre-figlio.
Questo codice è inseribile nel loop o in qualsiasi parte volete visualizzare la lista di un post/articolo:
<?php // get the category IDs assigned to post $categories = wp_get_post_categories( $post->ID, array( 'fields' => 'ids' ) );
// separator between links
$separator = ', ';
if ( $categories ) {
$cat_ids = implode( ',' , $categories );
$cats = wp_list_categories( 'title_li=&style=none&echo=0&include=' . $cat_ids );
$cats = rtrim( trim( str_replace( '
', $separator, $cats ) ), $separator );
// display post categories
echo $cats;
}
?>
Un esempio dell’uso dello scipt lo trovate nella lista in basso di questo post.
Potete cambiare il separatore delle voci della lista cambiando la “,” all’interno di “$separator = ‘, ‘” con un altro simbolo a vostra scelta.
Se invece volete visualizzare solo la lista delle categorie “figlio”, all’interno di tag “li” (nella sidebar per esempio), ecco lo script:
<ul>
<?php wp_list_categories('orderby=id&show_count=1&use_desc_for_title=0&child_of=8'); ?>
</ul>
Il codice di esempio genera categorie con link, ordinate per ID, solo per i “figli” della categoria con ID 8;
Mostra il numero di post per ogni categoria e nasconde le descrizioni di categoria dall’attributo title dei link generati.
Nota: Se non ci sono post in una categoria “padre”, tale categoria non verrà visualizzata.
Quando “show_count = 1”, il numero di post di ogni categoria è circondato da parentesi.
Al fine di rimuovere le parentesi, senza modificare i file del core di WordPress, utilizzare il codice riportato di seguito.
<?php
$variable = wp_list_categories('echo=0&show_count=1&title_li=<h2>Categories</h2>');
$variable = preg_replace('~\((\d+)\)(?=\s*+<)~', '$1', $variable);
echo $variable;
?>
Ti ho nominato per il versatile blogger award! Scopri tutte le info sul mio blog http://www.riflessimichi.wordpress.com
MichelaQuote
Ciao Andrea penso che potresti aiutarmi,
ho creato una navigazione principale richiamando categorie di articoli, mi piacerebbe una volta che ho cliccato su una di queste (che è una categorie madre) visualizzare prima della stampa degli articoli una lista con tutte le categorie figlio della categoria in questione.
micheleQuote
Ciao Michele, cosa intendi per stampa degli articoli? Che vengono caricati a video?
Andrea BaccoliniQuote