如何从 mysql 将子类别加载到 joomla

Posted

技术标签:

【中文标题】如何从 mysql 将子类别加载到 joomla【英文标题】:How to load sub categories into joomla from mysql 【发布时间】:2016-06-02 17:30:09 【问题描述】:

我在搞乱 com_content/view/article 组件。 我正在尝试将所有子目录添加到 view.html.php 的类中,我似乎无法从数据库中获取信息。我已经成功获得了文章类别和父类别。我尝试编辑 model/article.php 我添加了一个循环来查询->选择和查询->加入,但我不确定如何检查数据库是否有更多子类别。

模型获取文章信息。使用 catID 加入类别,然后加入子类别,仅此而已。我想尝试循环,直到加载的每个子类别都有 0 或 null 作为它们的 parent_id。

我这样做的原因是因为我想拥有每个类别的 opengraph 信息。在我的 view.html.php 中,我有一个代码为文章设置 opengraph 描述,如果数据库中没有,它会进入类别,如果没有,它会从菜单中加载它,(不确定我是否有工作正常),如果不是那么来自configuration.php。好吧,我想在他们之前的菜单中添加子类别。

有人有什么想法吗?

【问题讨论】:

嗨!不确定你是否知道,但有一个专门的 Joomla! Stackexchange 的社区。如果您在那里提出问题,您将有更好的变化来获得答案。 joomla.stackexchange.com 【参考方案1】:

如果您将文章类别设为 $catid,则应该获取所有子类别

$db = JFactory::getDbo();
$sql = "select c2.* from #__categories c, #__categories c2
where c.id=$catid and c.lft<c2.lft and c2.rgt<c.rgt";
$db->setQuery($sql);
$categories = $db->loadObjectList();

【讨论】:

以上是关于如何从 mysql 将子类别加载到 joomla的主要内容,如果未能解决你的问题,请参考以下文章

css 将子类别网格设置为在移动视图上每行显示2个

将子实体加载到核心数据中的托管对象

如何使用jQuery将子元素从一个父元素移动到另一个父元素[重复]

MySQL:将子选择和数组合并到一个IN语句中

如何从另一个页面加载 .php 页面并加载动态内容

如何将从笔尖加载的视图重建为新的帧大小