3

在我的 wordpress 帖子中,我包含了使用 wordpress 功能的标签

<?php the_tags( $before, $sep, $after ); ?> 

我的实际CSS:

.postclass{
  margin:10px 0px 10px 0px;
  }

.posttag{
  font-size:10px;
  float:left;
  color:#212121;
  margin-right:15px;
  padding:5px;
  border-radius:2px;
  background:black;
}

在我的模板中:

<div class="postclass">
     <?php the_tags( '<p class="posttag">', ',', '</p>' ); ?>
</div>

这为我提供了相同黑色背景中的所有标签。如何获取每个带有黑色背景的标签文本,每个标签都用逗号分隔?

4

2 回答 2

5

遵循此处的示例:http: //codex.wordpress.org/Function_Reference/get_the_tag_list

<div class="postclass">
     <?php the_tags( '<p class="posttag">', '</p><p class="posttag">', '</p>' ); ?>
</div>

这会将所有标签单独包装在<p class="posttag">[link]</p>.

更接近你的 jsfiddle 的东西:

PHP

<?php the_tags( '<ul class="postclass"><li>', ',</li><li>', '</li></ul>' ); ?>

CSS

ul.postclass li {
    float: left;
}
ul.postclass li a {
    padding: 5px;
    background-color: black;
}

the_tags()无法像在<a>jsfiddle 中那样自定义-tag 本身。你只能把它包起来。为了实现这一点,您必须使用get_the_terms()它将返回您可以后处理的标签对象数组。

于 2012-12-25T19:45:56.397 回答
0

这应该有效:

  1. 在您的 WordPress post.php 中添加一个 div 类,后跟标签函数,如下所示:
<div class="postclass">
<?php echo esc_html__( '', 'posttag' ); ?>
</div>

如果您需要在每个标签之前添加“#”,请添加这个。

<div class="postclass">
<?php echo esc_html__( '', 'posttag' ); ?><?php the_tags( "#", "#" ); ?>
</div>
  1. 在你的 CSS 上:
.postclass{
  font-size:10px;
}
.postclass a{
  text-decoration: none;
  padding:5px 10px;
  font-size:10px;
  color:white;
  border-radius:3px;
  background:black;
}

工作示例:https
://koreanwave.org (桌面:悬停在图像底部)
(移动:悬停@USER-NAME)

于 2021-08-23T18:49:23.317 回答