获取错误以获取自定义分类术语

时间:2016-07-30 06:25:36

标签: php wordpress wordpress-theming custom-wordpress-pages

此处此代码用于获取wordpress自定义后分类术语和链接 -

<?php 
    $topic= get_the_terms(get_the_ID(), 'product_cat');
    foreach ($topic as $topics) {
       $topiclink = $topics->name;
       $link= get_term_link($topics, 'product_cat');
       echo '<a href="'.$link.'">'.$topiclink.'</a>';
    }
?>

但发现错误“警告:为......中的foreach()提供的参数无效”

2 个答案:

答案 0 :(得分:0)

好的(10秒解决方案),

 $topic= get_the_terms(get_the_ID(), 'product_cat');
 if( $topic ){
   foreach ($topic as $topics) {
       $topiclink = $topics->name;
       $link= get_term_link($topics, 'product_cat');
       echo '<a href="'.$link.'">'.$topiclink.'</a>';
    }
 }

下次阅读文档。

https://developer.wordpress.org/reference/functions/get_the_terms/

特别是这一点。

  

返回#Return

     

(array | false | WP_Error)成功时的术语对象数组,如果没有术语或帖子不存在则为false,失败时为WP_Error。

你不能在False上循环一个布尔值。这表明没有product_cat的条款。

答案 1 :(得分:0)

$ topic或$ topic有问题。

<?php
$topic= get_the_terms(get_the_ID(), 'product_cat');
 if( $topic ){
   foreach ($topic as $topics) {
       $topiclink = $topics->name;
       $link= get_term_link($topics, 'product_cat');
       echo '<a href="'.$link.'">'.$topiclink.'</a>';
    }
 }
?>