在替代布局中加载 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; ?>
我为博客文章视图创建了另一种布局。如果模块已发布,我想在此布局中加载一个模块,就像我在 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; ?>