Je sais comment récupérer toutes les informations d'un article de la base de données. J'essaie de faire la même chose pour une catégorie. Et juste pour clarification, je parle de quand view est égal à category (index.php? Option = com_content & view = category). Vous trouverez ci-dessous comment récupérer des informations sur un article. Lorsque je suis sur une page d'article, je veux faire exactement la même chose, mais lorsque je suis sur une page de catégorie. Merci!
$input = JFactory::getApplication()->input;
$articleId = $input->getInt('id');
$article = JTable::getInstance('content');
$article->load($articleId);
$articleTitle = $article->get('title');
Tout ce que je devais faire était de changer le contenu en catégorie et je pouvais accéder à toutes les données de la table des catégories en utilisant la même méthode que pour le contenu.
$input = JFactory::getApplication()->input;
$catId = $input->getInt('id');
$cat = JTable::getInstance('category');
$cat->load($catId);
Lorsque vous êtes dans une vue de catégorie (vue = catégorie), vous pouvez simplement récupérer les informations de la catégorie actuelle comme suit
$this->category->id;
$this->category->title;
$this->category->alias;
$this->category->description;
Essayez d’ajouter cette fonction dans votre fichier PHP
function getCategory($id) {
$app = JFactory::getApplication();
$database = JFactory::getDBO();
$jinput = $app->input;
if (($jinput->get('view') == "category") || ($jinput->get('view') == "categories")) {
return $id;
} elseif ($jinput->get('view') == "article") {
$sql = "SELECT catid FROM #__content WHERE id = " . $id;
$database->setQuery($sql);
return $database->loadResult();
}
}
$catId = getCategory($jinput->get('id', '', 'INT'));