Se si utilizzano tipi di post personalizzati, si può creare un modulo che consenta ai visitatori di cercare solo quei contenuti. Questo può aiutare le persone a trovare ciò che stanno cercando e a rimanere sul vostro sito più a lungo.
Nel corso degli anni, abbiamo utilizzato tipi di post personalizzati su molti dei nostri siti web per migliorare l’organizzazione dei contenuti. Inoltre, abbiamo aggiunto moduli di ricerca specifici per questi tipi di post, il che ha portato a un notevole aumento delle visualizzazioni di questi post e annunci.
Prima questi post erano più difficili da scoprire, ma ora, con la funzionalità di ricerca, sono diventati molto più facili da trovare, aiutando più utenti a impegnarsi con i contenuti.
In questo articolo vi mostreremo come creare facilmente un modulo di ricerca avanzata per i post type personalizzati in WordPress, passo dopo passo.
Perché creare un modulo di ricerca avanzata per i tipi di post personalizzati?
I tipi di post personalizzati consentono di andare oltre i post e le pagine e di creare diversi tipi di contenuti per il vostro sito web. Ad esempio, qui a WPBeginner usiamo i tipi di post personalizzati per organizzare le nostre sezioni Offerte e Glossario.
Tuttavia, WordPress non include i tipi di post personalizzati nei risultati di ricerca per impostazione predefinita. Di conseguenza, i visitatori potrebbero perdere contenuti importanti e voi perdereste pagine viste.
Fortunatamente, è possibile includere i tipi di post personalizzati nei risultati della ricerca utilizzando un plugin di ricerca per WordPress. Potete anche fare un passo avanti e creare un modulo avanzato che cerchi solo i tipi di post personalizzati.
Per esempio, in WPBeginner abbiamo creato dei moduli di ricerca di tipo post personalizzato sulle nostre pagine Offerte e Glossario.
Spesso, questo tipo di modulo di ricerca avanzata aiuta i visitatori a trovare più rapidamente ciò che cercano, migliorando l’esperienza del visitatore e riducendo la frequenza di rimbalzo.
Innanzitutto, potete consultare la nostra guida su come creare tipi di post personalizzati in WordPress. Poi, potete seguire il nostro tutorial su come creare un modulo di ricerca avanzato in WordPress per i tipi di post personalizzati.
Creare un nuovo algoritmo di ricerca per WordPress con un plugin per WordPress
Il modo più semplice per creare un modulo di ricerca avanzata per i tipi di post personalizzati è utilizzare il plugin SearchWP. È il miglior plugin di ricerca e consente di cercare contenuti che WordPress ignora per impostazione predefinita.
Ad esempio, potete rendere ricercabili i commenti dei blog e aggiungere l’indicizzazione e la ricerca dei PDF al vostro sito web.
Come configurare SearchWP
La prima cosa da fare è installare e attivare il plugin SearchWP. Per maggiori dettagli, consultate la nostra guida passo-passo su come installare un plugin di WordPress.
Dopo l’attivazione, è necessario andare su SearchWP ” Impostazioni e fare clic sulla scheda ‘Generale’.
Ora è necessario inserire la propria licenza nella casella “Chiave di licenza”. Potete trovare queste informazioni nel vostro account sul sito di SearchWP.
Una volta terminato, assicuratevi di fare clic sul pulsante “Verifica chiave”.
Creare un algoritmo di ricerca personalizzato
Il prossimo compito è la creazione di un algoritmo di ricerca personalizzato. Questo algoritmo consente di specificare i contenuti che SearchWP include nei suoi risultati di ricerca, come pagine, post, media e qualsiasi tipo di post personalizzato.
Per iniziare, è necessario andare su SearchWP “ Algoritmo nella dashboard di amministrazione di WordPress.
Qui è presente una sezione per ogni tipo di contenuto che SearchWP include nei suoi risultati di ricerca.
Per aggiungere il tipo di post personalizzato, basta fare clic sul pulsante “Fonti e impostazioni”.
Nel popup che appare, selezionare la casella accanto a ciascun tipo di post personalizzato che si desidera includere nei risultati della ricerca.
Dopodiché, fare clic su “Fatto”.
SearchWP aggiungerà una nuova sezione per ogni tipo di post personalizzato. Ogni sezione mostra tutti gli attributi che SearchWP includerà nelle sue ricerche, come il titolo, lo slug e l’estratto.
Se si desidera aggiungere o rimuovere attributi, è sufficiente fare clic su “Aggiungi/rimuovi attributi”.
Nel popup, selezionare la casella accanto a ciascun attributo che si desidera includere nei risultati della ricerca.
Per rimuovere un attributo, si può invece deselezionare la relativa casella.
In questo popup, è possibile anche rendere i campi personalizzati ricercabili in WordPress.
Quando si è soddisfatti delle modifiche apportate, fare clic su “Fatto”.
Si noterà che ogni attributo ha anche un cursore di rilevanza dell’attributo dell’applicazione. Questo controlla il modo in cui SearchWP classifica il contenuto quando costruisce la pagina dei risultati di ricerca in WordPress.
Se un attributo ha una rilevanza elevata, avrà un impatto maggiore sui risultati di ricerca. Al contrario, i contenuti che corrispondono a un attributo meno rilevante appariranno più in basso nei risultati di ricerca.
Ad esempio, se si sposta il cursore “Titolo” a destra e il cursore “Contenuto” a sinistra, il titolo di un post avrà più peso del contenuto.
Ogni sito web WordPress è unico, quindi è possibile provare diverse impostazioni di rilevanza per verificare quali siano i risultati di ricerca più accurati e utili.
Ad esempio, se avete creato un tipo di post personalizzato “recensioni dei clienti” per il vostro negozio online, si tratta di un contenuto importante, per cui è opportuno attribuirgli un’elevata rilevanza.
Quando si è soddisfatti dell’impostazione della funzione di ricerca, basta scorrere fino alla parte superiore della schermata e fare clic sul pulsante “Salva”.
SearchWP ricostruirà ora l’indice automaticamente. A seconda della velocità della vostra connessione Internet e del vostro provider di hosting WordPress, questa operazione potrebbe richiedere alcuni minuti.
Non appena vedrete “Stato dell’indice 100%”, saprete che SearchWP ha aggiunto i vostri tipi di post personalizzati al suo indice di ricerca.
Il vostro blog, sito web o mercato online WordPress includerà ora i tipi di post personalizzati nei risultati di ricerca.
Creare un modulo di ricerca avanzata per i tipi di post personalizzati
Fatto questo, si è pronti a creare un modulo avanzato che ricerca solo i tipi di post personalizzati.
Per iniziare, andate su SearchWP ” Moduli di ricerca e fate clic sul pulsante “Aggiungi nuovo”.
Questo crea un nuovo modulo, pronto per essere personalizzato.
Per assegnare un nome univoco a questo modulo, fare clic sull’icona della matita accanto a “Cerca modulo 1”.
È ora possibile digitare un nome per il modulo di ricerca personalizzato.
Questo è solo un riferimento, quindi potete usare qualsiasi cosa che vi aiuti a identificare il modulo nella vostra dashboard di WordPress. Questo è particolarmente importante se si intende creare più moduli di ricerca in WordPress.
Successivamente, è possibile scegliere il layout che si desidera utilizzare utilizzando le miniature di ‘Layout Theme’.
Basta fare clic sui diversi temi per vedere un’anteprima di come questo stile apparirà sul vostro sito web WordPress.
Per creare un modulo di ricerca per i tipi di post personalizzati, in genere si usa la modalità “Base” o “Ricerca rapida”.
Questi stili non consentono ai visitatori di effettuare ricerche per categoria, il che contribuisce a farli concentrare sui tipi di post personalizzati.
Dopo aver preso la decisione, scorrere fino alla sezione “Styling personalizzato”.
Le impostazioni visualizzate possono variare a seconda del layout del tema. Ad esempio, se si è selezionato “Ricerca rapida”, l’impostazione “Ricerca rapida” sarà attivata per impostazione predefinita.
È possibile disattivare e attivare le diverse opzioni utilizzando le relative levette.
L’anteprima dal vivo si aggiorna automaticamente man mano che si apportano le modifiche, in modo da poter provare diverse impostazioni per vedere quale funziona meglio.
Per impostazione predefinita, il modulo cerca media, pagine e post e ignora i tipi di post personalizzati. Per includere i tipi di post personalizzati, è necessario trovare il campo “Tipo di ricerca” e fare clic su di esso.
È ora possibile digitare il nome di ciascun tipo di post personalizzato.
Quando appare il tipo di post giusto, fate un clic per aggiungerlo alla ricerca.
Si desidera cercare solo i post type / tipo di contenuto personalizzati e ignorare tutti gli altri contenuti?
Quindi fate clic sulla piccola “X” accanto a “Media”, “Pagine” e “Messaggi”.
Fatto questo, il modulo cercherà solo i tipi di post personalizzati.
Quando si è soddisfatti di come è impostato il modulo, scorrere fino alla sezione “Stile del modulo”. Qui è possibile scegliere tra diversi stili di modulo, aggiungere un bordo, modificare la dimensione dei caratteri e altro ancora.
In “Stile pulsante” è possibile personalizzare il pulsante “Cerca” che appare nel modulo.
Quando si è soddisfatti della configurazione del modulo, scorrere fino alla parte superiore dello schermo e fare clic su “Salva” per memorizzare le impostazioni.
Come aggiungere i tipi di post personalizzati a WordPress
Ora siete pronti ad aggiungere il modulo di ricerca a WordPress utilizzando uno shortcode o un blocco.
Il metodo più semplice è quello di usare un blocco, quindi andate alla pagina o al post in cui volete aggiungere il modulo del tipo di post personalizzato.
A questo punto è possibile fare clic sull’icona “+” e digitare “Modulo di ricerca”.
Quando appare il blocco giusto, fare clic su di esso.
Quindi, aprire il menu a discesa “Seleziona un modulo” e scegliere il modulo di ricerca creato durante questa esercitazione.
Quando si è pronti a rendere operativo il modulo di ricerca, è sufficiente fare clic su “Aggiorna” o “Pubblica”. Ora è possibile visitare il sito web per vedere il modulo di ricerca in azione.
Un’altra opzione è quella di aggiungere il modulo di ricerca utilizzando uno shortcode.
Per ottenere lo shortcode, è necessario andare su SearchWP “ Moduli di ricerca. Qui, trovare il modulo di ricerca che si desidera mostrare e copiare il valore nella colonna ‘Shortcode’.
Ora è possibile aggiungere lo shortcode a qualsiasi pagina, pubblicazione o area predisposta per i widget. Per istruzioni passo-passo su come farlo, consultate la nostra guida su come add-on uno shortcode in WordPress.
Bonus: aggiungere i post type personalizzati al feed RSS
Ora che avete creato un modulo di ricerca per i post type personalizzati, potete anche aggiungerli al vostro feed RSS principale. In questo modo sarà più facile per gli utenti scoprire altri contenuti sul vostro sito web e abbonarsi.
Inoltre, la possibilità di inserire post type personalizzati nel feed RSS principale può migliorare la SEO del sito.
Per farlo, è necessario aggiungere il seguente codice personalizzato al file functions.php. Tenete presente che può essere un po’ pericoloso perché il più piccolo può rompere il vostro sito web.
function myfeed_request($qv) {
if (isset($qv['feed']))
$qv['post_type'] = get_post_types();
return $qv;
}
add_filter('request', 'myfeed_request');
Per questo motivo consigliamo di utilizzare WPCode. È il miglior plugin per gli snippet di codice di WordPress e il modo più sicuro per aggiungere codice personalizzato.
Dopo l’attivazione del plugin, è sufficiente visitare la pagina Code Snippets ” + Add Snippet e scegliere l’opzione ‘Add Your Custom Code (New Snippet)’.
In questo modo si accede alla pagina “Crea snippet personalizzato”, dove si deve aggiungere il nome dello snippet e scegliere “PHP Snippet” come tipo di codice.
Successivamente, è possibile aggiungere il codice e attivare l’interruttore “Inattivo” su “Attivo”.
Quindi, fare clic sul pulsante “Salva frammento” per salvare le impostazioni. I post type personalizzati sono stati aggiunti al feed RSS principale di WordPress.
Per maggiori dettagli, consultate il nostro tutorial su come add-on di post type personalizzati al feed RSS principale di WordPress.
Speriamo che questo articolo vi abbia aiutato a capire come creare un modulo di ricerca avanzata in WordPress per i tipi di post personalizzati. Potreste anche voler consultare il nostro tutorial su come utilizzare più moduli di ricerca in WordPress e la nostra guida su come escludere pagine specifiche, autori e altro dalla ricerca di WordPress.
Se questo articolo vi è piaciuto, iscrivetevi al nostro canale YouTube per le esercitazioni video su WordPress. Potete trovarci anche su Twitter e Facebook.
tinhbeng
Hi,
How to me can add product post type in here?
Thank,
vijay
Thanks for the information, I want to know whether there is any way I can have dropdown style of search forms, as I have large number of post types, it would make it look ugly if I put all of them below search bar.
Penguin
Hi, Thanks a lot. This works pretty good for me. I am using dropdown instead of checkbox. But how can I style it to make it smilar to the one in LinkedIn header search section? Does that requires javascript? Do I use font icons for that? I am using fontawesome in my header. But I don’t know how to integrate this with fontawesome in a dropdown.
mayur
Sir.. can you plz attach screenshot with tutorials afterwords?? i think it’s more helpful for us..
Sean
Check out WP Advanced Search: http://wpadvancedsearch.com/
We’ve got support for taxonomies, custom fields, and just about everything else that WP_Query supports.
Thad
Thanks for sharing Sean, I also found this plugin that works fairly well for those not comfortable with diving into the PHP: http://wordpress.org/plugins/advance-wp-query-search-filter/
Brad
How could I use this to search a custom table of data. This is for a sports team site, and basically, I need a search box where someone can “Search by”: Last name, First name, or Team.
So how can I search by a field name?
Darren
This is an awesome tutorial, thank you.
Is there a way that I could mix this with categories? So that I could have both custom post types and categories selectable?
Thanks again :).
Jonathan Stevens
Hi Darren,
I had the same problem. Ended up with this messy solution, but it worked:
http://antimatterdesign.com/how-to-create-a-wordpress-advanced-search-form-from-scratch/
ONEEEZY
Dang.. still nothing. . .
Marie
Hi, there isn’t a way to tell the engine to automatically list all terms or tags or custom field? thanks
Editorial Staff
Not yet.
Admin
Paul
This is an aspect of WordPress that could be improved, I agree.
If you don’t want to code, you can try Pippin’s search plugin:
http://pippinsplugins.com/advanced-search-shortcode/
Elliott
Nice tutorial… Am designing a custom search for my new site at the moment.
Curious why you don’t think searching on pages is a good idea?
Editorial Staff
You can search pages except in most cases your about page, contact page, legal page, privacy policy page are mostly irrelevant.
Admin
Fakeuser
I’m getting this error after changing the name of the input fields to s[]
Warning: stripslashes() expects parameter 1 to be string, array given in wp-includes\query.php on line 2179
I’ve changed the call to stripslashes() call to stripslashes_deep() but it broke other thigs… any sugestions?
Benjamin Wilde
I’m looking for a way to have a form with separate controls for location AND category, both in dropdown boxes. Obviously I can do this, but I have no idea how to do a multiple-query search in Wordpress. Any ideas?
Aldo Valverde
Do you think is it possible to do the same but including Post Type Categories as well….
…I mean, the same Post Type checkboxes and when user select an specific checkbox that appear-down other checkboxes but as categories and filter even more the Search of Wordpress ?
Rocky Ouprasith
Awesome! thanks for the help!
there is one thing though…
my post types are all styled differently.
how can I assign the template of a post type with the correct post types?
thanks!
Editorial Staff
Use CSS classes. Each post outputs its own post classes i.e categories, post types etc.
Admin
Merianos Nikos
Very nice article
SDesign
Great tutorial! One question though: What would the syntax be for making the checkboxes in the form use taxonomies rather than post types?
Would something like this work?:
Perhaps this is worthy of another tutorial. Any additional help is greatly appreciated.
Thad
Ever come across anything that explains this?
SDESIGN
No, I decided to go with custom post types instead.
If anyone has any insight, on this it would be greatly appreciated.
The specific question is how to make something like this work using taxonomies instead of post types?
CathieHeart
Hi, you wouldn’t happen to also have a section to add maybe for those of us wanting to a dropdown menu search form interface rather than checkboxes?
Thanks.
wpbeginner
@CathieHeart That can be accomplished using the similar technique.
mainaPlus
Does this work with a buddypress enabled site?
wpbeginner
@mainaPlus Haven’t tried it with BuddyPress so not sure
Robin
Would this be able to work with a buddypress enabled site?
Editorial Staff
Not sure about that. We don’t have much experience with BuddyPress.
Admin
wpbeginner
Haven’t tried it with BuddyPress so not sure.
Abdelhadi Touil
Very nice tutorial! Thanks.
Herny Louis
Thanks Syed and David. Need to test it on one of my websites. Definitely this kind of categorization will help visitors to do narrow search.
zachshallbetter1
I would love to see a way to do this with custom fields as well.
oneeezy
Yes!
What Zach said…
It would be ideal to have this “Advanced Form” be able to search through custom fields. You could make the ultimate search form this way. Any takers??? C’mon WP Beginner!!