Joomla.it Forum
Joomla! 2.5 (versione con supporto terminato) => Joomla! 1.6/1.7/2.5 => : Dracoscrigno 01 Dec 2014, 21:35:19
-
Sto cercando di creare una nuova pagina che dovrebbe fungere, una volta terminata, da home page. Per farlo ho deciso di aggiungere qualche posizione nel template ma non capisco come mai il modulo che gli vado ad assegnare non venga visualizzato.
I passi che ho compiuto sono stati:
aggiungere il nome della posizione nel file templateDetail.xml <position>modulo_terzo</position>
aggiungere il codice php necessario alal generazione dell' html nel file
<?php if($this->countModules('modulo_terzo')) { ?>
<div id="slideshow">
<jdoc:include type="module" name="modulo_terzo" style="xhtml"/>
</.div>
<br style="clear:left;" />
<?php } ?>
...
Dopo aver assegnatogli un qualche modulo (nel mio caso sarebbe slideshowCK, l' unica cosa che vedo nell html, sono i div che dovrebbero contenerlo:
<div id="slideshow">
<>
Se qualcuno fosse così gentile da indirizzarmi verso la soluzione del problema gle ne sarei molto grato :)
nel caso fosse utile saperlo, i moduli che ho provato ad inserire sono:
slideshowCK
P (http://www.mondoporcino.it/administrator/index.php?option=com_modules&task=module.edit&id=128)hoca gallery slideshow floom
r (http://www.mondoporcino.it/administrator/index.php?option=com_modules&task=module.edit&id=94)icerca kunena
ed un modulo html utente
-
Ciao, come primo errore vedo che ce nè uno sulla scrittura del codice
1 <?php if($this->countModules('modulo_terzo')) { ?>
2 <div id="slideshow">
3 <jdoc:include type="module" name="modulo_terzo" style="xhtml"/>
4 </.div>
5 <br style="clear:left;" />
6 <?php } ?>
alla 4 riga la chiusura del div va senza punto -> va scritto così: </div>
Prova e facci sapere
[/code]
-
Ciao sasarella.
Leggendo la tua risposta mi rendo conto che ho commesso un errore nel mettere quel punto in fase di stesura del post.
Avevo notato che veniva tagliata la chiusura del div lasciando solo i segni di maggiore e minore.
Oltre a questo non ho pensato di avvertire :(
Il codice originale non presenta quel punto e sarebve:
<?php if($this->countModules('modulo_terzo')) { ?>
<div id="slideshow">
<jdoc:include type="module" name="modulo_terzo" style="xhtml"/>
</div>
<br style="clear:left;" />
<?php } ?>
Come noterai ora manca la chiusura del div.
Grazie comunque dell attenzione :)
Rieditando:
Ma come...
Ora è stato scritto correttamente!!!
Non capisco.
Allora rettifico. Il codice che ho appena quotato è proprio quello che ho inserito.
Scusatemi
-
Ciao.
Prova così:
<?php if($this->countModules('modulo_terzo')) : ?>
<div id="slideshow">
<jdoc:include type="modules" name="modulo_terzo" style="xhtml"/>
</div>
<br style="clear:left;" />
<?php endif; ?>
-
Ciao joomla_fan. Grazie dell interessamento. Non appena arrivo a casa provo il codice proposto.
Mi sorge, però, spontanea una domanda:
Che cosa cambia dal codice postato me?
La sintassi alternativa, in fondo, non è solo un modo diverso di scriver la stessa cosa?
Per meglio spiegarmi: non è solo una scelta dettata dai gusti del programmatore per migliorar la leggibilità del codice stesso?
-
Buongiorno.
Ieri andavo di fretta e ti ho scritto velocemente il codice senza dare spiegazioni.
Lo faccio ora per chiarire meglio la modifica rispetto al tuo codice.
Ho sostituito le parentesi graffe solamente e semplicemente per mantenere uniforme il codice con Joomla; non è questo il problema.
La modifica importante é nell'attributo type.
type="module" e type="modules" lavorano in modo differente.
"module" include nella pagina uno e soltanto un modulo identificato per il nome indicato dall'attributo name. Il nome deve avere corrispondenza tra quelli installati nella cartella MODULES senza il prefisso mod_
(p.es. type="module" name="search" , include il modulo mod_search)
"modules" include nella pagina uno o più moduli identificati per la posizione indicata dall'attributo name.
(per cui include tutti i moduli che abbiano nella voce posizione indicato "modulo_terzo".
Ora credo sia più chiaro e spero di aver risolto il tuo problema.
-
Grazie mille joomla_fan :)
Si. hai decisamente risolto il mio problema ed ora sono pronto per affrontare il prossimo ;D
vado a modificare il titolo aggiungendo risolto.
Grazie mille ancora :)