SearchWP Documentation

Consultez le guide d’installation, parcourez la base de connaissances, découvrez les nombreux hooks de SearchWP

Guide de migration

Ce guide de migration est conçu pour faciliter la transition de SearchWP 3.x (et versions antérieures) à SearchWP 4.

Note : votre clé de licence est la même pour SearchWP 3.x et SearchWP 4

Note : SearchWP 4 est une version majeure qui casse la compatibilité ascendante

(à l'exception de SWP_Query, qui n'a pas été modifié)

Étant donné qu'il s'agit d'une version majeure qui a rompu la compatibilité ascendante, il est fortement recommandé d'effectuer d'abord une migration sur un serveur de staging pour s'assurer que le processus se déroule sans problème avant d'effectuer la migration sur un serveur de production.

Note : les moteurs, paramètres, mots vides et synonymes de SearchWP 3 seront migrés lors de l'activation de SearchWP 4.

Le processus de migration peut être décomposé en étapes suivantes que vous devrez suivre :

  1. Lire intégralement ce guide de migration.
  2. S'assurer que toutes les extensions installées ont été mises à jour vers leurs dernières versions.
  3. Auditing all hooks in use both in your theme and any custom plugins.
    • Updating all existing hooks to SearchWP 4 equivalents, reaching out to support if any problems arise.

      Note : Veuillez consulter la documentation de tous les hooks car certains paramètres ont changé !

  4. Télécharger SearchWP 4 depuis votre compte.
  5. Désactiver et supprimer* (voir note ci-dessous !)* SearchWP 3.x de votre installation WordPress.
  6. Installer et activer SearchWP 4.
  7. Automatic migration of settings from SearchWP 3.x to SearchWP 4 upon activation.

    Note : Les poids de pertinence des attributs ont maintenant trois segments, et le curseur de poids affichera le segment de poids le plus proche. Cela peut vous sembler différent si vous avez personnalisé les poids, mais les poids réels de la v3 seront conservés jusqu'à ce qu'ils soient modifiés et que les moteurs soient réenregistrés.

  8. Construire l'index initial de SearchWP 4.
  9. Tester la fonctionnalité.

* Si vous avez coché la case pour supprimer toutes les données SearchWP lors de la désinstallation, vos données seront supprimées. Décochez la case si nécessaire.

Si la case n'est pas cochée et que vous n'utilisez pas le hook searchwp_nuke_on_delete pour activer la fonctionnalité, toutes vos données SearchWP resteront intactes et utilisables si vous décidez de réinstaller SearchWP 3.x à tout moment.

Hooks

L'un des changements majeurs de SearchWP 3.x à SearchWP 4 est que tous les hooks ont été renommés. Certains hooks ont été renommés mais fonctionnent par ailleurs de la même manière. D'autres hooks ont été complètement supprimés.

Veuillez examiner tous vos hooks lors de la mise à jour des tags en consultant la documentation de chacun. Certains peuvent être un simple changement de tag, d'autres un simple changement de paramètre, mais certains hooks superflus dans la v3 ont été supprimés au profit d'un nouveau hook plus approprié. Veuillez tester chacun de vos hooks individuellement. ?

Il y a un tableau de référence des hooks disponible ci-dessous.

Changements par rapport à SearchWP 3

L'index et l'indexeur de SearchWP ont été entièrement reconstruits, y compris le processus d'arrière-plan. Cela dit, il existe une parité fonctionnelle entre les deux versions. Ils fonctionnent globalement de manière similaire, mais il y a quelques changements (significatifs) que vous devriez connaître.

Média Parents

Dans SearchWP, lorsque le transfert/l'attribution de poids du parent était activé, les médias sans parent étaient omis des résultats. SearchWP 4 renvoie désormais ces résultats afin qu'ils ne soient pas perdus.

Si vous préférez que les médias sans parent (lorsque le transfert de poids du parent est activé) soient supprimés de l'ensemble des résultats, vous pouvez utiliser ce hook :

<?php
// Tell SearchWP to drop Media with no parent when Parent Attribution has been enabled.
// This was the default behavior in SearchWP 3 but has changed in SearchWP 4.
add_filter( 'searchwp\source\post\attachment\parent_attribution\strict', '__return_true' );

Termes de taxonomie

Dans SearchWP 3, seul term_name était indexé par défaut. Suite aux commentaires des clients, ce comportement a changé pour inclure l'objet WP_Term entier, qui comprend le slug, la description et d'autres données attachées à chaque WP_Term que SearchWP indexe.

Si vous souhaitez inverser ce comportement, cet extrait de code fera exactement cela : https://gist.github.com/jchristopher/0ecc4c6ed172f64e7a97748026266e32

