You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress网站出现slug属性读取错误,新手求修复方法

解决WordPress页面“Attempt to read property 'slug' on array”报错

问题原因

  1. 参数拼写错误:代码中get_terms的参数taxonomoy是拼写错误,正确应为taxonomy。这个错误会导致get_terms无法正确获取分类术语,返回的$wpdmcategory_terms可能包含数组而非预期的WP_Term对象。
  2. 缺乏错误与类型检查:没有验证get_terms的返回结果,也未确认遍历元素是否为WP_Term对象,直接访问$t->slug就会触发报错。

修复代码

//include categories: multi select
$wpdmcategory_terms = get_terms(['taxonomy' => 'wpdmcategory']);
// 验证返回结果有效且为数组
if (!is_wp_error($wpdmcategory_terms) && is_array($wpdmcategory_terms)) {
    foreach($wpdmcategory_terms as $k => $t){
        // 确认当前元素是WP_Term对象再操作
        if ($t instanceof WP_Term) {
            $wpdmcategory_terms[$t->slug] = $t->name;
            unset($wpdmcategory_terms[$k]);
        }
    }
}

修复说明

  • 修正taxonomy参数的拼写错误,确保get_terms能正确查询wpdmcategory分类的术语。
  • 添加is_wp_error检查:get_terms在查询失败时会返回WP_Error对象,提前过滤避免后续错误。
  • 增加对象类型判断:只有当$t是WP_Term对象时才访问slug和name属性,彻底避免“读取数组属性”的警告。

内容的提问来源于stack exchange,提问作者Sollène Paloma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 01:17:12