Функция для получения первых 3 имен тегов в записи - PullRequest
0 голосов
/ 30 октября 2011
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.

Функция работает, но возвращает только первый тег, если я поставил echo без проблем, но я не хочу echo, есть идеи?

1 Ответ

1 голос
/ 30 октября 2011

Извините, если я неправильно понял, но я думаю, что вы пытаетесь вернуть разделенный запятыми список имен, найденных функцией 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()создать список через запятую.

...