SearchWP Documentation

Sehen Sie sich die Installationsanleitung an, durchsuchen Sie die Wissensdatenbank und erfahren Sie mehr über die vielen Hooks von SearchWP

Integration mit Content-Importen/-Migrationen

SearchWP reagiert auf bestimmte Vorgänge innerhalb von WordPress. Wenn Inhalte bearbeitet werden, teilt WordPress SearchWP die Bearbeitung mit, und SearchWP indiziert wiederum diese bearbeiteten Inhalte neu. Dies hält Ihren Index im Laufe der Zeit automatisch auf dem neuesten Stand, ohne dass Sie etwas verwalten müssen.

Content-Importroutinen (z. B. mit WP All Import) führen naturgemäß viele (manchmal gleichzeitige) Bearbeitungen in einem sehr kurzen Zeitraum durch. Dies kann nachteilige Auswirkungen haben, wenn SearchWP auf alle Signale von WordPress reagiert, dass viele Bearbeitungen stattfinden.

Wenn der Import groß genug und schnell genug läuft, kann der Indexer von SearchWP mit Bearbeitungsbenachrichtigungen überflutet werden und schließlich gerät der Index aus dem Takt. Dies ist unerwünscht, da SearchWP beginnen kann, seinen eigenen Index wiederholt zu durchlaufen oder sogar noch schlimmer, ungenaue Suchergebnisse zurückzugeben.

Content-Importe richtig verarbeiten

HINWEIS: Ab Version 4.1.16 von SearchWP werden WP All Import-Prozesse automatisch verarbeitet!

Lesen Sie mehr über die automatische Integration von SearchWP,
oder lesen Sie weiter, um Ihre eigene zu implementieren

Es wird empfohlen, den SearchWP-Indexer zumindest zu deaktivieren, wenn ein Import-Skript ausgeführt wird. Dies kann durch Modifizieren Ihres eigenen Import-Skripts oder durch Nutzung der Hooks in Ihrem gewählten Plugin erfolgen. Der Pseudocode für das, was wir tun werden, lautet wie folgt:

Pause SearchWP indexer
Tell SearchWP to mark each edited entry for re-indexing
Run import in full
Enable SearchWP indexer
Trigger build of SearchWP index

All hooks should be added to your custom SearchWP Customizations Plugin.

<?php
// Disable SearchWP's automatic integration with WP All Import.
add_filter( 'searchwp\integration\wp-all-import', '__return_false' );
add_action( 'pmxi_before_xml_import', function( $import_id ) {
\SearchWP::$indexer->pause();
}, 10 );
add_action( 'pmxi_saved_post', function( $post_id ) {
$source_name = \SearchWP\Utils::get_post_type_source_name( get_post_type( $post_id ) );
$source = \SearchWP::$index->get_source_by_name( $source_name );
// Mark this to be dropped after the import has finished.
\SearchWP::$index->drop( $source, $post_id );
}, 10 );
add_action( 'pmxi_after_xml_import', function( $import_id ) {
\SearchWP::$indexer->unpause();
// Process all entries marked to be dropped.
\SearchWP::$index->unpause();
\SearchWP::$index->trigger();
}, 10 );

Mit diesem Snippet wird SearchWP besser auf Ihre Content-Importe reagieren, wobei nach Abschluss des Import-Skripts ein genauer Index erstellt wird. Dies wird auch dazu beitragen, dass Ihr Import etwas schneller läuft, da SearchWP nicht um Ressourcen konkurriert, während der Import verarbeitet wird.

Erstellen Sie noch heute eine bessere WordPress-Sucherfahrung

Verlieren Sie nie wieder Besucher an unzureichende Suchergebnisse. SearchWP macht die Erstellung Ihrer eigenen intelligenten WordPress-Suche schnell und einfach.

Get SearchWP Now
Symbol für mehrere Suchmaschinen