Back to ModuleHelper class

Method getModules

public static array
getModules
(mixed $position)
Get modules by position
Parameters
  • string $position The position of the module
Returns
  • array An array of module objects
Since
  • 1.5
Class: ModuleHelper
Project: Joomla

Method getModules - Source code

/**
 * Get modules by position
 *
 * @param   string  $position  The position of the module
 *
 * @return  array  An array of module objects
 *
 * @since   1.5
 */
public static function &getModules($position)
{
    $position = strtolower($position);
    $result = array();
    $input = Factory::getApplication()->input;
    $modules =& static::load();
    $total = \count($modules);
    for ($i = 0; $i < $total; $i++) {
        if ($modules[$i]->position === $position) {
            $result[] =& $modules[$i];
        }
    }
    // Prepend a dummy module for template preview if no module is published in the position
    if (empty($result) && $input->getBool('tp') && ComponentHelper::getParams('com_templates')->get('template_positions_display')) {
        $dummy = static::createDummyModule();
        $dummy->title = $position;
        $dummy->position = $position;
        $dummy->content = $position;
        $dummy->contentRendered = true;
        array_unshift($result, $dummy);
    }
    return $result;
}