Estou tentando criar um modelo de joomla. Também estou usando bootstrap v2.3.2. Quero fazer uma distribuição de design 3/12-6/12-3/12. Eu estou verificando se algum módulo está posicionado à esquerda e à direita colunas
$span = 12;
if ($this->countModules('right')) $span -= 3;
if ($this->countModules('left')) $span -= 3;
<?php if ($this->countModules('left')): ?>
<div id="sidebarleft" class="span3">
<jdoc:include type="modules" name="left" style="well" />
</div>
<?php endif; ?>
<div id="content" class="<?php echo $span; ?>">
<jdoc:include type="message" />
<jdoc:include type="component" />
</div>
<?php if ($this->countModules('right')) : ?>
<div id="sidebarright" class="span3">
<jdoc:include type="modules" name="right" style="none" />
</div>
<?php endif; ?>
Eu atribuí um mod_articles_category
módulo para a posição esquerda, mas está vazio. Portanto, o módulo não é mostrado. Mas o joomla acha que existe um módulo nessa posição e que ele deve diminuir o conteúdo.
Como posso usar o espaço se o módulo não for mostrado em uma página?
Se entendi bem, esse trecho deve ajudar (observe, não executei o código)
<?php
if ($this->countModules('left')) {
$modules = JModuleHelper::getModules('left');
$modulesContent = array();
foreach ($modules as $module) {
$content = JModuleHelper::renderModule($module, array('style' => 'well'));
if(!empty($content)) {
$modulesContent[] = $content;
}
}
}
?>
<?php if(!empty($modulesContent)) : ?>
<div id="sidebarleft" class="span3">
<?php foreach ($modulesContent as $content) : ?>
<?php echo $content; ?>
<?php endforeach; ?>
</div>
<?php endif; ?>