Blog SearchWP

Tutoriels, astuces et ressources WordPress pour vous aider à développer votre entreprise

Comment inclure les soumissions de formulaires WordPress dans les résultats de recherche

Si vous collectez des commentaires, des avis et d'autres informations via des formulaires, vous pouvez rendre ces données consultables sur votre site WordPress.

Malheureusement, la fonction de recherche par défaut de WordPress n'inclut pas les données des formulaires. Cela signifie que des informations précieuses sont essentiellement cachées aux utilisateurs.

Mais avec SearchWP, vous pouvez facilement inclure les soumissions de formulaires dans le processus de recherche. Que vous gériez des sondages, des avis ou tout autre type de formulaire, SearchWP aidera à rendre ce contenu découvrable.

Dans cet article, nous vous montrerons comment inclure les soumissions de formulaires WordPress dans les résultats de recherche.

Note: Before we proceed with the tutorial, please note that showing form entries as search results requires editing code. You need to have an extensive grasp of coding knowledge or need to hire a developer for this to work. If you require any assistance at any point, then please reach out to our support team. We’d be happy to help! 

Pourquoi inclure les soumissions de formulaires dans la recherche WordPress ?

Rendre les soumissions de formulaires consultables dans WordPress peut considérablement améliorer la fonctionnalité et l'expérience utilisateur de votre site Web.

Les utilisateurs soumettent souvent des informations via des formulaires et peuvent avoir besoin d'accéder ou de se souvenir de ce qu'ils ont soumis plus tard. En incluant les soumissions de formulaires dans la recherche, vous permettez aux utilisateurs de trouver rapidement leurs propres soumissions sans avoir à contacter les administrateurs du site.

Par exemple, si un utilisateur a soumis une demande de support ou une candidature, il peut facilement rechercher et trouver sa soumission pour vérifier son statut ou examiner les détails.

Les soumissions de formulaires contiennent également un contenu précieux qui pourrait ne pas être facilement disponible ailleurs sur votre site. Cela pourrait inclure du contenu généré par les utilisateurs provenant de sondages, de formulaires de commentaires ou de formulaires de commentaires.

Cela permet également d'éviter les doublons, car les utilisateurs peuvent rechercher une soumission de formulaire particulière au lieu d'en créer une nouvelle.

Cela dit, jetons un coup d'œil à la façon dont vous pouvez facilement inclure les soumissions de formulaires dans la recherche WordPress.

Rendre les soumissions de formulaires consultables dans WordPress

La manière la plus simple de rechercher différents formulaires dans WordPress est d'utiliser SearchWP. C'est le meilleur plugin de recherche pour WordPress et il offre des extensions puissantes pour certains des plugins de formulaire de contact les plus populaires.

Actuellement, SearchWP prend en charge WPForms et Gravity Forms. Il est facile d'ajouter des formulaires de ces plugins comme source de moteur de recherche, afin que les utilisateurs puissent facilement rechercher et découvrir le contenu des formulaires.

En plus de cela, SearchWP est conçu pour surmonter les limitations de la recherche par défaut et indexer tout ce qui compte sur votre site Web. Cela inclut les champs personnalisés, les catégories, les étiquettes, les détails des produits, les fichiers multimédias, et plus encore.

Tout d'abord, vous devrez visiter le site Web de SearchWP et créer un nouveau compte.

SearchWP

Une fois que vous vous êtes inscrit, l'étape suivante consiste à télécharger le plugin SearchWP.

Pour ce faire, accédez simplement à votre espace client et basculez vers l'onglet « Téléchargements ». À partir de là, vous pouvez cliquer sur le bouton Télécharger SearchWP et enregistrer le fichier du plugin sur votre ordinateur.

Télécharger le plugin SearchWP depuis l'espace compte

À partir de là, vous pouvez installer et activer le plugin SearchWP sur votre site.

Si vous avez besoin d'aide pour cela, veuillez consulter ce guide sur comment installer le plugin WordPress.

Après avoir activé le plugin, vous verrez l'assistant de configuration de SearchWP. Cliquez simplement sur le bouton « Démarrer l’assistant de configuration » et suivez les instructions à l’écran pour configurer le plugin.

Assistant d'intégration SearchWP

Ensuite, vous devrez installer une extension pour rendre les soumissions de formulaires consultables dans WordPress. Pour ce tutoriel, nous utiliserons l'extension WPForms et rendrons les entrées de notre formulaire de soumission d'événements consultables.

Vous pouvez simplement vous rendre sur SearchWP » Extensions depuis le panneau d'administration de WordPress et naviguer vers l'extension Source – WPForms. À partir de là, cliquez sur le bouton « Installer ».

Installer l'extension WPForms

Vous devriez voir que l'extension s'installera et s'activera automatiquement, le statut passant de Non installé à Actif.

Personnaliser le moteur de recherche pour inclure les soumissions de formulaires

Maintenant que vous avez configuré SearchWP sur votre site et ajouté l'extension WPForms, l'étape suivante consiste à personnaliser les paramètres du moteur de recherche pour rendre les soumissions de formulaires consultables.

Tout d'abord, vous devrez vous rendre sur la page SearchWP » Algorithme depuis votre tableau de bord WordPress et ajouter un nouveau moteur. Cliquez simplement sur le bouton « Ajouter » pour continuer.

Ajouter un nouveau moteur

Ensuite, une nouvelle fenêtre s'ouvrira avec votre moteur supplémentaire. Ici, vous pouvez sélectionner les sources pour votre nouveau moteur de recherche.

Par défaut, SearchWP inclura les Articles, Pages, Utilisateurs et Médias, ainsi que tous les formulaires que vous avez créés dans WPForms comme sources.

