可捕获的致命错误:无法将类WP_TERM的对象转换为字符串

时间:2017-02-19 作者:Ogala

我试图在Wordpress网站上显示某些类别时出错。这是错误消息:

可捕获的致命错误:类WP\\u Term的对象无法转换为字符串。。。public\\u html/wp includes/class wp查询。php在线780

第780行:

$qv[\'cat\'] = preg_replace( \'|[^0-9,-]|\', \'\', $qv[\'cat\'] );
只有没有特殊存档模板的父类别才会发生此错误。有人知道我做错了什么吗?

1 个回复
SO网友:hawbsl

你的问题不是…的780行/wp包括/类wp查询。php

因此,很难提供帮助,因为您没有显示出出现故障的实际代码。

但您可能试图通过其数据对象引用帖子类别,而不是使用整数id。

例如,您可能有以下内容:

$mycategory=get_category_by_slug(\'a-category-slug\');
$args = array( \'posts_per_page\' => -1, \'category\' => $mycategory);
$myposts = get_posts( $args );
但是$mycategory 是对象,而不是整数值。

您需要添加->term_id 要获取其整数值,请执行以下操作:

$mycategory=get_category_by_slug(\'a-category-slug\');
$args = array( \'posts_per_page\' => -1, \'category\' => $mycategory->term_id);
$myposts = get_posts( $args );