List active taxonomy terms

时间:2015-10-22 作者:hambos22

我正在调整一个具有可过滤砌体布局的模板。我做了一个taxonomy-categories.php 对于过滤,我需要活动分类法的术语。我使用的模板中有以下代码

<ul id="filter">
                <li><a href="#" class="current" data-filter="*" title="">*</a></li>
                <?php
                $categories = get_terms(\'categories\');
                foreach( (array)$categories as $categorie){
                    $cat_name = $categorie->name;
                    $cat_slug = $categorie->slug;
                ?>
                <li><a href="#" data-filter=".<?php echo esc_attr($cat_slug); ?>"><?php echo esc_attr($cat_name); ?></a></li>
                <?php } ?>
            </ul>
正如您所见,它采用了整个分类法中的所有术语。我希望它只接受活动的分类法子项。

所以,如果我在URL示例中。com/portfolio/name\\u of\\u cat\\u one我想列出该类别的子级。

我知道我可以用get_term_by 为了达到我的目标,我做了一些调整,但在尝试了几个小时后,没有成功,我在这里问:)

1 个回复
SO网友:hambos22

Well I did it..

        <ul id="filter">
                <li><a href="#" class="current" data-filter="*" title="">*</a></li>
                <?php $term = get_term_by( \'slug\', get_query_var( \'term\' ), get_query_var( \'taxonomy\' ) ); ?>
                <?php
                $term_id = $term->term_id;
                $taxonomy_name = \'categories\';
                $termchildren = get_term_children( $term_id, $taxonomy_name );

                foreach ( $termchildren as $child ) {
                    $term = get_term_by( \'id\', $child, $taxonomy_name );
                    echo \'<li><a href="#" data-filter=".\' . $term->slug . \'">\' . $term->name . \'</a></li>\';
                }
                ?>

            </ul>

相关推荐

Increase offset while looping

我正在编写一个自定义帖子插件,它将自定义帖子分组显示为选项卡。每组4个岗位。是否可以编写一个偏移量随每次循环而增加的查询?因此,结果将是:-第一个查询显示从1到4的帖子-第二个查询显示从5到8的帖子-第三个查询显示从9到12的帖子等。 <div class=\"official-matters-tabs\"> <?php $args = array(\'post_type\' => \'official-matters\', \'showp