Ajouter un nouveau moteur et sélectionner vos formulaires

Pour limiter la recherche uniquement à WPForms, vous pouvez décocher toutes les autres sources à l'exception des formulaires. Si vous souhaitez rendre consultable uniquement un formulaire spécifique, vous pouvez simplement sélectionner ce formulaire particulier.

Par exemple, nous sélectionnerons uniquement le formulaire de soumission d'événements comme source pour ce tutoriel. De cette façon, les utilisateurs pourront facilement rechercher les différents événements soumis via le formulaire.

Sélectionner uniquement les formulaires WPForms

Vous pouvez également changer le nom du nouveau moteur de « Supplémentaire » à ce que vous voulez sous le champ « Étiquette du moteur ». Par exemple, nous nommerons notre nouveau moteur « Moteur WPForms ».

Lorsque vous avez terminé, cliquez sur le bouton « Terminé ».

Ensuite, vous verrez chaque formulaire comme une source dans le moteur. Vous pourrez alors sélectionner les champs du formulaire que vous souhaitez utiliser comme attributs.

Les attributs sont les champs que vous souhaitez rechercher pour une source donnée. Pour les modifier, cliquez simplement sur le bouton « Ajouter/Supprimer des attributs ».

Modifier les attributs pour WPForms

Ensuite, une petite fenêtre s'ouvrira où vous pourrez sélectionner les attributs à utiliser.

Décochez simplement les champs du formulaire que vous ne souhaitez pas que la source recherche.

Sélectionner les attributs à utiliser

Après avoir choisi les attributs, cliquez simplement sur le bouton « Terminé ».

Vous pouvez également déplacer le curseur pour ajuster les poids de pertinence. Plus le curseur est déplacé vers la droite pour un attribut, plus cet attribut influence la position dans les résultats de recherche.

Déplacer le curseur pour le moteur WPForms

Ensuite, vous devrez faire défiler jusqu'en haut et cliquer sur le bouton Enregistrer pour sauvegarder vos modifications.

Vous avez maintenant créé avec succès un nouveau moteur de recherche qui recherche les soumissions de formulaires.

Enregistrer les paramètres du moteur

Afficher les entrées du formulaire comme résultats de recherche

Maintenant que vous avez créé un moteur de recherche qui recherche les soumissions de formulaires, l'étape suivante consiste à afficher les entrées WPForms dans les résultats de recherche.

Note : Il est important de se rappeler que vous aurez besoin de compétences en développement ou d'embaucher un développeur pour implémenter le code sur votre site. Ainsi, vos entrées de formulaire apparaîtront comme des résultats de recherche en utilisant SearchWP. 

Tout d'abord, vous devrez configurer un formulaire de recherche pour le moteur supplémentaire que vous avez créé précédemment. Commencez par créer une <input> avec un nom différent de s, car ce nom déclenchera une recherche WordPress native. 

Vous pouvez commencer avec le code suivant :

<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>

Il y a deux points à noter concernant cet extrait de code :

  1. Le nom de <input> utilisé est searchwp
  2. L'action du formulaire pointe vers site_url( ‘search-results/’ ). Cela signifie que si l'URL de votre site est example.com, ce formulaire redirigera vers example.com/search-results/ lors de la soumission. Ce guide suppose que l'URL pointe vers une page que vous avez créée dans le but d'afficher les résultats du moteur supplémentaire.

Lorsque vous créez votre formulaire de recherche, il a une action qui pointe vers une URL désignée comme la page pour afficher vos résultats. Pour récupérer les résultats de SearchWP, vous devrez d'abord créer un modèle de page personnalisé.

Pour plus de détails concernant le code du formulaire de recherche et le modèle de page, veuillez vous référer à notre documentation sur les moteurs supplémentaires

Voici un modèle de départ avec lequel vous pouvez travailler, il est basé sur le code montré dans notre documentation sur les moteurs supplémentaires :

<?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(); ?>

Ensuite, le code ci-dessus pour le modèle de page du moteur supplémentaire doit être adapté pour les entrées WPForms.

Voici le code pour WPForms que vous pouvez utiliser :

<?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 );
    }
}


Dans l'extrait de code, assurez-vous de remplacer wpforms par le nom de votre moteur dans cette partie : ‘engine’ => ‘wpforms’,

Vous pouvez trouver le nom de votre nouveau moteur sur la page SearchWP » Algorithme. Par exemple, nous remplacerons wpforms par wpformsengine dans l'extrait de code.

Copier le nom du nouveau moteur

Pour en savoir plus sur l'affichage des entrées WPForms comme résultats, veuillez vous référer à notre documentation WPForms

Enfin, si vous avez besoin d'aide supplémentaire, notre équipe est toujours là pour vous aider. Contactez simplement notre équipe de support et nous serons heureux de vous aider !

Nous espérons que cet article vous a aidé à apprendre comment inclure les soumissions de formulaires WordPress dans les résultats de recherche. Vous voudrez peut-être aussi consulter nos guides sur comment ajouter des champs Meta Box à la recherche WordPress et comment suivre l'activité de recherche de votre site WordPress.

Prêt à créer une expérience de recherche WordPress meilleure et plus personnalisée ? Commencez dès aujourd'hui avec SearchWP ! 

avatar de l'auteur
Aazim Akhtar

Créez dès aujourd'hui une meilleure expérience de recherche WordPress

Ne perdez plus jamais de visiteurs à cause de résultats de recherche inutiles. SearchWP rend la création de votre propre recherche WordPress intelligente rapide et facile.

Get SearchWP Now
Icône de moteurs de recherche multiples