Wordpress: добавление селекторов классов в the_tags ();выход - PullRequest
7 голосов
/ 23 июля 2010

Как мне получить the_tags () для вывода каждого тега, чтобы он назначался с уникальным селектором класса?Так, например: the_tags () в настоящее время выводит что-то вроде этого:

<a href="http://myblog.com/tag/kittens" rel="tag">kittens</a>

Однако я хотел бы вывести что-то вроде этого:

<a href="http://myblog.com/tag/kittens" rel="tag" class="tag-kittens">kittens</a>

Возможно ли это сделать?Если так, то как?Спасибо!

Ответы [ 4 ]

13 голосов
/ 23 июля 2010

Сработало, спасибо! Вот что я сделал:

<?php
$post_tags = get_the_tags();
if ($post_tags) {
  foreach($post_tags as $tag) {
    echo '<a href="'; echo bloginfo();
    echo '/?tag=' . $tag->slug . '" class="' . $tag->slug . '">' . $tag->name . '</a>';
  }
}
?>
4 голосов
/ 09 ноября 2014

Также вы можете перегрузить работу функции get_the_tags();.Просто добавьте следующий код в ваш functions.php файл темы:

// add custom class to tag
function add_class_the_tags($html){
    $postid = get_the_ID();
    $html = str_replace('<a','<a class="class-name"',$html);
    return $html;
}
add_filter('the_tags','add_class_the_tags');
3 голосов
/ 24 февраля 2016

этот код с www.lawturn.com

/* SlSlib tags add class */
<?php if(has_tag()) : ?>

    <?php
    $tags = get_the_tags(get_the_ID());
      foreach($tags as $tag){
        echo '<a href="'.get_tag_link($tag->term_id).'" rel="tag" class="tag-'.$tag->name.'">'.$tag->name.'</a>';
    } ?>

<?php endif; ?>
1 голос
/ 23 июля 2010

Вместо этого используйте get_the_tags , выполните цикл for и создайте собственную разметку.

...