Se raccogli feedback, recensioni e altre informazioni tramite moduli, puoi rendere questi dati ricercabili sul tuo sito WordPress.
Sfortunatamente, la funzione di ricerca predefinita di WordPress non include i dati dei moduli. Ciò significa che informazioni preziose sono essenzialmente nascoste agli utenti.
Ma con SearchWP, puoi facilmente includere gli invii dei moduli nel processo di ricerca. Sia che tu stia gestendo sondaggi, recensioni o qualsiasi altro tipo di modulo, SearchWP ti aiuterà a rendere questi contenuti scopribili.
In questo articolo, ti mostreremo come includere gli invii dei moduli di WordPress nei risultati di ricerca.
Perché includere gli invii dei moduli nella ricerca di WordPress?
Rendere ricercabili gli invii dei moduli in WordPress può migliorare significativamente la funzionalità e l'esperienza utente del tuo sito web.
Gli utenti spesso inviano informazioni tramite moduli e potrebbero aver bisogno di accedere o ricordare ciò che hanno inviato in seguito. Includendo gli invii dei moduli nella ricerca, consenti agli utenti di trovare rapidamente i propri invii senza dover contattare gli amministratori del sito.
Ad esempio, se un utente ha inviato una richiesta di supporto o una candidatura, può facilmente cercare e trovare il proprio invio per verificarne lo stato o rivedere i dettagli.
Gli invii dei moduli contengono anche contenuti di valore che potrebbero non essere facilmente disponibili altrove sul tuo sito. Questi potrebbero includere contenuti generati dagli utenti da sondaggi, moduli di feedback o moduli di commento.
Aiuta anche a evitare duplicazioni, poiché gli utenti possono cercare un particolare invio di modulo invece di crearne uno nuovo.
Detto questo, diamo un'occhiata a come puoi facilmente includere gli invii dei moduli nella ricerca di WordPress.
Rendi ricercabili gli invii dei moduli in WordPress
Il modo più semplice per cercare diversi moduli in WordPress è utilizzare SearchWP. È il miglior plugin di ricerca per WordPress e offre potenti estensioni per alcuni dei plugin per moduli di contatto più diffusi.
Attualmente, SearchWP supporta WPForms e Gravity Forms. Rende facile aggiungere moduli da questi plugin come origine del motore di ricerca, in modo che gli utenti possano facilmente cercare e scoprire i contenuti dei moduli.
Oltre a ciò, SearchWP è progettato per superare i limiti della ricerca predefinita e indicizzare tutto ciò che conta sul tuo sito web. Ciò include campi personalizzati, categorie, tag, dettagli del prodotto, file multimediali e altro.
Innanzitutto, dovrai visitare il sito Web di SearchWP e creare un nuovo account.

Una volta effettuata la registrazione, il passo successivo è scaricare il plugin SearchWP.
Per farlo, vai semplicemente nell'area del tuo account e passa alla scheda 'Download'. Da qui, puoi fare clic sul pulsante Scarica SearchWP e salvare il file del plugin sul tuo computer.

Da qui, puoi installare e attivare il plugin SearchWP sul tuo sito.
Se hai bisogno di aiuto con questo, consulta questa guida su come installare il plugin di WordPress.
Dopo aver attivato il plugin, vedrai la procedura guidata di configurazione di SearchWP. Fai semplicemente clic sul pulsante 'Avvia procedura guidata' e segui le istruzioni sullo schermo per configurare il plugin.

Successivamente, dovrai installare un'estensione per rendere ricercabili le richieste dei moduli in WordPress. Per questo tutorial, useremo l'estensione WPForms e renderemo ricercabili le voci del nostro modulo di invio eventi.
Puoi semplicemente andare su SearchWP » Estensioni dal pannello di amministrazione di WordPress e navigare all'estensione Source – WPForms. Da qui, fai clic sul pulsante 'Installa'.

Dovresti vedere che l'estensione verrà ora installata e attivata automaticamente, con lo Stato che cambierà da Non installato a Attivo.
Personalizza il Motore di Ricerca per Includere le Richieste dei Moduli
Ora che hai configurato SearchWP sul tuo sito e aggiunto l'estensione WPForms, il passo successivo è personalizzare le impostazioni del motore di ricerca per rendere ricercabili le richieste dei moduli.
Innanzitutto, dovrai accedere alla pagina SearchWP » Algoritmo dal tuo dashboard di WordPress e aggiungere un nuovo motore. Fai semplicemente clic sul pulsante 'Aggiungi Nuovo' per continuare.

Successivamente, si aprirà una nuova finestra con il tuo motore Supplementare. Qui puoi selezionare le origini per il tuo nuovo motore di ricerca.
Per impostazione predefinita, SearchWP includerà Articoli, Pagine, Utenti e Media insieme a tutti i moduli che hai creato in WPForms come origini.

