In questo tutorial illustrerò come creare un form per la ricerca avanzata per il tuo sito web in JOOMLA utilizzando il componente SEBLOD 3.x.

Pochi mesi fa, colsi l’occasione per scrivere una guida Come creare form personalizzati, nell’articolo spiegavo come creare un “form per annunci immobiliari“.

Nell’articolo di oggi, voglio continuare l’argomento, spiegando come ricercare gli annunci immobiliari creati dal form, creando un modulo di ricerca, che consenta di immettere testo da ricercare, filtrando gli annunci immobiliari.

In questo articolo faccio riferimento alla nuova versione di SEBLOD 3.x compatibile sia con la versione 3.x che con la 2.x di Joomla.

Possiamo vedere da questo link una demo del motore di ricerca interno, rendendoci conto delle potenzialità di questo componente.

Creiamo il motore di ricerca interno per i nostri annunci immobiliari

pannello di controllo seblod - joomlaAccediamo al backend del sito, nel menù di joomla selezioniamo Componenti e clicchiamo su Seblod 3.x, si apre la finestra del pannello di controllo per la gestione del componente, clicchiamo su List & Search Type Manager.

 

creare un form di ricerca con seblodPer creare un nuovo form di ricerca, andiamo nella barra degli strumenti in alto a destra, in questo menù possiamo creare, modificare, eliminare, pubblicare, tutti i nostri Search form, clicchiamo sul pulsante “Nuovo”.

 

modulo ricerca avanzata creazione - seblod Nella schermata che si apre, selezioniamo nel menù Form & Content Type il form da associare alla nostra ricerca, nel nostro caso annuncio immobiliare, subito dopo clicchiamo su Create List & Search Type.

 

Search Form lato back-end di joomlaSi apre un’interfaccia che rappresenta la struttura del nostro modulo di ricerca, nella parte superiore, inseriamo di dati principali del form, nel campo title, scriviamo “Ricerca annuncio immobiliare“, nel campo App Folder selezioniamo “article“, successivamente selezioniamo il tab “Search Form” visto che stiamo creando un form di ricerca, in seguito, nel campo Object selezioniamo “article“, e infine nel campo Quick Menu possiamo associare il form di ricerca ad un menù, selezioniamo la voce “Aggiungi a questo menu” riferita al Menù principale, e verrà creato automaticamente un link nel front end di joomla al nostro motore di ricerca.

 

I campi che ci servono per il nostro motore di ricercaPassiamo ad inserire i campi (comunemente chiamati Field) per la ricerca.
Nella colonna di destra ritroviamo tutti i campi che abbiamo creato per il form degli annunci immobiliari, basta trascinare gli elementi che ci servono, e inserirli nelle posizioni appropriate.

I field che utilizziamo sono:
Tipologia immobile (Article Category Id),
Tipo Offerta,
Condizioni Immobile,
Regione,
Provincia,
Comune,
Prezzo,
quest’ultimo lo rinominiamo in Prezzo Max, e infine inseriamo il pulsante per la ricerca.

Prezzo massimoDefiniamo meglio il Prezzo Max, il valore inserito nel field, deve filtrare gli annunci immobiliari, che hanno il prezzo uguale o inferiore al valore inserito, per permettere al campo di fare questo, lo dobbiamo modificare.

Per modificare un field, basta cliccare sull’icona della matitina.

Modificare il campo prezzoSi apre una finestra e nella sezione Storage selezioniamo il campo Alter, comparirà un menù a tendina e selezioniamo il valore int, successivamente salva e chiudi, abbiamo trasformato il Prezzo in un campo numerico.

valore Lower (< or =)La seconda modifica da fare è applicare una regola al campo prezzo, selezioniamo dal menù verticale di destra, il pulsante con il numero 3, nel field prezzo compare un menù a tendina e selezioniamo il valore Lower (< or =), questa regola permette al campo di filtrare tutti gli annunci immobiliari che hanno un valore uguale o inferiore al valore immesso.

Il motore di ricerca interno per il nostro CMS è terminato, clicchiamo su salva e chiudi

 

Testiamo il form della ricerca avanzata per gli annunci immobiliari

verificare il form ricerca annunci immobiliariAdesso siamo pronti a provare e verificare il nostro modulo di ricerca annunci.

Nel menù del nostro sito web, clicchiamo sul link “Ricerca annuncio immobiliare” e iniziamo la nostra prima ricerca, per esempio cerchiamo tutti gli immobili con tipologia “appartamento”, comune “Palermo”, e prezzo max 150.000 e clicchiamo il pulsante cerca, vediamo subito che la nostra ricerca restituisce una serie di annunci immobiliari, con il solo titolo dell’annuncio, se vogliamo che i risultati prodotti dalla ricerca, mostrino più valori, come la foto, il prezzo, il comune ecc, dobbiamo creare una Intro nel Form Agenzia Immobiliare.

 

