Counting modules in a given module position: Difference between revisions

From Joomla! Documentation

Chris Davenport (talk | contribs)
New page: ===== Counting Modules in a given Module position ===== The countModules function can be used within a template to determine the number of Modules enabled in a given Module position. Thi...
 
Cmb (talk | contribs)
Some markup changes.
 
(17 intermediate revisions by 6 users not shown)
Line 1: Line 1:
===== Counting Modules in a given Module position =====
<noinclude><languages /></noinclude>


The countModules function can be used within a template to determine the number of Modules enabled in a given Module position. This is commonly used to include Modules in a certain position only if at least one Module is enabled for that position. This prevents empty regions from being defined in the template output.
<translate><!--T:1-->
The ''countModules'' method can be used within a template to determine the number of modules enabled in a given module position. This is commonly used to include HTML around modules in a certain position only if at least one module is enabled for that position. This prevents empty regions from being defined in the template output and is a technique sometimes referred to as "collapsing columns".
</translate>


For example, the following code includes Modules in the 'user1' position only if at least one Module is enabled for that position.
<translate><!--T:2-->
For example, the following code includes modules in the ''user1'' position only if one or more modules are enabled for that position.
</translate>


<source lang="php">
<syntaxhighlight lang="php">
<?php if ($this->countModules( 'user1' )) : ?>
<?php if ($this->countModules( 'user1' )) : ?>
 
  <div class="user1">
<jdoc:include type="modules" name="user1" style="rounded" />
    <jdoc:include type="modules" name="user1" style="rounded" />
 
  </div>
<?php endif; ?>
<?php endif; ?>
</source>
</syntaxhighlight>


<noinclude>[[Category:Intermediate]]</noinclude>
<noinclude>
<noinclude>[[Category:Templates]]</noinclude>
<translate><!--T:3-->
<noinclude>[[Category:Topics]]</noinclude>
[[Category:Intermediate]]
[[Category:Templates]]
[[Category:Topics]]
[[Category:Tutorials]]
[[Category:Template Development]]
</translate>
</noinclude>

Latest revision as of 16:27, 10 October 2022

The countModules method can be used within a template to determine the number of modules enabled in a given module position. This is commonly used to include HTML around modules in a certain position only if at least one module is enabled for that position. This prevents empty regions from being defined in the template output and is a technique sometimes referred to as "collapsing columns".

For example, the following code includes modules in the user1 position only if one or more modules are enabled for that position.

<?php if ($this->countModules( 'user1' )) : ?>
  <div class="user1">
    <jdoc:include type="modules" name="user1" style="rounded" />
  </div>
<?php endif; ?>