【问题标题】:Hide a DIV if the post type is in a custom taxonomy term如果帖子类型在自定义分类术语中,则隐藏 DIV
【发布时间】:2019-10-11 15:42:12
【问题描述】:

当我的帖子类型属于分类时,我需要隐藏一个 DIV。假设我已经获得了带有术语“是”和“否”的蛞蝓“mostrar”的分类法。

当帖子类型在分类术语“否”中时,我想隐藏一个 div。

我试过这个没有成功。

<?php if (!is_tax( 'mostrar', 'no' )) { ?>

    <div id="sidebar" class="col-sm-5">

    </div>
<?php } ?>

有什么想法吗?


我也在尝试,没有成功:

<?php if ( has_term( 'mostrar', 'si' ) ) { ?>
         Yes
<?php } elseif ( has_term( 'mostrar', 'no' ) ) { ?>
         No
<?php } ?>  

更新,工作代码是:

<?php if (has_term('si','mostrar')) { ?>
        <div id="sidebar" class="col-sm-5">

        </div>
<?php } ?>

【问题讨论】:

  • 我不确定您是否要在向服务器发出请求/发布后或用户当前正在编辑表单时显示/隐藏此 div。在后一种情况下,您可能需要使用 Javascript 而不是 PHP。
  • @probitaille,感谢您的回复。我有一个 DIV,当我的帖子使用“否”一词时,我需要隐藏它。
  • 你的第二个例子是倒退的,你把term放在第一位,然后是taxonomyhas_term( 'si', 'mostrar' ) 应该是这样。试试看。文档很清楚:developer.wordpress.org/reference/functions/has_term
  • 我投票关闭它,因为它是基于在 has_term() 函数中交换参数的错字

标签: wordpress custom-taxonomy


【解决方案1】:

使用has_term() 喜欢:

has_term('no')

所以你的代码可以写成

<?php if (!has_term('no')) { ?>

    <div id="sidebar" class="col-sm-5">

    </div>
<?php } ?>

我希望这对你有用。

【讨论】:

  • 这行不通。 has_term 不接受包含术语和分类的数组。 is_tax 也不适用于这种情况,因为它用于存档。
  • 恐怕它不起作用。 @disinfor 是对的 (has_term('si','mostrar')) 是正确的。
猜你喜欢
  • 2018-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-10
  • 2014-09-04
  • 2016-07-01
  • 1970-01-01
相关资源
最近更新 更多