Come visualizzare le categorie figlie della categoria genitore della categoria corrente?
5 set 2016, 04:27:00
Visualizzazioni: 23.7K
Voti: 2
Sto cercando di visualizzare un elenco di categorie in un widget di testo abilitato per PHP. Nelle pagine delle categorie figlie ho bisogno di ottenere l'ID della categoria genitore della categoria corrente e poi usarlo per restituire un elenco di tutte le categorie figlie di quella categoria, escludendo la categoria corrente.
Ho provato il seguente codice ma non funziona:
<?php if (is_category( )) {
$thiscat = get_category( get_query_var( 'cat' ) );
$catid = $thiscat->cat_ID;
$parent = $catid->category_parent;
$catlist = get_categories(
array(
'child_of' => $parent, // categorie figlie di
'orderby' => 'id', // ordina per id
'order' => 'DESC', // ordine discendente
'exclude' => $catid, // escludi categoria corrente
'hide_empty' => '0' // mostra anche categorie vuote
) );
} ?>
Questo visualizza sia le categorie genitore che le categorie figlie.

jrcollins
571
Tutte le risposte alla domanda
2
0
Ora mi rendo conto che c'è un modo più semplice per fare questo:
<?php if (is_category( )) {
$thiscat = get_category( get_query_var( 'cat' ) );
$catid = $thiscat->cat_ID;
$parent = $thiscat->category_parent;
if (!empty ($parent) ) {
//pagine delle categorie figlie
$catlist = get_categories(
array(
'child_of' => $parent,
'orderby' => 'id',
'order' => 'DESC',
'exclude' => $catid,
'hide_empty' => '0'
) );
}
} ?>

jrcollins
571
5 set 2016 11:08:30
0
Sembra funzionare:
<?php if (is_category( )) {
$thiscat = get_category( get_query_var( 'cat' ) );
$catid = $thiscat->cat_ID;
//crea un array da get_category_parents
$parent_list = (explode (',',get_category_parents($catid,false,',')));
$parent_name = ($parent_list[0]);
$parent = get_cat_ID( $parent_name );
$catlist = get_categories(
array(
'child_of' => $parent,
'orderby' => 'id',
'order' => 'DESC',
'exclude' => $catid,
'hide_empty' => '0'
) );
//verifica se la categoria corrente è una categoria genitore
if ( $catid == $parent ) {
echo '<span>questa è una pagina di categoria genitore</span>';
}
else {
echo '<span>questa è una pagina di categoria figlia</span>';
}
}
?>

jrcollins
571
5 set 2016 06:55:40
Domande correlate
3
risposte
1
risposte