【问题标题】:Joomla Template OverridesJoomla 模板覆盖
【发布时间】:2009-08-11 23:47:02
【问题描述】:

在 joomla 中,我需要为“用户编辑”(用户编辑他们的详细信息)分配专门设计的模板

/index.php?option=com_user&view=user&task=edit

和“搜索结果”

我一生都无法弄清楚 Joomla 现在是如何选择模板的。当然,ItemID 并不明显,模板覆盖也没有提供任何线索。

目前搜索默认为网站“主页”模板,用户编辑为“默认”模板。

我认为这无关紧要,但我们正在使用 jfusion。

谁能指点我的写作方向

谢谢 斯蒂芬

【问题讨论】:

    标签: templates joomla joomla1.5


    【解决方案1】:

    Joomla 中的模板被分配到 Extensions > Template manager 下的不同页面(通过菜单项)。默认模板(带有星号)分配给所有其他未分配的页面。对于其他模板,单击名称并选择要将其分配到的页面。

    如果您没有将菜单项分配给您提到的页面,您可以创建一个名为“隐藏菜单”的新菜单,在其中创建菜单项,然后链接到这些菜单。

    不过,我认为您混淆了术语。 “模板覆盖”是驻留在每个模板中覆盖默认 content 输出的文件。每个模板只有一组 - 如果您想要多个模板覆盖,您需要多个模板。

    【讨论】:

    • 感谢您花时间回答。不幸的是,这对我不起作用我已经尝试将模板分配给搜索菜单选项,但是当从模块显示搜索结果时它没有被拾取。就模板覆盖而言,您对它们的含义是正确的,但是我对它们的引用是关于模块是否显示了使用的 itemid。不幸的是,他们没有。因此,我希望使用默认模板,但是我的结果输出的 ItemID 为 1,因此正在显示主页。谢谢斯蒂芬
    • 嗯...我不确定问题可能是什么。如果您还没有,请尝试将菜单项分配给搜索结果或搜索页面。模板应该从父/节继承。
    【解决方案2】:

    模板覆盖游乐设施存储在模板文件夹中。 因此,如果您使用的是名为“beez”的模板(库存标准) 模板覆盖在: 模板/beez/html/

    然后将它们存储在模块或组件名称下。例如,com_content 的文章布局存储在: 模板/beez/html/com_content/article/default.php 该模板通常称为 default.php,但每个组件和模块都可以有一些额外的模板供他们使用以及 deafult.php

    现在您要求在编辑时更改 com_user 的“用户”视图

    我认为该位置是: 模板/beez/html/com_user/user/form.php

    如果您想找到在这种情况下要被覆盖的原始模板:模板将位于: /components/com_user/views/user/tmpl/form.php

    一般来说 模板/模板名称/组件名称/视图名称/模板文件名.php

    【讨论】:

      【解决方案3】:

      让我们试试 ::

      /index.php?option=com_user&view=user&task=edit&template=template-name

      参数模板来自/includes/application.php:311

      // 允许覆盖活动

      来自请求的模板 $template = JRequest::getCmd('template', $模板);

      希望它会起作用:-)

      【讨论】:

        猜你喜欢
        • 2014-11-27
        • 2012-12-23
        • 2012-06-14
        • 2014-01-28
        • 2014-12-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-05-10
        相关资源
        最近更新 更多