我正在尝试获取另一个类别的父类别的 id。(我有子类别的 ID。)
我一直在尝试使用 Joomla 的 Category 模型,我成功地使用 Article 等效项从文章的 Id 中获取子类别 ID。
//article model
jimport('joomla.application.component.model');
$articlesModel = JModel::getInstance('ContentModelArticle');
$categoriesModel = JModel::getInstance('ContentModelCategory');
//Get Article Category id
$article = $articlesModel->getItem($art['id']);
$catid = $article->catid;
//Get Category Parent Category
$category = $categoriesModel->getItem($catid);
$parentID = $category->getParent();
echo "<pre>";
var_dump($parentID);
echo "</pre>";
但是我一直收到一个错误,说我正在尝试调用非对象的函数。
有人可以指出我要去哪里错了吗?谢谢。
编辑:应该提到这都在模块文件中
改变策略 最后我自己找到了一种不同的方法:现在我正在查询数据库中的信息。在这种情况下它很有用,因为我可以获取我需要的确切数据。
$db =& JFactory::getDBO();
$query = $db->getQuery(true);
$query->select('parent_id');
$query->from('#__categories');
$query->where("id = '$child_id'");
$db->setQuery($query);
//check if error
if ($db->getErrorNum()) {
echo $db->getErrorMsg();
exit;
}
$parent = $db->loadObjectList();
$parent_id = $parent['0']->parent_id;