2011-10-30 67 views
0
function hashtags(){ 
    $tags = get_the_tags($post->ID); 
    $count=0; 
    foreach ($tags as $tag){ 
    $count++; 
    if (1 == $count) { 
    return $tag->name . ', '; 
    } 
    if (2 == $count) { 
    return $tag->name . ', '; 
    } 
    if (3 == $count) { 
    return $tag->name; 
    } 
    } 
} 

我不知道php,我是noob,我做了這個函數來顯示帖子前3個標籤的名字,我想要這個返回:tag1,tag2,tag3。獲取帖子前3個標籤名稱的函數

該函數的工作原理,但只返回第一個標記,如果我把回聲沒有問題,但我不想回聲,任何想法?

回答

1

對不起,如果我誤解了,但我想你想要返回get_the_tags功能找到的名稱的逗號分隔列表?如果是的話這應該工作:

$tags = get_the_tags($post->ID); 
$names = array(); 
$count = 1; 
foreach ($tags as $tag) { 
    $names[] = $tag->name; 
    if ($count++ == 3) { 
    break; 
    } 
} 

return implode(', ', $names); 

該代碼遍歷標籤,將每個標籤名數組($names),最後通過implode()運行陣列生成逗號分隔的列表。

+0

它的作品,非常感謝你,你能限制結果3標籤? – John

+0

我不這麼認爲'get_the_tags',但你可以手動做,我已經更新了答案:-) – Clive

+0

再次感謝你,併爲我的可憐英語感到抱歉(noob用這種語言xD)。 – John