Installation

SearchWP 4 est une version majeure qui est également une réécriture complète de SearchWP 3.x. Les changements associés exigent que SearchWP 3.x soit à la fois désactivé et supprimé avant d'installer SearchWP 4.

Il est recommandé de supprimer SearchWP 3.x à l'aide de la page Plugins de votre installation WordPress après sa désactivation.

Note : Il existe un paramètre dans l'onglet Avancé de l'écran des paramètres de SearchWP 3.x qui, lorsqu'il est coché, supprime définitivement toutes les données de SearchWP lors de l'installation. Il existe également un hook : searchwp_nuke_on_delete.

Si vous ne souhaitez pas que vos données soient supprimées lors de la désinstallation, veuillez vous assurer que la case à cocher est décochée et que le hook est absent.

Sauf si vous avez choisi de faire supprimer définitivement vos données SearchWP 3.x lors de la suppression du plugin, votre index et vos paramètres SearchWP 3.x resteront intacts tout au long de ce processus, et seront disponibles si vous décidez de revenir à SearchWP 3.x à tout moment.

Si, après la mise à niveau, vous souhaitez supprimer définitivement les données de SearchWP 3.x (tout en conservant vos données SearchWP 4), vous pouvez utiliser cette extension : Suppression des données héritées.

Paramètres

Lorsqu'il est activé, SearchWP 4 détectera, migrera et importera tous vos paramètres existants, par exemple la configuration du moteur.

Votre index existant ne sera pas migré directement car le format a considérablement changé. Lors de l'activation, SearchWP 4 commencera à reconstruire votre index en utilisant vos moteurs migrés. Une fois l'index reconstruit, votre migration sera terminée !

Vous devriez tester quelques recherches pour vous assurer du bon fonctionnement, et si vous rencontrez des problèmes, veuillez ouvrir un ticket de support dans les plus brefs délais.

Veuillez noter que sauf si vous avez choisi de supprimer vos données SearchWP 3.x, elles sont toujours disponibles en supprimant complètement SearchWP 4 et en réinstallant SearchWP 3.x. Un lien de téléchargement sera toujours disponible dans votre compte.

Référence de migration des hooks

