Joomla.it Forum
Joomla! 2.5 (versione con supporto terminato) => Joomla! 1.6/1.7/2.5 => I Template di Joomla 1.6/1.7/2.5 => : ira83 24 May 2013, 11:02:28
-
Ciao a tutti,
Attraverso un ciclo if, attribuisco a un div il suo id in base se vi sono/non vi sono moduli pubblicati in una sezione...
Fin qui tutto bene, ora peró ho la necessità di attribuire id diversi in base alla cetegoria di appartenenza e mi domandavo, quale variabile potessi utilizzare per verificare la categoria?
Grazie in anticipo
-
girando per google ho trovato:
<?php
$db = JFactory::getDBO();
$option = JRequest::getCmd('option');
$view = JRequest::getCmd('view');
$temp = JRequest::getString('id');
$temp = explode(':', $temp);
$id = $temp[0];
if ($option == 'com_content' && $view == 'article' && $id)
{ $db->setQuery('SELECT cat.id FROM #__categories cat RIGHT JOIN #__content cont ON cat.id = cont.catid WHERE cont.id='.$id);
$category_id = $db->loadResult(); //this is current article’s category ID
echo $category_id; //show it
}?>
il quale mostra l'id della categoria dell'articolo "APERTO"... ma a me, interessa nella home, dove ci sono più articoli "CHIUSI" e a seconda dalla categoria di appartenenza vorrei assumessero uno style diverso
-
scusate l'up, forse mi sono spiegato male...
Nella HOME vengono pubblicati articoli in evidenza appartenenti a varie categorie... io vorrei solo trovare un modo che per la cartegoria X corrisponde una serie di regole CSS X, per la categoria Y il gruppo di regole Y, e così via...
consigli?
-
devi fare un override della vista featured
-
Ciao...
grazie per la risposta.. ma non capisco come faccio ad individuare e distinguere le categorie? nella home vengono presentati tutti gli articoli in evidenza di tutte le categorie, come faccio a capire quali articoli sono della categoria X e quali della categoria Y?
-
hai guardato?
-
si ho letto l'output della pagina con chrome e fa riferimento a div generici validi per qualsiasi articolo... mi puoi spiegare come fare con il tuo metodo? perché ripeto, a tutti gli articoli nella home, composti ovviamente da div, corrispondono le stesse classi in maniera indipendente rispetto la categoria di appartenenza... se non chiedo troppo, se ti è possibile fare un esempio di ciò che dici magari riesco a capire cosa intendi e di certo tornerà utile anche ad altre persone...
ti ringrazio in anticipo
-
in che senso "div generici"...
non devi leggere la pagina con chrome... devi fare un override della vista featured dove hai comodamente la categoria che discriminerai con il tuo "if"
-
bene ma come faccio a discriminare la singola categoria????
ripeto che nella home ho tutti gli articoli in evidenza di circa una decina di categorie e tutti i div dalle quali è composta la home si rifanno agli stessi id e alle stesse classi indipendentemente dalla categoria di appartenenza
puoi riportare un esempio per favore?
-
sai che continuo a far fatica a seguirti?... hai postato un codice ... credevo smanettassi con il codice, altrimenti certo che c'è bisogno di chi te lo fa...
a seconda della categoria aggiungi un pezzetto al css
.categoria_pluto{ colore blu };
if categoria === 'pluto' -> $css ='_pluto';
<div class="categoria'.$css.'"
-
so html, php e css... forse mi sono spiegato male, in poche parole, io ho fatto come dici te, ma quello che cerco di dire dal mio primo post è che mi sfugge di come nel file index.php mettere che le gli articoli delle categorie X sono legate al css X, le Y alla Y e cosi via...
ripeto che nella home ho più categorie e vengono richiamati in blocco tutti con una banale riga di codice!!!! e quindi mi è impossibile prelevare l'id come da me riportato nel primo post... quel codice funziona solo se sono dentro un articolo specifico, non nella home...
-
per farti capire meglio... il tuo sistema già lo uso per stabilire la "larghezza" del div degli articoli, basandomi sulla presenza/assenza di moduli pubblicati in una determinata posizione.... gli articoli in evidenza, appartenenti a categorie diverse, vengono poi pubblicati sempre con questo pezzo di codice... ora, stando a ciò che sostieni te.. come faccio a individuare le categorie???
<?php
if ($this->countModules('barra_dx')) {
$idarticoli = 'articolinuovi';
} else {
$idarticoli = 'articolinuovi_full';
}
?>
<div id="<?php echo $idarticoli; ?>">
<?php if ($this->countModules('position-2')) : ?>
<div class="posizione2">
<div class="posizione2_s">
<jdoc:include type="modules" name="position-2" />
<>
<>
<?php endif; ?>
<jdoc:include type="component" />
<>
-
i <> stanno per la chiusura dei div.. non so come mai non li prende
-
ora, stando a ciò che sostieni te.. come faccio a individuare le categorie???
------------------------------------------------------------------
ma hai capito cos'è e come si fa un override? ... altrimenti continuiamo in eterno...
-
certo che ho capito cosa è.. ma se per tutti gli articoli in home gli id e le classi sono medesime non posso mica fare come dici te...
-
se uso if categoria === 'pluto' -> $css ='_pluto'; dove la categoria la piglio con il mio script, questo funziona ma solo e soltanto se l'articolo è aperto, non nella home...
-
quale file stai usando? o meglio a quale file faresti l'override?
-
il pezzo di codice sopra riportato proviene dall'index.php del mio template che sto costruendo
-
te lo ripeto per l'ultima volta usa l'override, il tuo template con l'override non centra nulla
bye
-
grazie per le risposte ermetiche
saluti