显示具有完整详细信息的类

时间:2016-06-29 01:39:21

标签: php wordpress categories

我需要在我的wordpress上显示类别,该类别具有父级并且在其下具有子类别。主要问题是,无法显示所有类别,其中包含描述的完整详细信息以及图像上唯一的div

我现在正在使用的是这个。 此方法的字符串参数的引用是here

<ul>
    <?php wp_list_categories( array(
        'title_li' => __( 'asd' ),
            'hide_title_if_empty' => false,
        'show_option_all' => false,
            'use_desc_for_title' => true,
            'child_of' => 2
    ) ); ?>
</ul>

它会生成我需要的所有内容,除了我需要将描述显示为标题下方的文本并创建div以在其上放置图像。

<ul>
<li class="categories">asd
   <ul>
      <li class="cat-item cat-item-10"><a href="http://www.play.com/play/category/good/">good</a>
      </li>
      <li class="cat-item cat-item-6"><a href="http://www.play.com/play/category/collections/">collections</a>
      </li>
   </ul>
</li>
</ul>

我的第二个选择就是这个。基本上它是一种自定义类别列表的自定义方式,但不太确定我是否能够仅显示父页类别的页面ID 2的子项下的类别。并隐藏显示我在一个类别上有多少帖子的元素。

<?php
$categories = get_categories();
foreach ($categories as $cat) {
    if ($cat->category_parent != 0) {
        echo '<span style="padding-left:10px;">';
    }
    echo '<a href="'.get_option('home').get_option('category_base').'/'.$cat->category_nicename.'/">'.$cat->cat_name.'</a> ('.$cat->category_count.')';
    if ($cat->category_description != '') {
        echo ' - '.$cat->category_description;
    }
    if ($cat->category_parent != 0) {
        echo '</span>';
    }
    echo '<br />';
}
?>

我所做的是使用第二个选项,但我在显示特定类别ID时遇到问题。下面的代码显示所有类别,但我只需要在特定父级下显示类别。这是猫id 2。

<?php
$categories = get_categories();
    echo '<ul>';
foreach ($categories as $cat) {
    if ($cat->category_parent != 0) {
        echo '<li>';
    }
    echo '<a href="'.get_option('home').get_option('category_base').'/'.$cat->category_nicename.'/">'.$cat->cat_name.'</a>';
    if ($cat->category_description != '') {
        echo '<p>'.$cat->category_description.'</p>';
    }
    if ($cat->category_parent != 0) {
        echo '</li>';
    }
}
    echo '</ul>';
?>

更正了一些循环并优化了abit

<?php
    $categories = get_categories();
    echo '<ul>';
        foreach ($categories as $cat) {
            if ($cat->category_parent != 0) {
                echo '<li>';
                echo '<a href="'.get_option('home').get_option('category_base').'/'.$cat->category_nicename.'/">'.$cat->cat_name.'</a>';
                    if ($cat->category_description != '') {
                        echo '<p>'.$cat->category_description.'</p>';
                    }
                echo '</li>';
            }
        }
    echo '</ul>';
?>

0 个答案:

没有答案