【问题标题】:Creating multiple Wordpress category divs创建多个 Wordpress 类别 div
【发布时间】:2015-08-11 16:37:02
【问题描述】:

我有一个使用图像替换类别文本的 Wordpress 网站。它被设置为有一个后 div(填充:20% 0;为了一致的响应高度)然后有一个绝对定位的 div,垂直/水平居中在这个 div 上方。

html

<div class="indx-img" style="background-image:url('...');">

        <?php 
        $testStyle = "";

        if(has_category( 'update' ) || has_category( 'uncategorized' )) {
            $testStyle = "style=\"background-image:url('".get_bloginfo('template_directory')."/img/logo.png')\"";
        } elseif(has_category( 'event' )) {
            $testStyle = "style=\"background-image:url('".get_bloginfo('template_directory')."/img/logo.png')\"";
        }
        ?>

            <div class="test" <?php echo $testStyle; ?>></div>

</div>

CSS

.indx-img {
  position: relative;
  padding: 20% 0;
}

.test {
   position: absolute;
   left: 50%;
   margin-left: -5em;
   transform: translateY(-50%);
   -webkit-transform: translateY(-50%);
   -ms-transform: translateY(-50%);
  height: 10em;
  width: 10em;
}

这是一张用于测试的背景图片。这样做的问题是,如果帖子上有多个类别,则只会显示一个。

理想情况下,我希望在“测试”中为每个应用到帖子的类别创建一个 div,类别图像彼此相邻对齐。

【问题讨论】:

  • 一个问题:为什么ifelseif中的陈述相同?如果这就是他们应该的样子,那么我认为使用if-elseif 毫无意义。一个if 就足够了。
  • 他们会改变,现在他们是这样的,只是为了确保它有效,最后会有超过2个语句,每个会有不同的图片

标签: php jquery html css wordpress


【解决方案1】:

根据您的代码,我猜您的 HTML div 代码正在为单个帖子运行。当您使用 has_category 检查单个类别时,它只会为您提供类别。

要获取任何帖子的所有类别,您需要wp_get_post_categories 函数。

$post_categories = wp_get_post_categories( $post_id );
$cats = array();

foreach($post_categories as $c){
    $cat = get_category( $c );
    $cats[] = array( 'name' => $cat->name, 'slug' => $cat->slug );
}

通过这种方式,您可以获得类别列表并可以相应地放置应用样式代码。有关wp_get_post_categories 用法的更多详细信息,请参阅https://codex.wordpress.org/Function_Reference/wp_get_post_categories

【讨论】:

  • 甜蜜,这似乎是正确的轨道,是否有任何其他来源提供您遇到的示例来进一步解释它?
  • codex.wordpress.org 这本身就是 wordpress 社区,您可以通过参数和用法获取所有函数的详细信息,而不是每个函数的原始定义,您可以随时根据您的要求将其与代码一起使用,并且由于都有不同的要求,因此您很难获得所需的确切代码
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-19
相关资源
最近更新 更多