Как вывести имя (без ссылки) определённого тега записи wordpress

Допустим запись имеет 3 метки: a, b и с. Как вывести все имена меток сразу известно, а как вывести имя первой идущей метки (a)? Думаю, по аналогии не трудно будет, если получится с первой, вывести имя метки идущей второй (b) и отдельно третьей (c).

emchast
Оцените автора
Добавить комментарий

  1. tiaurus

    Вставьте в functions.php:

    function first_post_tag_link()
    {
        if ( $posttags = get_the_tags() ) 
        {
            $tag = current( $posttags );
            printf(
                '<span itemprop="title">%2$s</span>',
                get_tag_link( $tag->term_id ),
                esc_html( $tag->name )
             );
        }
    }

    В single.php, в том месте, где нужно вывести первую метку, вставьте:

    <?php first_post_tag_link(); ?>
    Ответить
  2. emchast автор

    Спасибо, но можно всё-таки, как я уже писал, вывести метку без ссылки и если не трудно подскажите что нужно менять для вывода второй, третьей и т.д. меток.

    Ответить
    1. Sergey Biryukov
      $tags = array_values( get_the_tags() );
      
      // Название первой метки
      if ( ! empty( $tags[0] ) )
      	echo $tags[0]->name;
      
      // Название второй метки
      if ( ! empty( $tags[1] ) )
      	echo $tags[1]->name;
      
      // Название третьей метки
      if ( ! empty( $tags[2] ) )
      	echo $tags[2]->name;
      

      Если вы хотите просто вывести все метки по порядку, но без ссылок, можно оформить в виде цикла:

      $tags = get_the_tags();
      
      if ( $tags ) {
      	$tag_names = array();
      
      	foreach ( $tags as $tag ) {
      		$tag_names[] = $tag->name;
      	}
      
      	echo implode( ', ', $tag_names );
      }
      

      Если использовать функцию wp_list_pluck(), то код, равнозначный предыдущему фрагменту, умещается в одной строке:

      echo implode( ', ', wp_list_pluck( (array) get_the_tags(), 'name' ) );
      
      Ответить
  3. Evgeny

    Подскажите, пожалуйста, а как можно сделать наоборот, т.е. получить ссылку на метку поста без (не выводя) ее названия.

    Ответить