【问题标题】:How to create breadcumb for custom component in Joomla?如何在 Joomla 中为自定义组件创建面包屑?
【发布时间】:2025-11-21 03:50:07
【问题描述】:

我有一个自定义组件,我希望在其中有一个面包屑来帮助用户浏览以前的页面访问。我的组件的基本功能是展示我们的产品发布。工作流程是:

  1. 用户选择产品菜单项。将显示一个显示产品名称的新页面。
  2. 用户选择特定的产品名称。将显示一个新页面,其中显示该产品的版本。
  3. 用户选择特定的产品版本。将显示一个新页面,其中包含有关此产品版本的信息。用户可以在此页面中查看依赖于此版本的其他产品。

我已尝试为此使用内置的面包屑函数:
$app =& JFactory::getApplication();
$pathway =& $app->getPathway();
$pathway->addItem("$productName", "index.php?option=com_rcs_products&view=product&productName=$productName&Itemid=$Itemid");

这会正确创建面包屑。但它只显示三个级别:
首页 - RCS 产品 - FSPA2-1.2

当我导航到新版本时,它会显示:
首页 - RCS 产品 - IPU2-2.0

我希望它显示:
首页 - RCS 产品 - FSPA2-1.2 - IPU2-2.0

这可能吗?

【问题讨论】:

  • 我会在哪个文件/函数中包含该代码?提前谢谢!
  • @michi:就我而言,它在控制器中。但我想你可以在任何你喜欢的地方添加它。

标签: joomla


【解决方案1】:

只需在路径中添加另一个项目:

$pathway->addItem("$productCategory", "index.php?blabla");
$pathway->addItem("$productName", "index.php?option=com_rcs_products&view=product&productName=$productName&Itemid=$Itemid");

【讨论】:

  • 但是我需要以某种方式记住网站上的每个用户的踪迹。我希望面包屑显示 3 或 4 个最新的页面访问量。
  • Joomla 中的面包屑不像 Henrik 那样工作。它不显示用户进入页面的方式,而是显示当前页面的层次结构(即父母)。您可以存储用户历史记录的 cookie,并使用它为他创建自定义路径。