仅在有变量时显示部分主题

showing part of theme only if has variable

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

这是我的代码,在我给它变量之前我需要隐藏它:

<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:有些注意我可以通过编辑插件删除它(没问题)但问题是显示那个框,我只想要有变量显示框+幻灯片如果不显示任何东西.

您可以将要显示/隐藏的部分包裹在 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