PHP警告中的错误在哪里:为第3行中的Foreach()提供的参数无效

时间:2019-08-06 作者:abdullahsk
**strong text**/****post-tag****/
function asr_tags() { 
$asrtags =  get_the_tags( get_the_ID());
foreach($asrtags as $tag){$string .= \'<span class="post-tag"><a class="p-tag" href="\'. get_tag_link($tag->term_id) .\'">\'. $tag->name . \'</a></span>\' . "\\n";
} 
return $string;
} 
add_shortcode(\'asrtags\' , \'asr_tags\' );

/*****post-tag*****/

1 个回复
SO网友:Pat J

get_the_tags() 返回数组或false 发生故障时。(它似乎还可以返回WP_Error 特定情况下的对象。)

它也requires 一个参数:post ID。您没有传递它,因此无法获得代码所需的数组。

Edit

你不能打电话get_the_tags() -- 这只会让你得到false. 你need 提供职位ID。

这可能会起作用:替换

$asrtags =  get_the_tags();
使用

$asrtags =  get_the_tags( get_the_ID() );
。。。但请注意,只有当您处于循环中时,这才会起作用。