it-swarm.it

Come ottenere il titolo della categoria padre per la vista Tag

Voglio ottenere la categoria del mio articolo corrente e il link della categoria principale nella mia pagina. Ottengo la categoria tramite il seguente codice:

$db = JFactory::getDbo();
$id = $item->core_catid;
$db->setQuery("SELECT cat.title FROM #__categories cat WHERE cat.id='$id'");
$category = $db->loadResult();
echo '<p>'.$category.'</p>';

Ma non riesco comunque a ottenere la categoria genitore. Ci provo ma non ottengo risultati:

$db->setQuery("SELECT cat.title FROM #__categories cat WHERE cat.parent_id='$id'");

4
gag

Prova questo (testato e lavorato in Joomla 3.3.0):

Metti questo codice:

<?php
$db = JFactory::getDbo();
$id = $item->core_catid;
$db->setQuery("SELECT cat.parent_id FROM #__categories cat WHERE cat.id='$id'");
$parent_category_id = $db->loadResult();
$db->setQuery("SELECT cat.title FROM #__categories cat WHERE cat.id='$parent_category_id'");
$parent_category_title = $db->loadResult();
if($parent_category_title != 'ROOT'){
 echo '<p>Parent Category: '.$parent_category_title.'</p>';
}
echo '<p>Parent Category: <a href="index.php?option=com_content&view=category&layout=blog&id='.$parent_category_id.'">'.$parent_category_title.'</a></p>';
?>

in questo file:

templates/yourtemplate/html/com_tags/default_items.php

copia da:

components\com_tags\vista\etichette\tmpl\default_items.php

tra queste due righe

<?php foreach ($items as $i => $item) : ?> //Line 63
<?php endforeach; ?>
5
Joomla Agency

Sicuramente nelle opzioni dell'articolo puoi semplicemente impostare "Mostra categoria", "Categoria collegamento," Mostra padre "e" Collegamento padre "su" Mostra "(categoria) e" Sì "(collegamento).

2
DesignSubway

Penso che potresti farlo utilizzando il modello di contenuto per caricare l'articolo.

/* Lets say the article ID is stored in $id */

/* Get an instance of the generic articles model */
$model = JModelLegacy::getInstance('Articles', 'ContentModel');
$myArticle = $model->getItem($id);

$categoryID = $myArticle->catid; /* catid = "9" */
$category_title = $myArticle->category_title; /* category_title = "Blog" */
$category_alias = $myArticle->category_alias; /* category_alias = "blog" */

$parent_id = $myArticle->parent_id; /* parent_id = "1" */
$parent_title = $myArticle->parent_title; /* parent_title = "ROOT" */
$parent_alias = $myArticle->parent_alias; /* parent_alias = "root" */

I valori mostrati nei commenti sul lato destro sono quelli che ho appena estratto da un'installazione demo di Joomla 3.3 con il contenuto di esempio "Blog" installato. Nota il valore della categoria root.

1
Craig