我得到了下面的错误...
警告: implode() function.implode:在第1335行传递了无效的参数\wp-content/themes/mytheme/functions.php
在...
function my_get_tags_sitemap(){
if ( !function_exists('wp_tag_cloud') || get_option('cb2_noposttags')) return;
$unlinkTags = get_option('cb2_unlinkTags');
echo '<div class="tags"><h2>Tags</h2>';
if($unlinkTags)
{
$tags = get_tags();
foreach ($tags as $tag){
$ret[]= $tag->name;
}
//ERROR OCCURS HERE
echo implode(', ', $ret);
}
else
{
wp_tag_cloud('separator=, &smallest=11&largest=11');
}
echo '</div>';
}有没有办法截取错误。该站点只有一个标记。
发布于 2011-03-12 09:28:59
您会收到错误,因为$ret不是一个数组。
为了消除这个错误,在函数的开头,用下面一行代码定义它:$ret = array();
看起来get_tags()调用没有返回任何东西,所以foreach没有运行,这意味着没有定义$ret。
发布于 2014-01-26 15:44:14
你可以试试
echo implode(', ', (array)$ret);发布于 2011-03-12 09:29:14
当还没有定义$ret时,就会发生这种情况。解决方案很简单。在$tags = get_tags();的正上方,添加以下行:
$ret = array();https://stackoverflow.com/questions/5280180
复制相似问题