Per limitare la ricerca solo a WPForms, puoi deselezionare tutte le altre origini tranne i moduli. Se devi rendere ricercabile solo un modulo specifico, puoi semplicemente selezionare quel modulo particolare.
Ad esempio, selezioneremo solo il Modulo di Invio Eventi come origine per questo tutorial. In questo modo, gli utenti potranno cercare facilmente diversi eventi inviati tramite il modulo.

Puoi anche cambiare il nome del nuovo motore da Supplementare a qualsiasi altro nome desideri nel campo 'Etichetta Motore'. Ad esempio, chiameremo il nostro nuovo motore 'Motore WPForms'.
Al termine, fai clic sul pulsante 'Fatto'.
Successivamente, vedrai ogni modulo come origine nel motore. Puoi quindi selezionare quali campi del modulo desideri utilizzare come attributi.
Gli attributi sono i campi per cui desideri cercare una data origine. Per modificarli, fai semplicemente clic sul pulsante 'Aggiungi/Rimuovi Attributi'.

Successivamente, si aprirà una piccola finestra in cui potrai selezionare quali attributi utilizzare.
Semplicemente deseleziona i campi del modulo che non desideri che l'origine cerchi.

Dopo aver scelto gli attributi, fai semplicemente clic sul pulsante 'Fatto'.
Puoi anche spostare il cursore per regolare i pesi di rilevanza. Più a destra è impostato il cursore per un attributo, maggiore sarà l'influenza di tale attributo sulla posizione nei risultati di ricerca.

Successivamente, dovrai scorrere fino in cima e fare clic sul pulsante Salva per memorizzare le modifiche.
Ora hai creato con successo un nuovo motore di ricerca che cerca le richieste dei moduli.

