FacetWP Schedule Indexer: Ein umfassender Leitfaden zur Nutzung
Der FacetWP Schedule Indexer ist eine wertvolle Erweiterung, die Benutzern ermöglicht, eine zeitlich gesteuerte Neuanindexierung ihrer Inhalte über WP-Cron durchzuführen. Diese Funktionalität ist besonders nützlich, um sicherzustellen, dass die Suchergebnisse und die Anzeige von Facetten in WordPress stets aktuell sind, ohne dass manuelle Eingriffe erforderlich sind. In diesem Artikel werden wir die wichtigsten Aspekte des FacetWP Schedule Indexers erörtern, von der Installation und Konfiguration bis hin zur Nutzung von benutzerdefinierten Zeitplänen und der Überprüfung des Indexing-Status.
Entwicklung
Installation und Aktivierung des Add-ons
Der erste Schritt zur Nutzung des FacetWP Schedule Indexer besteht darin, das Add-on herunterzuladen und zu installieren. Dies beinhaltet die folgenden Schritte:
- Herunterladen des Add-ons: Zuerst laden Sie das Add-on von Ihrem Benutzerkonto herunter.
- Installation: Installieren Sie es über das WordPress-Dashboard als Plugin.
- Aktivierung: Nach der Installation muss das Plugin aktiviert werden, um die Funktionen nutzen zu können.
Deaktivieren der automatischen Indizierung
FacetWP bietet standardmäßig eine automatische Indizierung, die eine Neuanindexierung ausführt, sobald ein Element (beispielsweise ein Beitrag oder eine Kategorie) bearbeitet oder gespeichert wird. Während dies für viele Benutzer nützlich ist, kann es zu Problemen führen, wenn sowohl die automatische Indizierung als auch der geplante Indexer gleichzeitig laufen. Daher ist es ratsam, die automatische Indizierung zu deaktivieren, wenn Sie den FacetWP Schedule Indexer verwenden.
Um die automatische Indizierung zu deaktivieren, gibt es zwei Möglichkeiten:
- Einstellungsänderung im Dashboard: Deaktivieren Sie das Kontrollkästchen „Aktivieren der automatischen Indizierung“ in den FacetWP-Einstellungen.
- Benutzerdefinierter PHP-Code: Sie können den folgenden Code in die
functions.php
Ihres (Child-)Themes einfügen:
php
add_filter( 'facetwp_indexer_is_enabled', '__return_false' );
Dies sorgt dafür, dass die automatische Indizierung deaktiviert wird, während der geplante Indexer weiterhin funktioniert.
Festlegen eines Indexierungsplans
Im nächsten Schritt können Sie den Zeitplan für die Neuanindexierung festlegen. Standardmäßig wird die Indizierung jede Stunde durchgeführt. Wenn Sie jedoch einen anderen Zeitplan wünschen, stehen Ihnen mehrere Optionen zur Verfügung:
- Vorhandene Zeitpläne nutzen: WP-Cron unterstützt mehrere eingebaute Zeitpläne:
- Stündlich
- Zweimal täglich
- Täglich
- Wöchentlich
Um einen dieser Zeitpläne zu verwenden, können Sie den facetwp_index_schedule
Hook in Ihrer functions.php
so einstellen:
php
add_filter( 'facetwp_index_schedule', function() { return 'daily'; }, 10 );
Sie können den gewünschten Zeitplan nach Ihren Bedürfnissen auswählen.
Testen des Zeitplans
Um sicherzustellen, dass Ihr Zeitplan für die Neuanindexierung korrekt funktioniert, können Sie das WP Crontrol Plugin verwenden. Dies ermöglicht Ihnen Folgendes:
- Überprüfen des Cron-Zeitplans: Überprüfen Sie, ob der Zeitplan für die Neuanindexierung unter dem Tab „Cron-Zeitpläne“ im WP Crontrol Plugin angezeigt wird.
- Monitoring der Cron-Ereignisse: Stellen Sie sicher, dass das
fwp_scheduled_index
Ereignis im Tab „Cron-Ereignisse“ vorhanden ist und zum festgelegten Zeitpunkt ausgeführt wird.
Da WP-Cron nur bei Aktivität auf der Website ausgelöst wird, müssen Sie möglicherweise einige Seiten aufrufen, um sicherzustellen, dass die Indizierung stattfindet. Wenn WP-Cron für Performance-Gründe deaktiviert ist, könnte die Implementierung eines Server-Crons in Erwägung gezogen werden.
Erstellen eines benutzerdefinierten Zeitplans
Falls die vorgefertigten Zeitpläne nicht Ihren Anforderungen entsprechen, können Sie einen benutzerdefinierten Zeitplan erstellen. Dazu nutzen Sie den cron_schedules
Filter, um beispielsweise einen vierteljährlichen Zeitplan zu erstellen, der alle 15 Minuten ausgeführt wird:
php
add_filter('cron_schedules', function( $schedules ) {
$schedules['quarterly'] = array(
'interval' => 900, // Sekunden: 900 ist die Anzahl der Sekunden in 15 Minuten
'display' => __('Once Every Quarter') // Anzeige-Name des benutzerdefinierten Zeitplans
);
return $schedules;
}, 10);
Nach der Definition des benutzerdefinierten Zeitplans müssen Sie diesen an den FacetWP Schedule Indexer übergeben:
php
add_filter( 'facetwp_index_schedule', function() { return 'quarterly'; }, 10 );
Überprüfen des Indexierungsplans
Es ist wichtig, sicherzustellen, dass Ihr benutzerdefinierter Zeitplan tatsächlich aktiv ist. Nutzen Sie WP Crontrol, um die Cron-Zeitpläne und Ereignisse zu überprüfen:
- Prüfen Sie den benutzerdefinierten Zeitplan: Überprüfen Sie, ob Ihr benutzerdefinierter Zeitplan im Tab „Cron-Zeitpläne“ angezeigt wird.
- Überprüfen Sie das geplante Cron-Ereignis: Stellen Sie sicher, dass das Ereignis
fwp_scheduled_index
tatsächlich zur festgelegten Zeit ausgeführt wird.
Wenn der Zeitplan oder das Ereignis nicht angezeigt wird, überprüfen Sie den Code in Ihrer functions.php
auf Fehler und stellen Sie sicher, dass das Add-on aktiviert ist.
Tests zur Indizierung
Sobald der Zeitplan festgelegt und getestet wurde, können Sie die Indizierung starten und deren Status überprüfen. Dies geschieht über die Schaltfläche „Indexer-Statistiken anzeigen“ im FacetWP Admin-Bereich. Diese Statistiken zeigen Ihnen, wann die letzte Indizierung durchgeführt wurde und ob der Zeitplan korrekt funktioniert.
Bedenken Sie, dass die WP-Cron-Ereignisse nur ausgelöst werden, wenn auf der Website Aktivitäten stattfinden. Wenn das Ereignis im Tab „Cron-Ereignisse“ sichtbar ist, aber die Indizierung nicht erfolgt, sollten Sie sicherstellen, dass Sie einige Seiten auf der Vorderseite Ihrer Website besuchen.
Ersetzen von WP-Cron durch einen Server-Cron
Falls die Abhängigkeit von WP-Cron aus Performance-Gründen unpraktisch ist, können Sie einen Server-Cron einrichten. Ein Server-Cron läuft genau zum festgelegten Zeitpunkt, unabhängig von der Aktivitäten auf Ihrer Website. Dies kann insbesondere bei großen Inhalten oder regelmäßig importierten Inhalten von Vorteil sein.
Alternative Indizierungsoptionen
Zusätzlich zur Verwendung des FacetWP Schedule Indexer können Sie auch Programmierungen und Kommandos nutzen, um die Indizierung auszulösen:
- Programmatische Auslösung von Neuanindexierungen: Mit der Methode
FWP->indexer->index()
können Sie die Neuanindexierung programmatisch auslösen. Dies ist nützlich, um eine einmalige Neuanindexierung sofort oder zu einem späteren Zeitpunkt zu initiieren. - Verwendung von WP-CLI: Die Verwendung von WP-CLI für die Neuanindexierung bietet eine präzise Kontrolle über den Zeitpunkt und die Häufigkeit der Indexierung. Dies ist besonders vorteilhaft für Webseiten mit großen Inhalten. WP-CLI ermöglicht auch partielle Neuanindexierungen von spezifischen Beiträgen und Posttypen und das Löschen von Indizes.
Um Probleme mit der doppelten Indizierung zu vermeiden, sollten Sie auch hier die automatische Indizierung gemäß dem Hook facetwp_indexer_is_enabled
deaktivieren.
Mit diesen Schritten und Anleitungen in Bezug auf den FacetWP Schedule Indexer sind Sie gut gerüstet, um die Indizierung optimal zu verwalten und sicherzustellen, dass Ihre Inhalte ständig aktuell bleiben. Der Einsatz dieser Funktionen kann die Benutzererfahrung auf Ihrer Website erheblich verbessern und die Effizienz Ihrer Suchergebnisse verstärken.
Bewertungen
Es gibt noch keine Bewertungen.