2011-05-21 34 views
1

謝謝大家一個偉大的網站。我學到很多東西。我試圖讓我的子類別的兄弟姐妹顯示單個帖子被點擊時。我已經使用wordpress菜單設置了我的父類別。我正在使用一個php小部件來調用單獨菜單中的子項(然後使用CSS創建樣式)。我正在使用的代碼顯示每個類別被點擊時的特定(相關)子代;但是,我無法弄清楚如何使它們在查看帖子時出現。wordpress - 查看單個帖子時顯示子類別的兄弟姐妹

<?php 

如果(is_category()){

$breakpoint = 0; 
$thiscat = get_term(get_query_var('cat') , 'category'); 
$subcategories = get_terms('category' , 'parent='.get_query_var('cat')); 

if(empty($subcategories) && $thiscat->parent != 0) { 
    $subcategories = get_terms('category' , 'parent='.$thiscat->parent.''); 
} 

$items=''; 
if(!empty($subcategories)) { 
    foreach($subcategories as $subcat) { 
     if($thiscat->term_id == $subcat->term_id) $current = ' current-cat'; else $current = ''; 
     $items .= ' 
     <li class="cat-item cat-item-'.$subcat->term_id.$current.'"> 
      <a href="'.get_category_link($subcat->term_id).'" title="'.$subcat->description.'">'.$subcat->name.'</a> 
     </li>'; 
    } 
    echo "<ul>$items</ul>"; 
} 
unset($subcategories,$subcat,$thiscat,$items); 

} ?>

我試圖模仿這種menu的行爲在先鋒woman.com

任何幫助或更好的解決方案,將不勝感激。 謝謝,

回答

0

此列出了當前職位的類別的所有子類:

<?php 
    echo '<ul>'; 
    $post_child_cat = array(); 
    foreach((get_the_category()) as $cat) { 
     $args = array('child_of' => $cat->cat_ID); 
     $categories = get_categories($args); 
     if($categories) foreach($categories as $category) { 
      echo '<li class="cat-item cat-item-'.$category->term_id.'">'. 
      '<a title="'.$category->description.'" href="'; 
      echo bloginfo('url'); 
      echo '/category/'.$cat->slug.'/'.$category->slug.'">'. 
      $category->name.'</a></li>'; 
     } 
    } 
    echo '</ul>'; 
?> 
+0

謝謝你這麼多。這工作完美,正是我所需要的。 – nmfrazer 2011-05-23 16:04:22