Categories
php

Visualizzare le categorie “figlie” in WordPress

Uno dei più stupidi aggiornamenti fatti alle API di WordPress, imho, è stato quello che ha eliminato la possibilità di visualizzare le categorie figlie di una predefinita categoria, senza visualizzare anche quelle “nipoti”.

Infatti usando la comune funzione di WordPress chiamata wp_list_categories() utilizzando il filtro child_of vengono visualizzati tutti i discendenti della categoria indicata e non solo quelli di primo livello, cosa decisamente scomoda se usiamo costrutti molto nidificati.

Per rimediare a questa mancanza ultimamente utilizzo all’interno del file functions.php dei temi che produco il seguente codice che mima il risultato della funzione ufficiale del blog engine, limitandosi però al primo livello di discendenza.

Nulla di trascendentale, insomma, ma sicuramente molto comodo per creare menù contestuali.

[code]
/**
* @param $catID int ID della categoria genitrice
* @param $order string ASC o DESC
* @return $output string lista di link a categorie
*/
function get_category_children_only($catID=0,$order = ‘ASC’) {
global $wpdb;
global $cat;

$output = ”;

if (strtoupper($order) != ‘DESC’) $order = ‘ASC’;

$query = “select t.term_id as term_ids, t.name from $wpdb->terms t, $wpdb->term_taxonomy tx where t.term_id = tx.term_id and tx.taxonomy = ‘category’ and tx.parent = ‘”.intval($catID).”‘ group by t.term_id order by t.term_id $order”;

$results = $wpdb->get_results($query);
foreach ($results as $result) {

if ($cat == $result->term_ids) $selected = ‘ current-cat’;
else $selected = ”;

$output .= ‘

  • term_ids).'” title=”visualizza articoli della categoria ‘.$result->name.'”>’.$result->name.’
  • ‘;

    }

    return $output;
    }
    [/code]

    ciuaz

    4 replies on “Visualizzare le categorie “figlie” in WordPress”

    ciao non ho caito bene in pratica questo script non mostra la lista delle categorie per esteso? io cercavo qualcosa che mi comprimesse le categorie per poi espandere e mostrare le sottoc categorie in modo tale da creare un menu..non so semi son spiegato..un saluto..sarei felicissimo se mi dai una dritta..

    Comments are closed.