0

我用 joomla 2.5 创建了我自己的基于引导程序的模板。我已经在一个栏内的一行中计划了两个可选模块(如果里面没有模块,则必须隐藏),但如果它们没有一起显示,我希望它们占据整行。我的代码很简单,而且效果很好,但是因为我讨厌编写不必要的行,所以我想知道是否有更优雅的方法来实现这个目标(或者我是否可以避免在 mycode 中进行一次或多次检查......)这是我的代码

<?php if(($this->countModules('position-16'))|| ($this->countModules('position-17'))): ?>
<div class="evo-showcase">
    <div class="container"> 
        <div class="row">
        <?php if($this->countModules('position-16')):?>
            <?php if($this->countModules('position-17')):?>
            <div  class="span6">
                <jdoc:include type="modules" name="position-16" style="none" />
            </div>
            <div  class="span6">
                <jdoc:include type="modules" name="position-17" style="none" />
            </div>
            <?php else :?>
            <div  class="span12">
                <jdoc:include type="modules" name="position-16" style="xhtml" />
            </div>
            <?php endif; ?>
        <?php else :?>
            <div  class="span12">
                <jdoc:include type="modules" name="position-17" style="xhtml" />
            </div>  
        <?php endif; ?>
        </div>      
    </div> 
</div>
4

2 回答 2

0
<?php
$spanClass=(($this->countModules('position-16')&&($this->countModules('position-17'))?6:12;
?>
<?php if($this->countModules('position-16')):?>
<div  class="span<?php echo $spanClass;?>">
 <jdoc:include type="modules" name="position-16" style="none" />
</div>
<?php endif; ?>

<?php if($this->countModules('position-17')):?>
<div  class="span<?php echo $spanClass;?>">
 <jdoc:include type="modules" name="position-17" style="none" />
</div>
<?php endif; ?>
于 2013-05-24T14:08:05.683 回答
0
<?php
$span = 0;
if($this->countModules('position-16') and $this->countModules('position-17')){
    $span = 6;
} else if ($this->countModules('position-16') or $this->countModules('position-17')) {
    $span = 12;
}
?>

<?php if($span > 0):?>
<div class="evo-showcase">
    <div class="container"> 
        <div class="row">

            <?php if($this->countModules('position-16')):?>
            <div class="span<?php echo $span;?>">
                <jdoc:include type="modules" name="position-16" style="none" />
            </div>
            <?php endif;?>

            <?php if($this->countModules('position-17')):?>
            <div class="span<?php echo $span;?>">
                <jdoc:include type="modules" name="position-17" style="none" />
            </div>
            <?php endif;?>

        </div>
    </div>
</div>
<?php endif;?>
于 2013-05-24T15:38:25.737 回答