>백엔드 개발 >PHP 튜토리얼 >一段显示全部分类的php代码 想改成显示特定的分类 求帮改下 谢了

一段显示全部分类的php代码 想改成显示特定的分类 求帮改下 谢了

WBOY
WBOY원래의
2016-06-23 14:19:19937검색

add_filter( 'get_terms', 'get_subcategory_terms', 10, 3 );
function get_subcategory_terms( $terms, $taxonomies, $args ) {  
     $new_terms = array(); 
 if ( in_array( 'product_cat', $taxonomies ) && ! is_admin() && is_shop() ) {        
 foreach ( $terms as $key => $term ) {      
       
           $new_terms[] = $term;
            
}       
$terms = $new_terms;   
  }     
  return $terms; 

这段是现在的代码   我数据库里有一个表有一个字段是term_id  我已经把需要显示的分类的term_id存在了$duqu里面  我想问下  怎么把这个变量插到上面的代码里面可以只显示那些被选出来的term_id的分类呢 谢谢了


回复讨论(解决方案)

你给的代码根本找不到term_id与$duqu,怎么帮你改

一般想达到你的要求,传一个判断就可以了!

你给的代码根本找不到term_id与$duqu,怎么帮你改

一般想达到你的要求,传一个判断就可以了!

不好意思啊  有点忙  才回来看帖子
是这样的  那段代码是程序里自带的  我不太懂  后来那些term_id什么的 是我从数据库表里面自己导出来的  所以变量的名称设的可能不一样
我研究了一下  找到了一个解决方法  但是有一个地方弄不好麻烦你看下会不会 谢了

if ( ! in_array( $term->slug, array(  ) ) ){         
           $new_terms[] = $term;
      }

我用了这段程序实现让一部分分类不显示  比如说我不想显示slug值为A的分类 就写成array('A')就可以
但是我想不显示的有很多  
$shaixuankuwp_terms=mysql_query("SELECT * FROM `wp_terms` where term_id='".$duqu_term_id."'");
这段我筛选出了表里所有我想不显示的行
while ($duqushujukuwp_terms=mysql_fetch_array($shaixuankuwp_terms)){ $duqu_slug=$duqushujukuwp_terms[slug]; }
这段我一行一行读出了分类的slug
但是我不知道该怎么把$duqu_slug 这个全部放到上面的array()里面  貌似array()里面不能放数组 只能一条条放
码放帮忙看看怎么改啦  谢谢啦

while ($duqushujukuwp_terms=mysql_fetch_array($shaixuankuwp_terms)){ $duqu_slug[]=$duqushujukuwp_terms[slug]; }

$duqu_slug就是你不想显示的行的数组。

while ($duqushujukuwp_terms=mysql_fetch_array($shaixuankuwp_terms)){ $duqu_slug[]=$duqushujukuwp_terms[slug]; }

$duqu_slug就是你不想显示的行的数组。
谢谢啦  虽然已经解决了

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.