SearchWP 3.x SearchWP 4
Actions
searchwp_after_query_index searchwp\query\after
searchwp_before_query_index searchwp\query\before
searchwp_index_initial_complete searchwp\indexer\complete
searchwp_index_pdf_metadata searchwp\document\pdf_metadata\skip
searchwp_index_post searchwp\index\add
searchwp_index_up_to_date N/A
searchwp_indexer_loopback N/A
searchwp_indexer_post_chunk searchwp\indexer\batch
searchwp_indexer_posts searchwp\indexer\has_updates
searchwp_indexer_pre searchwp\indexer\init
searchwp_indexer_pre_chunk searchwp\indexer\batch
searchwp_indexer_pre_get_comments N/A
searchwp_indexer_running searchwp\process\begin
searchwp_load searchwp\init
searchwp_loaded searchwp\loaded
searchwp_log searchwp\debug\log
searchwp_revised_search_query searchwp\query\ran
searchwp_settings_after_header searchwp\settings\header\after
searchwp_settings_after\{$view} searchwp\settings\after\{$view}
searchwp_settings_before_header searchwp\settings\header\before
searchwp_settings_before\{$view} searchwp\settings\before\{$view}
searchwp_settings_engines searchwp\settings\view\default
searchwp_settings_footer searchwp\settings\footer
searchwp_settings_init searchwp\settings\init
searchwp_settings_nav_tab searchwp\settings\nav\tab
searchwp_settings_view\{$view} searchwp\settings\view\{$view}
searchwp_dashboard_widget searchwp\admin\dashboard_widgets\statistics
searchwp_swp_query_shutdown searchwp\swp_query\shutdown
Filtres généraux
searchwp_admin_bar searchwp\admin_bar
searchwp_dashboard_widget_cap searchwp\statistics\capability
searchwp_debug searchwp\debug
searchwp_debug_detailed N/A
searchwp_debug_include_pid N/A
searchwp_extensions searchwp\extensions
searchwp_failed_index_notice N/A
searchwp_init searchwp\loaded
searchwp_initial_engine_settings searchwp\install\engine\settings
searchwp_license_key searchwp\license\key
searchwp_locale_override locale
searchwp_missing_integration_notices searchwp\missing_integration_notices
searchwp_nuke_on_delete searchwp\nnuke_on_delete
searchwp_settings_cap searchwp\settings\capability
searchwp_show_conflict_notices N/A
searchwp_show_filter_conflict_notices N/A
searchwp_skip_vendor_libs N/A
searchwp_statistics_cap searchwp\statistics\capability
searchwp_statistics_popular_days_{$days} searchwp\statistics\popular\days_{$days}
Indexeur
searchwp_aggressive_delta_update searchwp\index\aggressive_delta
searchwp_alternate_indexer searchwp\indexer\alternate
searchwp_auto_reindex searchwp\index\process\enabled et searchwp\indexer\paused
searchwp_background_deltas searchwp\index\process\enabled
searchwp_basic_auth_creds searchwp\indexer\http_basic_auth_credentials
searchwp_custom_field_{$key} searchwp\source\post\attributes\meta\{$key}
searchwp_custom_fields searchwp\source\post\attributes\meta
searchwp_custom_stemmer searchwp\stemmer\custom
searchwp_do_blocks searchwp\source\post\attributes\content\do_blocks
searchwp_do_shortcode searchwp\source\post\attributes\content\do_shortcodes
searchwp_endpoint N/A
searchwp_exclude_common N/A
searchwp_excluded_custom_fields searchwp\source\post\attributes\meta\ignored
searchwp_exclusive_regex_matches searchwp\tokens\tokenize_pattern_matches
searchwp_external_pdf_processing searchwp\parser\pdf
searchwp_extra_metadata N/A voir l'article de la base de connaissances
searchwp_get_custom_fields N/A
searchwp_include_comment_author searchwp\source\post\attributes\comments\author
searchwp_include_comment_email searchwp\source\post\attributes\comments\email
searchwp_index_attachments N/A
searchwp_index_chunk_size searchwp\indexer\batch_size
searchwp_index_comments N/A
searchwp_index_emoji searchwp\allow_emoji
searchwp_indexed_post_types Équivalent partiel : searchwp\sources
searchwp_indexer_additional_meta_exclusions N/A
searchwp_indexer_apply_engines_rules N/A
searchwp_indexer_comment searchwp\source\post\attributes\comment
searchwp_indexer_comments_args searchwp\source\post\attributes\comments\args
searchwp_indexer_enabled N/A
searchwp_indexer_excluded_by_rules N/A
searchwp_indexer_load_monitoring N/A
searchwp_indexer_loopback_args searchwp\indexer\loopback\args
searchwp_indexer_max_attempts N/A
searchwp_indexer_paused N/A
searchwp_indexer_pre_process_content searchwp\source\post\attributes\content
searchwp_indexer_tag_attributes searchwp\valid_html_tags
searchwp_indexer_taxonomies N/A
searchwp_indexer_taxonomy_term searchwp\source\post\attributes\taxonomy\term
searchwp_indexer_taxonomy_term_index_slug N/A
searchwp_indexer_taxonomy_terms searchwp\source\post\attributes\taxonomy\terms
searchwp_indexer_throttle N/A
searchwp_indexer_unindexed_args searchwp\post__in
searchwp\post__not_in
searchwp_indexer_unindexed_media_args searchwp\post__in
searchwp\post__not_in
searchwp_is_attribute_used N/A
searchwp_is_used_meta_key N/A
searchwp_is_used_taxonomy N/A
searchwp_keyword_stem_locale N/A
searchwp_lenient_accents searchwp\tokens\strict
searchwp_lenient_accent_result searchwp\tokens\removed_accents
searchwp_lenient_accents_conversions N/A
searchwp_load_maximum N/A
searchwp_max_delta_attempts N/A
searchwp_max_index_attempts N/A
searchwp_mimes_{$mime_type_group} N/A
searchwp_minimum_word_length searchwp\tokens\minimum_length
searchwp_omit_document_processing N/A
searchwp_omit_meta_key N/A
searchwp_omit_meta_key_{$custom_field_key} N/A
searchwp_omit_wp_metadata N/A
searchwp_pdf_metadata N/A
searchwp_pdf_spaces_to_content_percentage N/A
searchwp_post_statuses searchwp\post_stati
searchwp_pre_set_post N/A
searchwp_prevent_indexing searchwp\post__not_in
searchwp_process_term_limit searchwp\index\tokens_max
searchwp_remove_pre_get_posts N/A
searchwp_sanitize_terms N/A
searchwp_set_post N/A
searchwp_stopwords searchwp\stopwords
searchwp_term_count_limit searchwp\index\tokens_max
searchwp_term_pattern_whitelist searchwp\tokens\regex_patterns
searchwp_timeout searchwp\indexer\loopback\args
Filtres de requête
searchwp_allow_quoted_phrase_search searchwp\query\logic\phrase
searchwp_and_fields N/A
searchwp_and_fields_{$post_type} N/A
searchwp_and_logic searchwp\query\logic\and
searchwp_and_logic_only searchwp\query\logic\and\strict
searchwp_auto_output_revised_search_query searchwp\query\output_suggested_search
searchwp_big_selects N/A
searchwp_custom_field_keys searchwp\source\attribute\options
searchwp_debug_append_weights_to_titles N/A
searchwp_disable_impose_engine_config N/A
searchwp_do_suggestions searchwp\query\partial_matches\did_you_mean
searchwp_enable_attribution_{post_type} searchwp\source\post\{$post_type}\attribution
searchwp_enable_parent_attribution_{post_type} searchwp\source\post\{$post_type}\parent_attribution
searchwp_engine_settings_{engine} N/A
searchwp_exclude searchwp\post__not_in
searchwp_exclude_common N/A
searchwp_force_run N/A
searchwp_force_wp_query N/A
searchwp_force_wpquery_order N/A
searchwp_found_post_objects N/A
searchwp_fuzzy_digit_threshold N/A
searchwp_fuzzy_min_length searchwp\query\partial_matches\fuzzy\minimum_length
searchwp_fuzzy_threshold searchwp\query\partial_matches\fuzzy\threshold
searchwp_in_admin N/A
searchwp_include searchwp\post__in
searchwp_like_min_length searchwp\query\partial_matches\minimum_length
searchwp_like_stem N/A
searchwp_like_wildcard_after searchwp\query\partial_matches\wildcard_after
searchwp_like_wildcard_before searchwp\query\partial_matches\wildcard_before
searchwp_load_posts N/A
searchwp_log_search searchwp\statistics\log
searchwp_max_and_results N/A
searchwp_max_search_terms searchwp\query\tokens\limit
searchwp_max_search_terms_{$engine} N/A
searchwp_max_search_terms_supplemental N/A
searchwp_partial_matches_force_fuzzy searchwp\query\partial_matches\force_fuzzy
searchwp_partial_matches_lenient searchwp\query\partial_matches\force
searchwp_partial_matching_{$engine} N/A
searchwp_persist_extra_metadata N/A
searchwp_posts_per_page searchwp\query\per_page
searchwp_pre_search_terms searchwp\query\tokens
searchwp_query_allow_query_string_override_order searchwp\query\mods
searchwp_query_allow_query_string_override_orderby searchwp\query\mods
searchwp_query_conditions searchwp\query\mods
searchwp_query_join searchwp\query\mods
searchwp_query_limit_start searchwp\query\mods
searchwp_query_limit_total searchwp\query\mods
searchwp_query_main_join searchwp\query\mods
searchwp_query_offset searchwp\query\mods
searchwp_query_orderby searchwp\query\mods
searchwp_query_results searchwp\query\results
searchwp_query_select_inject searchwp\query\mods
searchwp_affiner_et_résultats N/A
searchwp_supprimer_pre_get_posts_pendant_la_recherche N/A
searchwp_résultats searchwp\query\results
searchwp_retourner_par_date searchwp\query\mods
searchwp_retourner_aléatoirement searchwp\query\mods
searchwp_arguments_de_recherche searchwp\query\args
searchwp_ordre_de_requête_de_recherche searchwp\query\mods
searchwp_court-circuiter searchwp\native\short_circuit
searchwp_swp_query_post__in_explicite N/A
searchwp_swp_query_post__not_in_explicite N/A
searchwp_terme_dans searchwp\query\tokens
searchwp_termes searchwp\query\search_string
searchwp_poids_max N/A
searchwp_mods_de_poids searchwp\query\mods
searchwp_seuil_de_poids searchwp\query\min_relevance
searchwp_où searchwp\query\mods
Traitement des documents
searchwp_limite_contenu_fichier searchwp\source\attachment\attribute\document_content\display_limit
searchwp_purger_contenu_document Voir l'extrait
Mise en surbrillance
searchwp_terme_highlight_break_on_first_match N/A
searchwp_terme_highlight_occurrence N/A
searchwp_th_auto_filter_excerpt N/A
searchwp_th_auto_highlight_content N/A
searchwp_th_do_shortcode N/A
searchwp_th_excluded_engines N/A
searchwp_th_num_words N/A
searchwp_th_partial_matches N/A
searchwp_th_password_required_message N/A
searchwp_th_pre_process_content N/A
searchwp_th_pre_process_meta_value N/A
searchwp_th_strip_shortcodes N/A
searchwp_th_use_span N/A
Interface utilisateur des paramètres
searchwp_engine_content_type_label searchwp\source\attribute\label

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