最近,我们被问及如何在 WordPress 主题中的每篇文章后显示有限数量的标签。通常,您使用函数the_tags()来显示帖子所属标签的链接。但是该函数没有参数来限制显示的标签数量。因此,如果您的帖子有 12 个标签,而您的主题只有 5 个标签的空间,那么它的设计可能看起来不太好。很多人只是限制标签的使用,或者甚至不将其包含在模板中。但在本文中,我们将向您展示如何限制 WordPress 主题中帖子后的标签数量,而不限制添加到每个帖子的标签数量。
编辑:显然在写完这篇文章后,最棒的 Otto (@otto42) 在我的Google+ 帐户上回复,让我知道有一种更简单的方法可以完成此任务。
首先,您需要打开主题的functions.php文件并添加以下函数:
1234 | add_filter( 'term_links-post_tag' , 'limit_to_five_tags' ); function limit_to_five_tags( $terms ) { return array_slice ( $terms ,0,5,true); } |
由
您可以将 5 个数字更改为您想要的最大数量。
然后打开你的loop.php、single.php、index.php或任何你想添加这些post标签的地方(必须在post循环内),然后粘贴以下代码:
1 | <?php the_tags() ?> |
由
这绝对比我想出的要简单得多,我将在这篇文章中为那些关心的人留下这个想法。
老的复杂方法
您需要做的就是将以下代码粘贴到主题文件中(在后循环内):
12345678910111213 | <?php $posttags = get_the_tags(); $count =0; $sep = '' ; if ( $posttags ) { echo 'Tags: ' ; foreach ( $posttags as $tag ) { $count ++; echo $sep . '<a href="' .get_tag_link( $tag ->term_id). '">' . $tag ->name. '</a>' ; $sep = ', ' ; if ( $count > 5 ) break ; //change the number to adjust the count } } ?> |
由
上面的代码将在主题中显示 6 个标签。如果您想显示更少或更多标签,只需将 $count > 5 行调整为您想要的数字即可。请记住,即使计数数字大于 5,我们也会看到 6 个标签。这是因为计数从 0 开始。因此,如果您只想显示 4 个标签,则数字需要为 3。
如果你想改变分隔符,那么你需要改变第9行。当前代码将用逗号分隔。您还可以通过添加 div、列表元素或任何您喜欢的其他内容来自定义样式。