如何在 WordPress 主題中顯示有限數量的標籤
最近,我們被問到如何在每篇文章後顯示有限數量的標籤。通常,你會使用 the_tags() 函數來顯示文章所屬的標籤鏈接。但是,該函數沒有參數來限制顯示的標籤數量。因此,如果你的文章有 12 個標籤,而主題只能顯示 5 個標籤,就可能會影響設計的美觀。很多人會選擇限制使用標籤,甚至不在模板中包含它們。但是,在這篇文章中,我們將展示如何在不限制每篇文章標籤數量的情況下限制顯示的標籤數量。
編輯:寫完這篇文章後,最棒的 Otto (@otto42) 在我的 Google+ 帳戶上回覆,告訴我有一種更簡單的方法來實現這個目標。
首先,打開主題的 functions.php 文件,並添加以下函數:
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 或其他你想添加這些文章標籤的位置(必須在文章循環內),然後粘貼以下代碼:
<?php the_tags() ?>
這確實比我原本想的簡單多了,我會在這篇文章中保留我之前的方法,以供有需要的人參考。
舊的複雜方法
你只需要將以下代碼粘貼到你的主題文件中(在文章循環內):
<?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; // 修改這個數字來調整顯示數量
}
}
?>
上面的代碼將在主題中顯示 6 個標籤。如果你想顯示更少或更多的標籤,只需調整 $count > 5
行的數字即可。記住,即使計數數字寫的是大於 5,我們實際上看到的是 6 個標籤。這是因為計數是從 0 開始的。所以,如果你只想顯示 4 個標籤,那麼數字應該設置為 3。
如果你想更改分隔符號,則需要修改第 9 行。當前的代碼將用逗號分隔。你也可以通過添加 div
、列表元素或其他你喜歡的方式來自定義樣式。