Visualizzazione delle Voci del Modulo come Risultati di Ricerca
Ora che hai creato un motore di ricerca che cerca le richieste dei moduli, il passo successivo è visualizzare le voci di WPForms nei risultati di ricerca.
Nota: Una cosa importante da ricordare è che avrai bisogno di competenze di sviluppo o dovrai assumere uno sviluppatore per implementare il codice sul tuo sito. In questo modo, le voci del tuo modulo appariranno come risultati di ricerca utilizzando SearchWP.
Innanzitutto, dovrai configurare un modulo di ricerca per il Motore Supplementare che hai creato in precedenza. Inizia creando un <input> con un nome diverso da s, poiché quel nome attiverà una ricerca nativa di WordPress.
Puoi iniziare con il seguente codice:
<form role="search" method="get" class="search-form"
action="<?php echo site_url( 'search-results/' ); ?>">
<label>
<span class="screen-reader-text">
<?php echo _x( 'Search for:', 'label' ) ?>
</span>
<input type="search" class="search-field"
name="searchwp"
placeholder="<?php echo esc_attr_x( 'Search...', 'placeholder' ) ?>"
value="<?php echo isset( $_GET['searchwp'] ) ? esc_attr( $_GET['searchwp'] ) : '' ?>"
title="<?php echo esc_attr_x( 'Search for:', 'label' ) ?>" />
</label>
<input type="submit" class="search-submit"
value="<?php echo esc_attr_x( 'Search', 'submit button' ) ?>" />
</form>
Ci sono due cose da notare riguardo a questo snippet:
- Il nome <input> utilizzato è searchwp
- L'azione del modulo punta a site_url( ‘search-results/’ ). Ciò significa che se l'URL del tuo sito è example.com, questo modulo reindirizzerà a example.com/search-results/ al momento dell'invio. Questa guida presuppone che l'URL punti a una Pagina che hai creato allo scopo di visualizzare i risultati del Motore Supplementare.
Quando crei il tuo modulo di ricerca, ha un'azione che punta a un URL designato come Pagina per visualizzare i tuoi risultati. Per recuperare i risultati da SearchWP, dovrai prima creare un Modello di Pagina personalizzato.
Per maggiori dettagli sul codice del modulo di ricerca e sul modello di pagina, fai riferimento alla nostra documentazione sul Motore Supplementare.
Ecco un modello di base con cui puoi lavorare, basato sul codice mostrato nella nostra documentazione sul Motore Supplementare:
<?php
/* Template Name: SearchWP Results */
global $post;
// Retrieve applicable query parameters.
$search_query = isset( $_GET['searchwp'] ) ? sanitize_text_field( $_GET['searchwp'] ) : null;
$search_page = isset( $_GET['swppg'] ) ? absint( $_GET['swppg'] ) : 1;
// Perform the search.
$search_results = [];
$search_pagination = '';
if ( ! empty( $search_query ) && class_exists( '\\SearchWP\\Query' ) ) {
$searchwp_query = new \SearchWP\Query( $search_query, [
'engine' => 'wpformsengine', // The Engine name.
'fields' => 'all', // Load proper native objects of each result.
'page' => $search_page,
] );
$search_results = $searchwp_query->get_results();
$search_pagination = paginate_links( array(
'format' => '?swppg=%#%',
'current' => $search_page,
'total' => $searchwp_query->max_num_pages,
) );
}
get_header(); ?>
<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">
<header class="page-header">
<h1 class="page-title">
<?php if ( ! empty( $search_query ) ) : ?>
<?php printf( __( 'Search Results for: %s' ), esc_html( $search_query ) ); ?>
<?php else : ?>
SearchWP Supplemental Search
<?php endif; ?>
</h1>
<!-- BEGIN Supplemental Engine Search form -->
<form role="search" method="get" class="search-form"
action="<?php echo site_url( 'search-results/' ); ?>">
<label>
<span class="screen-reader-text">
<?php echo _x( 'Search for:', 'label' ) ?>
</span>
<input type="search" class="search-field"
name="searchwp"
placeholder="<?php echo esc_attr_x( 'Search...', 'placeholder' ) ?>"
value="<?php echo isset( $_GET['searchwp'] ) ? esc_attr( $_GET['searchwp'] ) : '' ?>"
title="<?php echo esc_attr_x( 'Search for:', 'label' ) ?>" />
</label>
<input type="submit" class="search-submit"
value="<?php echo esc_attr_x( 'Search', 'submit button' ) ?>" />
</form>
<!-- END Supplemental Engine Search form -->
</header>
<?php if ( ! empty( $search_query ) && ! empty( $search_results ) ) : ?>
<?php foreach ( $search_results as $search_result ) : ?>
<article class="page hentry search-result">
<?php
switch( get_class( $search_result ) ) {
case 'SearchWP\Sources\WPForms\Entry':
$form_id = $search_result->form_id;
$entry_id = $search_result->entry_id;
// NOTE: WPForms Field values are stored in the entry fields property as an array.
// Each field has the array key equal to the order they were added to the form editor.
$fields = $search_result->fields;
?>
<div class="result">
Form ID: <?php echo esc_html( $form_id ); ?><br>
Entry ID: <?php echo esc_html( $entry_id ); ?><br>
Name: <?php echo esc_html( $fields[0]['value'] ); ?><br>
Email: <?php echo esc_html( $fields[1]['value'] ); ?><br>
Subject: <?php echo esc_html( $fields[5]['value'] ); ?><br>
Comment: <?php echo esc_html( $fields[2]['value'] ); ?><br>
</div>
<?php
break;
}
?>
</article>
<?php endforeach; ?>
<?php if ( $searchwp_query->max_num_pages > 1 ) : ?>
<div class="navigation pagination" role="navigation">
<h2 class="screen-reader-text">Results navigation</h2>
<div class="nav-links"><?php echo wp_kses_post( $search_pagination ); ?></div>
</div>
<?php endif; ?>
<?php elseif ( ! empty( $search_query ) ) : ?>
<p>No results found, please search again.</p>
<?php endif; ?>
</main> <!-- .site-main -->
</div> <!-- .content-area -->
<?php get_footer(); ?>
Successivamente, il codice sopra per il modello di pagina del motore supplementare deve essere adattato per le voci di WPForms.
Ecco il codice per WPForms che puoi utilizzare:
<?php
$searchwp = new \SearchWP\Query( 'marketing', [
'engine' => 'wpforms',
'fields' => 'all',
] );
foreach ( $searchwp->results as $result ) {
switch ( get_class( $result ) ) {
case 'SearchWP\Sources\WPForms\Entry':
$form_id = $search_result->form_id;
$entry_id = $search_result->entry_id;
// NOTE: WPForms Field values are stored in the entry fields property as an array.
// Each field has the array key equal to the order they were added to the form editor.
$fields = $search_result->fields;
?>
<div class="result">
Form ID: <?php echo esc_html( $form_id ); ?><br>
Entry ID: <?php echo esc_html( $entry_id ); ?><br>
Name: <?php echo esc_html( $fields[0]['value'] ); ?><br>
Email: <?php echo esc_html( $fields[1]['value'] ); ?><br>
Subject: <?php echo esc_html( $fields[5]['value'] ); ?><br>
Comment: <?php echo esc_html( $fields[2]['value'] ); ?><br>
</div>
<?php
break;
default:
// Another Source was added to the SearchWP Engine.
print_r( $result );
}
}
Nello snippet di codice, assicurati di sostituire wpforms con il nome del tuo motore in questa parte: ‘engine’ => ‘wpforms’,
Puoi trovare il nome del tuo nuovo motore nella pagina SearchWP » Algoritmo. Ad esempio, sostituiremo wpforms con wpformsengine nello snippet di codice.

Per saperne di più sulla visualizzazione delle voci di WPForms come risultati, fai riferimento alla nostra documentazione su WPForms.
Infine, se hai bisogno di ulteriore assistenza, il nostro team è sempre qui per aiutarti. Raggiungi semplicemente il nostro team di supporto e saremo felici di aiutarti!
Speriamo che questo articolo ti abbia aiutato a imparare come includere l'invio di moduli WordPress nei risultati di ricerca. Potresti anche voler consultare le nostre guide su come aggiungere campi Meta Box alla ricerca di WordPress e come monitorare l'attività di ricerca del tuo sito WordPress.
Pronto a creare un'esperienza di ricerca WordPress migliore e più personalizzata? Inizia oggi stesso con SearchWP!


