Joomla.it Forum

Non solo Joomla... => Sviluppo => Esperimenti e test => : ilnavigatore 26 Jul 2017, 20:56:43

: [RISOLTO] Url dinamico in base alla selezione campi ricerca
: ilnavigatore 26 Jul 2017, 20:56:43
Buonasera a tutti,
premetto che ormai sono in procinto di abbandonare questa idea.
Vado alla questione, ho un modulo di ricerca dal quale, selezionando i campi, è possibile effettuare la ricerca dei vari annunci.
Il problema è questo: non so come passare al router.php, mediante JRoute, i valori dei campi che ho selezionato in modo da creare un url sef per la ricerca.
Ho pensato di creare un plugin ma non so come:

C'è qualcuno che si è trovato nella mia stessa situazione?Grazie mille in anticipo a tutti. 
: Re:Url dinamico in base alla selezione campi ricerca
: Ahmed Salvini 26 Jul 2017, 21:07:39
un modulo per la ricerca solitamente non basta, serve dietro un componente. Il modulo è solo la rappresentazione html del campo/i di ricerca.
Il componente ha un router nel quale viene elaborato l'uri come ti serve. Basta che guardi come è fatto quello di un componente del core.
: Re:Url dinamico in base alla selezione campi ricerca
: ilnavigatore 26 Jul 2017, 21:26:34
Ciao Ahamed, grazie.
Si ho il mio componente, il discorso è questo, il modulo di ricerca è semplicemente un form che invia la richiesta al componente.
Per effettuare il submit del form, quindi per inviare la richiesta al componente di effettuare la ricerca, devo passare il link all'action, per avere un url sef il link deve essere elaborato dal JRoute.
Ed è proprio per la dinamica su descritta che faccio a fatica a trovare una soluzione.
Grazie ancora.
: Re:Url dinamico in base alla selezione campi ricerca
: Ahmed Salvini 26 Jul 2017, 21:55:19
prova a guardare, ad esempio, nei filtri dove viene "memorizzato" e recuperato il dato (model), dovrebbe essere nello state https://docs.joomla.org/How_to_use_user_state_variables
: Re:Url dinamico in base alla selezione campi ricerca
: ilnavigatore 27 Jul 2017, 21:59:00
Alla fine ci sono riuscito, ho creato una task che ricostruisce l'url e lo invia al Jroute, il router.php lo interpreta e mediante un  [size=78%] [/size]
:
$app = JFactory::getApplication();
 $app->redirect(JRoute::_($link));


Vado visualizzo la ricerca con l'url come interessa a me e in caso di aggiornamento della pagina non chiede di reinviare il modulo.
Direi che è perfetto così.
Adesso manca la modifica al router e poi online!!
Grazie Ahmed per il tuo supporto.