PHP注意:尝试使用get_term_meta获取非对象的属性
我在WordPress主题中收到一条通知“试图获取非对象的属性” 第5行,注意显示了以下代码,但似乎一切正常:PHP注意:尝试使用get_term_meta获取非对象的属性,php,wordpress,term,Php,Wordpress,Term,我在WordPress主题中收到一条通知“试图获取非对象的属性” 第5行,注意显示了以下代码,但似乎一切正常: $age = get_term_meta($term->term_id,'age',true); 输出: if( ! empty($age)) { echo '<p>'.__('Age','framework').': <span>'.$age.'</span></p>'; } if(!empty($age)){ 回音“”。__
$age = get_term_meta($term->term_id,'age',true);
输出:
if( ! empty($age)) {
echo '<p>'.__('Age','framework').': <span>'.$age.'</span></p>';
}
if(!empty($age)){
回音“”。__('Age','framework'):“.$Age.””;
}
我做错了什么?如何删除此通知?
谢谢。这句话似乎是在暗示:
$age = get_term_meta($term->term_id,'age',true);
您需要首先检查是否设置了$term->term\u id:
if( isset($term->term_id) ){
$age = get_term_meta($term->term_id,'age',true);
}
还要记住,此通知可能不会显示在prod服务器中。$term->term\u id是问题所在。几率为
$term
为null
。检查$term
的内容。可能在$term
对象中不存在term\u id
。其$term=get\u term\u by('slug',get\u query\u var('term'),get\u query\u var('taxonomy')代码>谢谢Agustin,但问题是另一件事。变量在一个侧栏中,在页面模板中也可见,我刚刚在if(is_tax('my_tax')){
中获得了变量,一切都很好,谢谢你的回答,我也更改了!按你的建议用isset清空,现在更好了。