将模块添加到组件,但不是组件的每个页面

时间:2013-08-06 15:11:48

标签: joomla menu module components joomla1.5

我正在为一个大学项目制作一个joomla 1.5(当它开始2.5时没有出来:D)。我要做的是将模块分配给我的自定义组件,但不是每个页面。 我的组件的2个不同页面是显示每个产品的页面,但另一个页面需要id才能工作。为了将模块分配给一个页面我认为我需要将我的组件的每个页面分配给一个菜单项。 但我的问题是,我不知道如何分配显示特定产品的页面变量id以使其正常工作。

3 个答案:

答案 0 :(得分:0)

一种方法是使用CSS将模块设置为隐藏在该页面上。

转到views/view_name/tmpl/default.php并在顶部的代码中添加以下代码:

$doc = JFactory::getDocument();
$doc->addStyleDeclaration(" #element_id { display: none; } ");

您需要使用Firebug,Chrome开发工具或其他工具等工具检查模块,具体取决于您使用的浏览器,并将 element_id 更改为符合您需要的任何内容。

希望这有帮助

答案 1 :(得分:0)

我想,Joorthodox方式是从管理员页面中的模块管理器控制模块可用性,您可以在其中仅将其分配给某些页面/菜单项。 总结一下,为该页面创建一个菜单项类型,将其分配给一个菜单项,该菜单项又将成为该页面的模块控制开关。

另一种方法可以是直接控制joomla模块渲染器。可以在此处找到一个示例:joomla-is-there-a-module-render-plugin-event

答案 2 :(得分:0)

只需使用Advanced Module Manager并通过网址分配您的模块,而不仅仅是菜单链接,它可以隐藏并在同一组件的不同页面中显示模块