Form Agenzia ImmobiliareRitorniamo nel backend di Joomla, selezioniamo il componente SEBLOD 3.x, apriamo il Form Agenzia Immobiliare, selezioniamo il Tab Intro, nella colonna di destra trasciniamo i campi che devono essere visualizzati nei risultati di ricerca inserendoli nelle posizioni più appropriate, salviamo e chiudiamo.

Ritestiamo il nostro form ricerca annunci immobiliari, vediamo che i risultati vengono visualizzati in una maniera più ordinata e gradevole con più informazioni.

 

Conclusione

Bene, in questo articolo, ti ho fatto vedere come si crea un modulo di ricerca avanzata per il tuo sito web, utilizzando il componente Seblod per Joomla.

Per ogni tua domanda e curiosità sono a tua disposizione, ci possiamo trovare nel box dei commenti!

Grazie per l’attenzione e in bocca al lupo, per i tuoi progetti!

Francesco Di Giovanni



Joomla Realizzare un modulo per la ricerca avanzata con seblod
Vota questo articolo

Ultima modifica:

Condividilo con i tuoi amici:


Articoli correlati


51 Responses to “Joomla Realizzare un modulo per la ricerca avanzata con seblod”

    Ciao Francesco vorrei inserire un campo numerico e controllare in fase di immissione il suo valore minimo. Seguo le istruzioni contenute nel tuo tutorial riguardo la ricerca avanzata ma, utilizzando tali indicazioni nel campo da me realizzato non funziona. Forse perchè sto ancora creando un form di immissione e quindi non mi offre certe possibilità ? Credo che anche per l'immissione dei campi sul form mi possa fare un controllo sul campo immesso. Attendo, se puoi, un aiuto come sempre, saluti, Luigi

      • Ciao Luigi,
        il campo che hai realizzato, l'hai trasformato in campo numerico?
        cosa intendi "sto ancora creando un form di immissione e quindi non mi offre certe possibilità"?

            Ciao francesco, il campo l'ho trasformato in campo numerico ( o almeno penso ). Attualmente sto provando a realizzare un form di immissione dati. Volendo effettuare un controllo sul campo, lato sito, non mi permette di effettuare la scelta (controllo campo) così come nell'esempio riportato. Mi chiedo: forse il controllo in parola si può effettuare solo nella ricerca ? Spero di essere stato più chiaro. Saluti, Luigi

              • Ciao Luigi,
                vediamo se ho capito, stai realizzando un form e vuoi che un campo accetti solo campi numerici?

              • Per validare un form in SEBLOD, devi selezionare dal menù verticale di destra, della struttura del tuo form personalizzato che stai creando, il pulsante con il numero 3, nei field compare un link Optional, cliccandoci si apre una finestra, e nella prima sezione puoi settare se il campo è obbligatorio, nella seconda sezione Validation, puoi settare dal menù a tendina diverse opzioni, per esempio la validazione per i campi email, o la validazione Alphanumeric ecc.
                il tuo campo deve essere validato solo per i numeri?

    Grazie per l'aiuto proverò. Saluti, Luigi

    Francesco, ho provato seguendo passo passo le istruzioni per realizzare un modulo di ricerca, purtroppo l'unico problema che incontro sta nel fatto che il link all'articolo, dopo che effettuo la ricerca, mi va in errore.

    error: 500, il classico errore di quando non trova un articolo.

    Cosa può essere successo ? In effetti il collegamento tramite la ricerca e il collegamento tramite la visualizzazione dell'articolo nella sua categoria sono differenti cioè:

    ………………/index.php?view=article&id=176:articolo-x-utenti-registrati&Itemid=159&option=com_cck
    ………………/index.php?option=com_content&view=article&id=176:articolo-x-utenti-registrati&catid=17&Itemid=119

    Sai darmi una mano ? Grazie in anticipo, saluti, Luigi

      • ciao Luigi,
        l'errore 500 non penso che sia l'articolo non trovato, se non sbaglio quello è l'errore 404, secondo me l'errore che ti da, è dovuto all'htaccess. Il form che hai creato genera utenti?

    Buongiorno, sarebbe possibile seguire questa stessa procedura ma invece che linkare articoli linkare files di jdownloads per avere una ricerca files più efficace di quella di serie?

      • ciao matteo,
        il modulo di ricerca creato con SEBLOD 3.x, consente di filtrare gli articoli, non interagisce con il componente jdownloads, tranne se nell'articolo che crei con il form realizzato con SEBLOD, vuoi caricare un file, in quel caso c'è un campo che ti permette di caricare file nell'articolo.

    Buongiorno, sto cercando un componente di download che possa darmi la possibilita' di far fare ai miei utenti la ricerca tramite form già preimpostati con menu' a tendina (la sintassi dei file da scaricare è piuttosto complicata quindi non va bene un semplice campo di ricerca testo). Sarebbe possibile usare SEBLOD per creare il form e linkarlo alle cartelle create da uno specifico componente di download?

    grazie
    Matteo

      • ciao Matteo,
        i form che sviluppi con SEBLOD, creano articoli o utenti,
        mi sembra un po' difficile l'interazione con un'altro componente,
        potresti usare solo SEBLOD sia per caricare i file e poi fare il download, senza utilizzare altri componenti

            Grazie per la risposta e scusa se ti ho scritto due volte.. mi sembrava che il primo non fosse partito. E' una cosa molto complicata creare un modulo per upload/download con Seblod?

  • Ciao Matteo,
    puoi creare un semplice modulo e inserisci un campo di tipo upload File, questo campo ti permettere di caricare file, e nell'articolo che ti crea il form lo puoi pure scaricare.

    Salve Francesco e complimenti anche da parte mia.
    Ho difficolta a far funzionare le condizioni. ho tre campi, area (europa, asia) country (italia, america) e base (napoli, newyork)… devo far in modo che quando cambia uno di questi gli altri si impostino sui giusti valori (europa – italia- napoli) mi aiuti?
    grazie

  • Ciao Manuela,
    vediamo se ho ben capito, hai tre menù a tendina, se selezioni l\'elemento europa, il secondo menù a tendina si deve richiamare le nazioni europee.

        ciao Francesco….
        si, ho tre menu a tendina che devone essere legati, se sul primo metto (AREA) Europa sul secondo (COUNTRY) mi deve impostare Italia e il terzo BASE diventano le città italiane inserite del menu a discesa, se AREA è impostata su Nord America – Country diventa Stati Uniti – Base citta americane inserite…
        Spero di essermi spiegata, si puo fare?
        Ho visto i vari controlli \\\"stati condizionali\\\" dei campi…
        grazie in anticipo per la risposta!

    si praticamente tre menu a tendina che a discesa si impostano… se imposto area europa devo avere i valori giusti in country e base…. si puo con i controlli di campo?

      • Ciao Manuela,
        esiste Select Dynamic Cascade per seblod, è un campo che ti permette di gestire i menù a discesa dinamicamente con AJAX. Ogni menù è riempito dinamicamente a seconda del valore di quello precedente. Questo campo è a pagamento, lo puoi scaricare nel sito di seblod nella sezione Products.

    Grazie…. vado subito a vederlo!

    Seblod mi da errore di installazione. Come faccio a installarlo correttamente?

    Ciao Francesco, complimenti e grazie per i suggerimenti. Io uso seblod da un po\' di tempo e non sono ancora riuscita a capire come posso inserire un tasto back (in alternativa al back del browser) che una volta entrati nel content dalla lista di ricerca mi riporti indietro alla ricerca appena fatta. Un semplice indietro alla pagina precedente.

    Si può fare?
    Grazie
    Giorgia

      • Ciao Giorgia,
        per creare un testo per ritornare nella pagina precedente, devi creare un campo di tipo "Free text" e devi inserire questo codice html, <a href="javascript:history.go(-1)">Torna indietro</a> nella sezione "Default Value", lo salvi e lo inserisci nel Content del tuo form.
        dovrebbe funzionare.
        a presto

    Francesco ho letto e cercato di applicare le due lezioni su seblod. Sembra funzionare tutto, la cosa strana è che nel momento in cui clicco sul pulsante 'ricerca annuncio immobiliare', il motore mi restituisce già l'elenco degli annunci memorizzati. Se poi inserisco i parametri per una ricerca, mi viene restituito solo l'annuncio che desidero.

  • Ciao orazio,
    è una cosa normale, il filtro su gli articoli si fa solo se inserisci i parametri nel form di ricerca, se non scrivi nulla e clicchi su ricerca, il form ti restituisce tutti gli immobili.

    Caro Francesco,
    i tuoi tutorial sono preziosi…ho capito più da questi tre tutorial che da tutti quelli ufficiali ;-))
    credo che Seblod abbia enormi potenzialità…sto cercando di integrarlo con GeoFactory
    con scarso successo devo dire…ma non mi sono ancora arreso…
    spero tanto per tutti noi utenti che tu possa ancora regalarci altri tutorial su Seblod…
    gli esempi pratici sono i migliori per capire…concludo con un grande GRAZIEEEEEE !!!!

      • Ciao Stefano,
        sono felice che i tutorial che ho scritto ti sono serviti, hai detto bene seblod è un componente che ha molte potenzialità, soprattutto può essere integrato con le tabelle degli altri componenti,
        a presto :-)

    Ciao Francesco,

    Complimenti per i tuoi tutorial sono fatti davvero bene. Ti chiedo se è possibile una volta impostata la ricerca e trovato il relativo annuncio, inserire all’interno un tasto che mi permetta di inviare una mail con tutti i campi che sono presenti nell’annuncio. Diciamo che sarebbe una sorta di “contatta l’inserzionista” oppure “richiedi informazioni”.

    Grazie mille per la tua attenzione.

    Saluti

      • Ciao Carlo,
        Tu dovresti creare un secondo modulo, più precisamente un form di contatto, l’ultimo tutorial che ho scritto, spiega come realizzarlo, questo form invia solo email all’amministratore del sito.
        A presto :-)

            Grazie mille Giovanni per la tua risposta e il tempo dedicato. Il mio problema però è quello di inviare i campi compilati dal cliente. Cioè non devo reinserirli da capo ma semplicemente una volta effettuata la ricerca (e quindi mostrati i vari campi) mi servirebbe un tasto che m invii via mail tutti questi campi oppure crei un articolo in una categoria diversa sempre con queste informazioni.

            Grazie ancora e complimenti per il tuo impegno

              • Ciao Carlo, vediamo se ho ben capito, quando fai una ricerca, ti si presentano diversi articoli creati con seblod, cliccando su un articolo, hai necessità di un pulsante che invii i valori dei campi dell’articolo,
                Ho inquadrato bene il problema
                a presto FRANCESCO

    Buon giorno. Non vedo alcun risultato nella ricerca. Utilizzo il modulo selezionando il form creato con la tua guida. Qualche suggerimento?

      • Ciao Rosalia,
        Vediamo se ho ben capito, hai creato il form di ricerca associandolo al modulo personalizzato che ti è servito per creare gli articoli personalizzati, dopo aver compilato e cliccato nel pulsante del form di ricerca non ti visualizza nulla.
        Quando hai creato il modulo personalizzato hai inserito i campi sia nel content che nella intro?
        a presto

            In intro non avevo inserito i campi della ricerca. Li ho aggiunti ora ma non visualizzo lo stesso nulla. Sembra che la ricerca funzioni, se non c’è nulla nella ricerca mi da il messaggio “There is no result” ma se trova qualcosa mi da pagina bianca senza messaggi. E’ un problema di template?

              • Ciao Rosalia,
                il tuo problema capita, se si crea un form di ricerca e lo si inserisce come modulo nel sito, cosa che non si verifica se si crea un link che rimanda al form di ricerca, come puoi vedere nella demo.
                a presto

    Grazie ho risolto col problema precedente. Adesso vorrei sapere, se è possibile, come fai a far comparire il link “leggi tutto” nel risultato della ricerca? Io uso Joomla! 3.4. Grazie. Saluti

      • Ciao Rosalia,
        per curiosità, come hai risolto il problema?
        Per far visualizzare il “leggi tutto” devi inserire nel tab intro nel modulo personalizzato, il campo Article Readmore, lo troverai nella colonna di destra è già creato di default, trascinalo nel tuo form per creare gli articoli.
        a presto

        Ciao Rosalia,

        sto facendo dei test con SEBLOD e anche io ho lo stesso tuo problema, ossia eseguendo la ricerca con dei valori inesistenti mi da il messaggio che non ci sono risultati mentre con valori esistenti non mi visualizza i risultati. Puoi dirmi come hai risolto ?

    Ciao Luigi,

    bella guida complimenti…..
    ti scrivo per aver un info….io sul sito devo fare una ricerca per campi, proprio come hai fatto tu, ma una volta fatto il sort di tutto avro sicuramente 1 valore finale e dovra aprire un altro componente Joomla che sarebbe poi un flyer pdf.

    praticamente devo creare un form con il primo campo che guida tutti gli altri…
    esempio

    nel primo campo ho delel selezioni gia prefissate
    ogni selezione crea nel secondo campo, altre selezioni prefissate, collegate naturalmente alla prima
    nel terzo campo altre selezioni collegate al secondo che e’ collegato al primo
    cosi via fino a uando si avra’ il risultato di un file unico….

    si puo fare che senza aver selezionato niente, il campo succesivo sia vuoto?
    Mi sapresti dare una mini guida o farmi capire come posso farlo, se con seblod o esiste un altro component per joomla 3?

    Grazie

    Alex

      • Ciao Alex,
        vediamo se ho capito, tu intendi realizzare menu a tendina dinamici, in cui il secondo cambi contenuto in base alla selezione fatta nel primo.
        Una cosa del genere si può realizzare con seblod con Select Dynamic Cascade è un campo che ti permette di gestire i menù a discesa dinamicamente con AJAX. Ogni menù è riempito dinamicamente a seconda del valore di quello precedente. Questo campo è a pagamento, lo puoi scaricare nel sito di seblod nella sezione store.

    Ciao, ho iniziato da poco ad utilizzare i tuoi tutorial per creare recensioni sul mio sito,
    fin alla creazione di articoli e ricerche tutto bene. Anche se mi sono inbattuto in 2 problemi non da poco secondo me.
    1 problema: la ricerca mi da l’elenco degli articoli creati, ma non la possibilità diretta di leggere l’articolo interamente. Mi spiego una volta fatta la ricerca, appare la lista degli articoli con quei campi, ma i titoli non hanno il link all’articolo completo, come posso fare perchè ogni risultato mi rimandi al link dello stesso articolo?
    2 problema: inserendo nel menu, lista singola categoria, mi appare l’elenco degli articoli creati, una volta che clicco su articolo mi appare l’articolo creato, ma con in grande anche il titolo della categoria, come posso eliminare questo sgradevole titolo di categoria

      • Ciao James,
        se vuoi che un campo creato con seblod sia un link all’articolo completo, nel List & Search Type del tuo form di ricerca, nel tab list selezioni il pulsante con il numero 2 dal menù verticale di destra, nel campo che vuoi far diventare link, seleziona il valore view nel menù a tendina, e poi salva.
        Per eliminare la categoria dall’articolo, devi andare da gestione articoli – opzioni, sezione categoria, e selezioni nascondi, e poi salva

        a presto :-)

            ciao, grazie per le spiegazioni, mi son state utili anche se parzialmente ero riuscito a trovare la spiegazione smanettando un po :)
            ho un altro problema: inserendo la gallery fotografica, settando i parametri come mi hai detto tu, non riesco ad aprire l’immagine allargata, mi resta l’immagine nelle dimensioni del thumb.
            puoi aiutarmi, sicuramente c’è qualcosa che devo settare nella configurazione

              • Ciao james,
                nella sezione content del tuo form, devi selezionare dal menu di destra il numero 2, nella colonna Typography, selezionare il valore image, in riferimento al campo gallery.
                a presto

    ho dato un occhio al tuo motore di ricerca immobiliare.
    io incappo sempre nello stesso problema nonostante i tentativi. una volta creata la ricerca (articoli come categorie) mi appare sempre la lista completa, al momento della prima ricerca (overo quando clicco dal menu la voce ricerca).
    nella tua demo invece solo dopo aver cliccato il bottone cerca ti appare la lista degli articoli. Io vorrei fare la stessa cosa, iniziare con nessuna lista e solo dopo aver inserito i campi di ricerca avere la lista. Ho provato anche a nascondere dalla configurazione, mettendo “nascondi lista” ma in quel caso nessuna lista mi appare neanche dopo aver inserito i campi di ricerca specifici

      • Ciao james,
        Per far elencare tutti gli articoli dopo la ricerca, devi modificare la voce di menù che serve per accedere al form di ricerca, nel campo “Search? (on 1st load) ” selezionare No,

        a presto :-)

    altro problema che mi piacerebbe risolvere è la possibilità che una volta effettuata la ricerca e non aver ottenuto alcun risultato, l’utente potesse creare la categoria e l’articolo in contemporanea.
    per spiegarmi meglio. diciamo che un utente ricerca un numero di telefono (categoria) e non lo trova. a quel punto può iniziare a scrivere l’articolo, creando sia l’articolo che la categoria, che in questo caso sarà il numero di telefono.

    allo stesso modo vorrei sapere se una volta incontrato un articolo è possibile che un altro utente scriva un altro articolo (relativo allo stesso numero) partendo dalla stessa categoria o dallo stesso articolo appena letto

      • ciao james,
        non puoi creare contemporaneamente un articolo e una categoria, devi prima creare la categoria e poi l’articolo riferito alla categoria.

    non ho capito la configurazione del tasto “cerca”.
    Volevo selezionare gli articoli per utente.

      • Ciao leandro,
        il pulsante cerca è un campo di tipo submit, type con il valore button, e Task puoi selezionare il valore save.
        questo pulsante permette di innescare la ricerca.

        a presto

I commenti sono chiusi.