在替代布局中加载 Joomla 模块

Load Joomla module inside alternative layout

我为博客文章视图创建了另一种布局。如果模块已发布,我想在此布局中加载一个模块,就像我在 index.php 中所做的那样:

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

此代码在替代布局 .php 文件中不起作用。仅当模块已发布时,我应该如何修改代码以在该页面内显示模块?

你可以用这个

jimport( 'joomla.application.module.helper' );//call module helper class
$modules = JModuleHelper::getModules('main-slider');//call the module
foreach ($modules as $module){
   echo JModuleHelper::renderModule($module);//display it
}

这样解决了,例子:

<?php if($modules =& JModuleHelper::getModules('sidebar')) : ?>
    <div class="<?php echo $secclassr; ?>">
        <?php
            $modules =& JModuleHelper::getModules('sidebar');

            foreach ($modules as $module)
            {
                echo JModuleHelper::renderModule($module);
            }
        ?>
    </div>
<?php endif; ?>