我在wordpress theme-functions.php文件中有这个过滤器类别功能:
function tie_categories_filter() {
if( tie_get_option( 'enable_filter' ) && tie_get_option( 'on_home' ) == 'grid' ):
$exc_home_cats = tie_get_option( 'exc_home_cats' );
if( $exc_home_cats )
$comma_cats_separated = @implode(",", $exc_home_cats );
$categories = get_categories('exclude='.$comma_cats_separated); ?>
<ul id="filters">
<li class="current all-items"><a href="#" data-filter="*"><?php _e( 'All' , 'tie' ) ?></a></li>
<li class="current all-items"><a href="#" data-filter=".cat_1">General</a></li>
<?php
foreach($categories as $category) { ?>
<li><a href="#" data-filter=".cat_<?php echo $category->term_id ?>"><?php echo $category->name ?></a></li>
<?php } ?>
</ul>
<?php
endif;
}
我添加了这一行:
<li class="current all-items"><a href="#" data-filter=".cat_1">General</a></li>
所以在网站上显示“ALL”过滤器,然后是“General”,然后我想显示其余的类别。
所以我需要从循环中排除“常规”类别。 我可以通过wordpress term_id = 1,
与她联系我怎么能在php中做到这一点?
谢谢。答案 0 :(得分:2)
最简单的选择是在循环中添加if
语句以检查term_id
是否为1.如果是,continue
循环。
<?php
foreach ($categories as $category) {
if ($category->term_id === 1) {
continue;
}
?>
<li><a href="#" data-filter=".cat_<?php echo $category->term_id ?>"><?php echo $category->name ?></a></li>
<?php
}
?>