0

我有一个这样的 CSS 类:

.divTourCategorySummaryBoxLeft, .divTourCategorySummaryBoxRight {
    width: 98%;
    min-height: 350px;
    border: 1px dashed #9CAAC6;
    padding: 2px;
    margin-bottom:3px;
    background: #DEE7EF;
    color: #000063;
    line-height: 1.4em;
    display:block;
    overflow:auto;

}

然后我在 index.php 中包含这样的模块:

<div class="divTourCategorySummaryBoxRight">
    <jdoc:include type="modules" name="modTourCategorySummaryRight" />
</div>

这看起来很完美。但是,我需要在同一页面上有多个模块。因此,当我添加另一个模块时,它会出现在同一个 div 中。这不是我想要的方式。对于每个模块,必须有一个单独的 div。并且模块的数量是未知的。

所以我尝试了这个:

<jdoc:include type="modules" name="modTourCategorySummaryLeft" style="divTourCategorySummaryBoxLeft" />

但是样式在这里失败了。我如何让它为每个模块显示一组新的 div?

请指教。

这是我自己查看 joomla 文档从头开始构建的模板。我对此很陌生。谢谢!

4

1 回答 1

2

您需要创建一个新的module chrome. 在您的模板 html 文件夹中,创建名为modules.php.

在里面,做一个这样的函数

defined('_JEXEC') or die;

function modChrome_customstyle($module, &$params, &$attribs)
{
    if (!empty ($module->content)) : ?>
            <div class="divTourCategorySummaryBoxRight">
                 <div class="moduletable">
                      <?php if ($module->showtitle != 0) : ?>
                           <h3><?php echo $module->title; ?></h3>
                      <?php endif; ?>
                      <?php echo $module->content; ?>
                 </div>
            </div>
    <?php endif;
}

这样您就可以创建自定义模块输出。

然后,在您的模板文件中,包含这样的模块:

     <jdoc:include type="modules" name="modTourCategorySummaryLeft" style="customstyle" />

添加style="customstyle"新功能后,将用于渲染模块。默认样式是xhtml,你可以templates/system/html在 modules.php 文件的文件夹中找到它的代码

于 2013-04-11T13:17:01.283 回答