php - 为 foreach() 提供的参数无效..Wordpress

标签 php wordpress

以下代码突然开始出现此错误:

<?php foreach (get_the_terms(get_the_ID(), 'loan-club') as $cat) : ?>
<img src="<?php echo z_taxonomy_image_url($cat->term_id); ?>" title="ON LOAN AT: <?php echo $cat->name; ?>" />
<?php endforeach; ?> 

有时分类“贷款俱乐部”是空的。这可能是问题所在吗?如果是这样,有人可以指出我正确的代码吗?

最佳答案

foreach之前添加if条件:

<?php
$loan_club = get_the_terms(get_the_ID(), 'loan-club');

if(is_array($loan_club)) {
    foreach ($loan_club as $cat) {
      ?>
        <img src="<?php echo z_taxonomy_image_url($cat->term_id); ?>" title="ON LOAN AT: <?php echo $cat->name; ?>" />
      <?php
    } 
}
?>

查看文档中的 get_the_terms() 函数:https://developer.wordpress.org/reference/functions/get_the_terms/

该函数还可能返回 WP_Error 或 false。如果返回 WP_Error 或 false,这将导致错误并且 foreach 循环中断。

关于php - 为 foreach() 提供的参数无效..Wordpress,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40424307/

相关文章:

javascript - 我的 wordpress 图片没有在 firefox 上显示

php - 如何在WordPress中结合meta_query和orderby日期元?

jQuery 突出显示表格行

css - 如何创建具有相反 flex 底部的 div

css - 响应移动和显示 : none - Wordpress - Visual Composer

php - Doctrine 添加计算字段

php - 这些是什么 ASCII 字符?

php - PHP中如何处理不同的账户类型?

php - 如果表单输入与使用 Laravel 的身份验证接受的值不匹配,则阻止注册 (5.3)

php - Laravel Eloquent (PDO) : Check that Transaction is Active