在特定类型的帖子的div中隐藏小工具

时间:2017-03-05 作者:Kenny Amaro

我有一个名为“product”的自定义帖子类型,只有当帖子类型为“product”时,我才想隐藏一个特定的小部件,我正在尝试这样的内容:

<?php function hidewidget() {
   $args = array(
   \'name\' => \'product\'
   );
   $output = \'objects\';
   $post_types = get_post_types( $args, $output );
   return $post_types; } 
   $widhide = hidewidget(); 
?>

   <?php 
      if ($widhide = \'product\') {
      } else { 
   ?>
    <div class="widgetclass"><?php dynamic_sidebar( \'filters\' ); ?></div>
   <?php } ?>
问题如下:此函数只返回名称,我无法对名称执行任何操作。

我需要调用一个函数,返回一个包含特定类型帖子的页面。

在wordpress中有可能吗?在woocommerce的产品详细信息页面上隐藏该div还有其他解决方案吗?

pd:I can\'t remove .widgetclass it needs to be there, 我尝试使用插件“widget display”来隐藏小部件,但.widgetclass div显然还在出现。

3 个回复
最合适的回答,由SO网友:rudtek 整理而成

您可以检查它是否是特定的post\\u类型。。

if (is_singular( \'product\' ) ) {
   //do nothing if it\'s a singular product page
}else{
  <div class="widgetclass"><?php dynamic_sidebar( \'filters\' ); ?></div>
{
确保实际的post类型只是“product”,并且没有命名空间。

SO网友:Christina

我会使用Widget Logic plugin 并在字段内使用条件:

! is_singular( \'product\' )
这将显示在除单个产品外的所有产品页面上。

enter image description here

SO网友:Dev

在调用小部件的代码中的函数名后添加一个条件。

if ( is_singular( \'product\' ) ) 
    return:
或者

if ( ! is_singular( \'product\' ) ) 
使用!不Logical operator 使用is_singular 条件标记

相关推荐

无法在模板函数.php中使用IS_HOME

我试图在标题中加载一个滑块,但只在主页上加载。如果有帮助的话,我正在使用Ultralight模板。我正在尝试(在template functions.php中)执行以下操作:<?php if ( is_page( \'home\' ) ) : ?> dynamic_sidebar( \'Homepage Widget\' ); <?php endif; ?> 但这行不通。现在,通过快速的google,我似乎需要将请