Back to top

Autore Topic: [RISOLTO] Far scomparire modulo a seconda del URL  (Letto 2079 volte)

Offline simbus82

  • Appassionato
  • ***
  • Post: 369
  • Sesso: Maschio
    • Mostra profilo
[RISOLTO] Far scomparire modulo a seconda del URL
« il: 05 Nov 2009, 12:28:15 »
So usare l'if(this->countmodules ecc ) per far renderizzare nel template i moduli a seconda se pubblicati o no.

Però ho un modulo che dovrebbe scompararire in molte paginae "generate" all'interno di joomla, che quindi hanno un url ben definito ma non puossono essere collegate a un menu in modo tale da "deselezionare" i moduli per quei tali link.

Quindi esiste il modo di dire

"if url = solo questo url
jdoc:include nome modulo"

??

Grazie!!!
« Ultima modifica: 05 Nov 2009, 15:30:50 da simbus82 »

Offline tonicopi

  • Global Moderator
  • Instancabile
  • ********
  • Post: 12790
  • Sesso: Maschio
    • Mostra profilo
Re:Far scomparire modulo a seconda del URL
« Risposta #1 il: 05 Nov 2009, 12:31:16 »
Crei un menù che non pubblichi dove linki quelle pagine. Quindi puoi deselezionare i moduli che vuoi ;)
joomlacsszengarden.com = il giardino dei css di Joomla!
L'attesa del piacere è essa stessa... piacere!

Offline simbus82

  • Appassionato
  • ***
  • Post: 369
  • Sesso: Maschio
    • Mostra profilo
Re:Far scomparire modulo a seconda del URL
« Risposta #2 il: 05 Nov 2009, 12:45:04 »
Eh nn funziona così...

Ti faccio l'esempio preciso

Sto usando il famoso ZOO e il suo modulo che autocrea le voci di menu.

Poi ho un modulo che chiamerò SLIDER che voglio che mi compaia in un unico determinato momento.

Ossia quando sono sulla pagina principale del catalogo creato con ZOO.

Quando entro in una categoria di ZOO vorrei che SLIDER scomparisse.

Purtroppo, benchè ZOO autocrea un menu dinamico con tanto di link alle categorie, nell'amministrazione ovviamente queste voci di menu create dinamicamente nn compaiono. Quindi nn posso "saperle" per fare come dici tu un menu nn pubblicato dove "spubblico" lo SLIDER.

Quindi l'unica soluzione era fare in modo che questo SLIDER compare solo se si è in una determinata pagina...

Ma in ogni caso si riesce a fare un confronto con l'url? Joomla con il $this->url da la possibilità di fare confronti?

Offline tonicopi

  • Global Moderator
  • Instancabile
  • ********
  • Post: 12790
  • Sesso: Maschio
    • Mostra profilo
Re:Far scomparire modulo a seconda del URL
« Risposta #3 il: 05 Nov 2009, 13:30:22 »
Perchè non funziona? Da frontend non ti puoi prendere le url che ti interessano e metterle in una voce di menù di tipo URL che ti crei in un menù fantasma?

Potresti anche risolvere con un template apposito da assegnare a quelle pagine.

E anche con l'if a cui sembri tenere tanto, probabilmente  ;)
joomlacsszengarden.com = il giardino dei css di Joomla!
L'attesa del piacere è essa stessa... piacere!

Offline simbus82

  • Appassionato
  • ***
  • Post: 369
  • Sesso: Maschio
    • Mostra profilo
Re:Far scomparire modulo a seconda del URL
« Risposta #4 il: 05 Nov 2009, 14:40:30 »
Perchè non funziona? Da frontend non ti puoi prendere le url che ti interessano e metterle in una voce di menù di tipo URL che ti crei in un menù fantasma?

Potresti anche risolvere con un template apposito da assegnare a quelle pagine.

E anche con l'if a cui sembri tenere tanto, probabilmente  ;)

Non hai capito....  ???

Se tu hai un LINK GENERATO da un componente di joomla, non puoi inserislo in un link esterno e poi cliccandoci su aspettarsi che il componente funzioni...

Ho fatto anche un preciso esempio.

Allora:
menu principale

Ho la voce Home e Prodotti.

Prodotti è una voce di menu com_zoo che richiama dentro ZOO il catalogo da me prescelto in admin.

é link di questo tipo
http://www.sito.it/index.php?option=com_zoo&view=category&layout=category&Itemid=5

Quando clicco su questa voce di menu compare il catalogo con le sue categorie, e il MODULO SLIDER.

Il componente ZOO intanto crea DINAMICAMENTE le voci di "sottomenu" della voce di menu Prodotti a seconda delle categorie.

Queste voci di menu sottostanti a Prodotti sono link di questo tipo:
http://www.sito.it/index.php?Itemid=5&option=com_zoo&view=category&category_id=5

Quando clicco uno di questi link il mio obiettivo è far scomparire il modulo SLIDER.

Agli occhi di joomla questi sottomenu NON ESISTONO, perchè non vanno nella tabella degli alias, quindi usare queste url generate dal com_zoo e farne delle voci di menu a manina da ovviamente errore.

Quindi la soluzione è non "disabilitare" il modulo SLIDER per tutte le "voci di menu", ma abilitarlo solo nell'unica situazione voluta, ossia quando clicco sul menu principale Prodotti.

E poichè il link di Prodotti è sempre un link di un componente, se lo incollo dentro un altro finto menu (tramite link esterno) e a questo menu assegno o un template intero o solo il modulo, succede che l'abbinamento di quel modulo a quel link di componente ricade su tutti le voci del sotto menu.

Quindi l'unico modo per evitare che la gestione della comparsa del modulo ricada sulle deboli spalle di joomla, volevo semplicemente fare un "override" all'interno del template.

Il link in quel momento è uguale a http://www.sito.it/index.php?option=com_zoo&view=category&layout=category&Itemid=5 ?

Perfetto, mostro il modulo. Non è uguale, il div che contine il jdoc:include semplicemente nn viene renderizzato.

Io chiedevo qualche era il codice da usare per fare questo IF, poichè dentro i docs di joomla.org si trova poco niente e solo tanta confusione...

Mi basta anche un comando in php puro, solo che nn ho trovato riferimenti. Chiedevo qua per questo motivo...

Grazie comunque! ;)

Offline simbus82

  • Appassionato
  • ***
  • Post: 369
  • Sesso: Maschio
    • Mostra profilo
Re:Far scomparire modulo a seconda del URL
« Risposta #5 il: 05 Nov 2009, 15:30:33 »
HO RISOLTO

sapendo che in quella situazione il componente mi spara fuori una variabile http

ho fatto l'if per la presenza di quella... ;-)
Codice: [Seleziona]
if ( isset($_GET['variabile']) )
funziona ;-)

 



Web Design Bolzano Kreatif