仅当有变量时才显示主题的一部分

时间:2015-02-21 20:08:11

标签: php html hide

如果没有变量,我需要知道如何隐藏模板的一部分

这是我的代码,我需要隐藏才能给它变量:

<div class="row">
   <!--forum-->
    <div class="col-sm-6">
    <div class="panel panel-success">
      <div class="panel-heading">
        <h3 class="panel-title">Latest forum topics</h3>
      </div>
      <div class="panel-body">
        <?php
      if(is_active_sidebar('forum')){
      dynamic_sidebar('forum');
      }
      ?>
      </div>
    </div>
    </div><!-- end of forum-->
  <!--slider-->
  <div class="col-sm-6">
  <div class="panel panel-info">
    <div class="panel-heading">
      <h3 class="panel-title">Popular posts</h3>
    </div>
    <div class="panel-body">
      Panel content
    </div>
  </div>
</div><!-- end of slider -->    
</div>

现在,例如forum部分就像我想要的那样但只有内容,我需要论坛框也是一样的。

你能告诉我怎么做吗? 完全我需要为其他部分学习这个东西我不想复制并粘贴代码,如果你能向我解释我会感激。

感谢 emmanuel 解决我的问题,

更新

现在我的代码的第二部分改为:

  <!--slider-->
  <?php if (function_exists('do_shortcode')): ?>
  <div class="col-sm-6 pull-right">
  <div class="panel panel-info">
    <div class="panel-heading">
      <h3 class="panel-title">Popular posts</h3>
    </div>
    <div class="panel-body">
      <?php echo do_shortcode('[cycloneslider id ="slider"]'); ?>
    </div>
  </div>
</div>
<?php endif; ?>
<!-- end of slider --> 

并且一切正常但问题是即使我的变量为空也会显示框和一些注释。

ps:有些说明我可以通过编辑插件删除它(没问题),但问题是显示该框,我只想要有变量显示框+幻灯片,如果不显示任何内容。

1 个答案:

答案 0 :(得分:0)

您可以将想要显示/隐藏的部分包裹在if ... endif条件中。

<?php if(is_active_sidebar('forum')) : ?>
<!--forum-->
    <div class="col-sm-6">
    <div class="panel panel-success">
      <div class="panel-heading">
        <h3 class="panel-title">Latest forum topics</h3>
      </div>
      <div class="panel-body">
      </div>
    </div>
    </div>
<!-- end of forum-->
<?php endif; ?>

参考:Alternative syntax for control structures