将<ul>插入子子菜单

时间:2013-05-04 作者:AndrettiMilas

当用户在子类别或单个帖子上时,此代码显示父类别的子类别列表。

即使没有生成列表,也会显示此列表周围的样式。采取行动look here where you\'ll see an empty black box - 我把它涂成黑色只是为了突出它。不相关,但此代码受another code in my functions.php.

当不存在子类别时,如何正确地将标记插入此代码并防止生成列表?

<?php
  $categories = get_the_category();
      echo \'<ul style="background:#000">\';
  foreach($categories as $category){
      $parent = $category->parent;
      if($category->parent == 0){
      }
      else{
          wp_list_categories("child_of=$parent&title_li");

      }
      echo \'\';
  }
  ?>

1 个回复
最合适的回答,由SO网友:s_ha_dum 整理而成

在创建列表之前,请检查是否确实有类别,并移动与<ul> 在条件内。

$categories = get_the_category();
if (!empty($categories)) {
  foreach($categories as $category){
    $parent = $category->parent;
    if($parent != 0){
      echo \'<ul style="background:#000">\';
        wp_list_categories("child_of={$parent}&title_li");
      echo \'</ul>\';
    }
  }
}
这将生成多个列表,而不仅仅是一个列表。

这是一个版本echo只有一个<ul>.

$categories = get_the_category();
$catli = \'\';
if (!empty($categories)) {
  foreach($categories as $category){
    $parent = $category->parent;
    if($category->parent != 0){
      $catli .= wp_list_categories("child_of=$parent&title_li&echo=0");
    }
  }
  if (!empty($catli)) {
    echo \'<ul style="background:#000">\'.$catli.\'</ul>\';
  }
}

结束

相关推荐

Sort categories by meta value

如何制作一个类别列表,每个类别中有4篇最后的帖子,其中每个类别都按meta\\u值排序。例如,不按meta\\u值排序的模板是http://pastebin.com/AeH6vx9b它仅显示父类别。几天来,我在搜索与类别相关的额外字段,但找不到可行的内容。This is my best search result. 这跟我有什么关系?我不明白。有可能做我想做的事吗?