有没有可能在作者的帖子数量周围加一个span标记,这样我就可以对括号内的数据应用一些css样式,以便在站点地图中使用?
在搜索过程中,我找到了以下针对档案和类别的解决方案:
//archives
function my_get_archives_link($links) {
$links = str_replace(\'</a> (\', \'</a> <span>(\', $links);
$links = str_replace(\')\', \')</span>\', $links);
return $links;
}
add_filter(\'get_archives_link\', \'my_get_archives_link\');
//categories
function my_wp_list_categories($links) {
$links = str_replace(\'</a> (\', \'</a> <span>(\', $links);
$links = str_replace(\')\', \')</span>\', $links);
return $links;
}
add_filter(\'wp_list_categories\', \'my_wp_list_categories\');
这两种方法在档案和分类方面都很有效,我希望作者的帖子数量也会有类似的结果。
html当前如下所示:
<li><a href="http://domain.com/author/user123/" title="Posts by user123">user123</a> (8)</li>
我希望它是这样的:
<li><a href="http://domain.com/author/user123/" title="Posts by user123">user123</a> <span>(8)</span></li>
有什么想法吗?
提前谢谢。
最合适的回答,由SO网友:Howdy_McGee 整理而成
看来不是这样的wp_list_authors()
提供一个适当的钩子来修改任何不幸的内容。下一个最好的方法是只做字符串替换,并期待最好的结果:/
$start_wrapper = \'<span class="author-post-count">\'; // Set our wrapper start tag
$end_wrapper = \'</span>\'; // Set our wrapper end tag
$author_html = wp_list_authors( array( // Get Author HTML
\'optioncount\' => true,
\'echo\' => false, // Ensure we return and do not echo ( default is TRUE )
) );
$author_html = str_replace( \'</a> (\', "</a> {$start_wrapper}(", $author_html );
$author_html = str_replace( \'</li>\', "{$end_wrapper}</li>", $author_html );
echo $author_html;
以上内容将尝试替换锚定标记HTML,以便您有一个合适的包装器。此时您可以回显或附加
$author_html
你认为合适的地方。