使用隐藏菜单
你是否曾经试图在文章中插入指向其他文章的链接,而不将其添加到你的主菜单中,但尝试显示与文章一起的模块却感到沮丧?能够显示模块的答案在于使用隐藏菜单(也称为不可见菜单)。
隐藏菜单
许多客户希望控制从另一篇文章的链接调用文章页面时应显示哪些模块。简单的回答:为此,你可以创建一个隐藏菜单,包含一个链接到文章的菜单项,将其称为“显示单个文章”。
这是一种简单的技术,它允许在分配的位置显示一个或多个模块,并像通常一样通过在隐藏菜单中创建一个菜单项来管理它们。它被称为隐藏菜单或不可见菜单,因为它在网站上的某个位置发布,但该位置并不显示(注意:另一种变体是不要创建一个菜单模块)。相同的技巧也用于创建着陆页。
为什么要有隐藏菜单或不可见菜单?
许多Joomla! 2.5或3.x的网站管理员安装并使用JCE或其他类似编辑器。例如,JCE提供了通过链接按钮轻松添加相关内容链接的功能。
当你想在文章文本中插入指向其他文章的链接或将文章链接到自定义HTML模块中时,你可以使用JCE的链接按钮,并选择内部链接(菜单、内容、文件)或外部链接(直接插入以http://开头的URL)。
问题是当你点击链接在网站上显示内容时,你想要显示的模块不会出现。要显示模块的解决方案是添加一个指向隐藏菜单的文章的菜单项。
如何创建一个隐藏菜单?
解决方案易于实现,只需创建一个名为“隐藏菜单”或“不可见菜单”的新菜单,该菜单永远不会显示。
在这个菜单中,你添加一个指向你想链接的文章的菜单项,然后使用这个相同的菜单项来控制与文章相关的模块的可见性。
为什么这会起作用?
当你在菜单系统中导航以到达一篇文章时,Joomla知道你点击了哪个菜单项来显示它,并且这个菜单项显示了一个组件(对于文章来说是com_content),它有一个视图类型(仅文章),文章的ID以及与文章一起显示的模块列表。简而言之:菜单项知道如何显示文章。
当你选择一个特定的文章作为链接的目标时,Joomla从URL(非SEF)中知道你想显示一个特定的组件(如com_content)的内容,例如文章ID=123。仅基于这些信息,系统知道如何从数据库中获取文章,但不知道任何上下文——文章的类型是什么,可能有什么其他内容与之相关,以及需要与它一起显示哪些模块。Joomla已被编程,当知道文章ID时,可以搜索数据库中链接到该文章的菜单项。如果找到了,Joomla会像用户点击菜单项一样使用它,而不是直接链接到文章。如果没有找到,如果没有找到菜单项,Joomla不知道该怎么做,只显示文章内容而不显示模块。
我们的目的是不将文章链接作为菜单主菜单中的一个项。这个菜单项不应该在任何导航中出现。通过在隐藏菜单中创建一个菜单项,我们成功地搜索到一个具有文章ID的菜单项并显示了具有适当模块的文章,但由于隐藏菜单不会在任何模块位置显示,所以它不会在任何网站上显示,并且没有人能看到它。就这样!
这种技术也用于创建用于SEO和营销目的的着陆页面(landing pages),这些页面不会显示在网站的导航中。这些页面是为了展示那些通过社交媒体、其他网站或搜索引擎点击链接的人看到的内容。
以下是逐步示例
我们在一篇文章的内容中有一个链接(不可见链接),该链接指向一个没有在主导航中关联菜单项的相关文章。我们在隐藏菜单中为该文章添加了这个菜单项。
现在当我们点击第一个文章中的“链接”时,我们会被引导到链接的文章,并且页面显示了我们想要的图像模块。
这是对Duke Speer(《使用隐藏菜单》一文的翻译和改编)(2014年3月),该文又是对法语原文《Le Menu Invisible》的翻译,原文由Badreddine Azrar撰写(2014年1月)。这些早期的文章包含Joomla! 2.5的图片,我已经在Joomla! 3.3中重新制作了这些图片
在Joomla社区杂志上发表的一些文章代表作者对特定主题的个人观点或经验,可能与Joomla项目的官方立场不一致
通过接受,您将访问https://magazine.joomla.net.cn/外部第三方提供的服务
评论