Back to top

Mar | 11 14 Lunedì
 

Modulo di ricerca in template senza contenuti

Stampa E-mail  
Autore : BigHam  » Questo articolo è stato letto: 5779 volte »  
 
InfoSupponiamo di voler realizzare un sito web con Joomla! 1.6 usando due template, uno per la sola home page e uno per tutte le altre pagine. Solo che nel template che verrà assegnato alla sola home non inseriremo contenuti, ossia nel codice del template non sarà presente l'istruzione <jdoc:include type="component" /> che se inserita viene sostituita, in fase di costruzione della pagina da parte dall'interprete php, con i contenuti o con un componente.
Se in questo template pubblicheremo il modulo di joomla mod_search (che effettua la ricerca nei contenuti) ci accorgeremo che tale modulo non funziona. Perchè? Perchè non ha dove visualizzare i risultati della ricerca.
Per risolvere questo piccolo problema, e solo nel caso specifico di un template che non includa i contenuti nella pagina, possiamo procedere come segue...

  1. Accedere al backend del sito e dal Menu Manager creare un nuovo menu (es. menucerca)
  2. Creare un nuovo modulo di tipo menu ed assegnargli il menu appena creato (Opzioni di base -> Seleziona menu). Lasciate questo modulo non pubblicato (sospeso) e usate una posizione modulo qualsiasi (tanto resterà sempre non pubblicato).
  3. Aggiungere al menu creato in precedenza (menucerca) una voce di menu usando il tipo "Elenco risultati di ricerca"
  4. Dopo aver salvato la voce di menu copiate il link che trovate nella casella di testo Link delle proprietà della voce di menu (es. index.php?option=com_search&view=search)
  5. Incollate questo link nel file /modules/mod_search/tmpl/default.php
    alla riga 3 sostituite
< form action="index.php?option=com_search&view=search" method="post">
con
< form action="index.php" method="post">

Dal momento che non voglio farvi le cose facili vi consiglio di non modificare il file /modules/mod_search/tmpl/default.php direttamente ma di realizzare un override del modulo mod_search.
Questo perchè se in futuro dovessero esserci aggiornamenti del core di Joomla potreste perdere le modifiche fatte.


Nella cartella del template che dovrà essere assegnato alla sola home create una cartella html, dentro questa create la cartella mod_search e in quest'ultima cartella mettete una copia del file /modules/mod_search/tmpl/default.php. A questo punto modificate questo file e non quello del modulo originale.

Ricordate che per ogni cartella creata all'interno della cartella del template dovrete mettere un file index.html vuoto.

Commenta Commenta questo articolo sul forum


Vedi anche:
Articoli più recenti:

 

Ricerca su Joomla.it

...per il tuo dispositivo mobile

Naviga Joomla.it da dispositivi mobili
kreatif-multimedia-logo