Dies ist das technische Support-Forum für WPML – das mehrsprachige WordPress-Plugin.
Mitlesen können alle, doch nur WPML-Kunden können hier Fragen veröffentlichen. Das WPML-Team antwortet im Forum an 6 Tagen pro Woche, 22 Stunden am Tag.
Sun | Mon | Tue | Wed | Thu | Fri | Sat |
---|---|---|---|---|---|---|
- | 8:00 – 13:00 | 9:00 – 13:00 | 9:00 – 13:00 | 8:00 – 12:00 | 8:00 – 12:00 | - |
- | 14:00 – 17:00 | 14:00 – 18:00 | 14:00 – 18:00 | 13:00 – 17:00 | 13:00 – 17:00 | - |
Zeitzone des Supporters: Europe/Zagreb (GMT+02:00)
Schlagwörter: Compatibility
Dieses Thema enthält 1 Antworten, hat 0 Stimmen.
Zuletzt aktualisiert von Bruno Kos Vor 4 Wochen, 1 Tag.
Assistiert von: Bruno Kos.
Autor | Beiträge |
---|---|
April 16, 2025 um 11:05 am #16938163 | |
aliciaW-2 |
Hintergrund des Themas: Die Symptome: Fragen: |
April 16, 2025 um 1:06 pm #16938977 | |
Bruno Kos WPML-Unterstützer seit 12/2018
Sprachen: Englisch (English ) Deutsch (Deutsch ) Französisch (Français ) Zeitzone: Europe/Zagreb (GMT+02:00) |
Um das Problem mit dem Cookie `wcml_client_country` und dessen Einfluss auf die Preloading-Funktion von WP Rocket genauer untersuchen zu können, habe ich eine Sandbox-Testumgebung eingerichtet: versteckter Link - WP Rocket ist dort bereits installiert. Sobald die Einstellungen gesetzt sind, kann ich prüfen, **wie und wann der Cookie `wcml_client_country` gesetzt wird**, und ob dieser die Preloading-Funktion von WP Rocket wie vermutet blockiert. Wenn du zudem die PDF-Datei von WP Rocket über **Dropbox, Google Drive oder Ähnliches** teilen könntest, kann ich diese Information an das WPML-Kompatibilitätsteam weitergeben. |
April 19, 2025 um 9:10 am #16948678 | |
aliciaW-2 |
Ich habe die Einstellungen, soweit möglich, in der Sandbox vorgenommen. Zwei Einstellungen wären bei euch noch vorzunehmen: Sobald dies in der Sandbox aktiv ist, kann ich nochmals die Settings überprüfen, damit alles gleich ist wie in unserer Live-Site. Das PDF Dokument sandten wir bereits als jpg-Bilder in der Ticketnachricht vom APRIL 16, 2025 AT 11:45 AM. WP Rocket Supportteam fasste die Problemstellung darin zusammen (u.a. wo das Mandatory Cookie im php-file gefunden wurde). Im Moment ist bei uns Geolocation mit MaxMind Key aktiviert und dadurch aber das Preloading bei WP Rocket ausgeschaltet. Das führt dann aber zu langsamen Ladezeiten, da WP Rocket Plugin dem User nicht ein Preload der html-Files zur Verfügung stellen kann. |
April 22, 2025 um 10:07 am #16954285 | |
Bruno Kos WPML-Unterstützer seit 12/2018
Sprachen: Englisch (English ) Deutsch (Deutsch ) Französisch (Français ) Zeitzone: Europe/Zagreb (GMT+02:00) |
Ich habe den MaxMind-Schlüssel hinzugefügt, ich glaube nicht, dass wir Woopayments brauchen. Basierend auf der Dokumentation von WP Rocket und meinen Tests auf der Live-Seite sowie in der WPML-Sandbox habe ich Folgendes festgestellt: WP Rocket ist aktuell so konfiguriert, dass es das Cookie wcml_client_country als Voraussetzung für das Caching und Preloading benötigt. Dieses Cookie wird durch die Geolokalisierungsfunktion von WPML gesetzt (über MaxMind), sobald ein Nutzer die Seite besucht. Das Problem ist, dass dieses Cookie in der Regel erst gesetzt wird, wenn ein echter Besucher die Website aufruft. Daher startet WP Rocket den Preload-Prozess nicht, weil es auf das Vorhandensein des Cookies wartet. Ich habe das im Browser überprüft und kann bestätigen, dass das Cookie gesetzt wird, was auch mit der Konfiguration in der WP Rocket-Datei übereinstimmt. Meine Frage ist daher: Wird auf der Website direkt beim ersten Laden (also ohne Nutzerinteraktion) unterschiedlicher Inhalt oder eine andere Währung basierend auf dem Land des Besuchers angezeigt? Falls nein, kann das Cookie wcml_client_country aus der Konfiguration von WP Rocket entfernt werden. Dadurch würde das Preloading wieder wie erwartet funktionieren. Falls ja, ist dieses Verhalten technisch korrekt, und es müsste gegebenenfalls eine alternative Caching-Strategie eingesetzt werden. Ich vermute basierend auf der aktiven MaxMind-Geolokalisierung, dass die Website beim ersten Laden automatisch Inhalte, Währungen oder Funktionen je nach Standort des Nutzers anpasst – zum Beispiel durch automatische Währungsauswahl. Falls das korrekt ist, dann wird das Cookie wcml_client_country tatsächlich direkt beim ersten Besuch benötigt. In diesem Fall darf es nicht aus der WP Rocket-Konfiguration entfernt werden, da sonst falsche Inhalte gecacht werden könnten. Können Sie mir sagen, ob ich das Problem richtig verstanden habe? |
April 22, 2025 um 2:17 pm #16955616 | |
aliciaW-2 |
Danke für die Tests und die Erläuterungen. Ich versuche Ihre Frage "Wird auf der Website direkt beim ersten Laden (also ohne Nutzerinteraktion) unterschiedlicher Inhalt oder eine andere Währung basierend auf dem Land des Besuchers angezeigt?" zu beantworten. Die aktuellen wcml-Einstellungen in unserem Setup sind: Mit diesen Settings haben wir wie folgt getestet: Was wir jedoch feststellen ist, dass der erste Währungswechsel auf der Seite (zB von CHF auf EUR) immer zwei Anläufe benötigt. Erst wenn der Wechsel nochmals verlangt wird, schaltet das System auf EUR um und bleibt dann im genutzten Browser(cache) wohl auch gespeichert. Dies ist überraschend, da bei WP Rocket der Eintrag unter "no chache" (Cookies) der Eintrag für "wcml_client_currency" getätigt ist. Ohne diesen Eintrag funktioniert die Währungsumschaltung gar nie mehr korrekt. Als Test versuchten wir auch die wcml-Einstellung "Währung basierend auf Seitensprache" (siehe Screenshot). Im Prinzip scheint diese Einstellung keinen Unterschied zur Einstellung "Währung basierend auf Kundenstandort" zu verursachen. Es scheint aber, dass diese Einstellung den Währungswechsel etwas mehr behindert. Wir stellten beim Testen fest, dass wir sogar 2-3 den Währungswechsel mittels des Widget auf den Shopseiten anstossen mussten, bis die gewünschte Währung endlich übernommen wurde. Woran das liegt, konnten wir nicht feststellen. Bei beiden Einstellungen sind die Währungen für alle Sprachen und Länder verfügbar. Wir sind nun nicht sicher, welche Settings in WP Rocket mit dieser Ausgangslage mehr Performance versprechen. Was wäre nun zu tun? Danke im Voraus für Ihre Guidance. Beste Grüsse |
April 23, 2025 um 9:06 am #16958661 | |
Bruno Kos WPML-Unterstützer seit 12/2018
Sprachen: Englisch (English ) Deutsch (Deutsch ) Französisch (Français ) Zeitzone: Europe/Zagreb (GMT+02:00) |
Zur Bestätigung und Zusammenfassung des aktuellen Problems: Die Konfigurationsdatei von WP Rocket enthält das Cookie wcml_client_country als verpflichtende Voraussetzung für das Ausliefern von zwischengespeicherten Inhalten ($rocket_cache_mandatory_cookies = 'wcml_client_country';). Da dieses Cookie jedoch nur bei echten Benutzerbesuchen gesetzt wird, wird die Preload-Funktion von WP Rocket nicht wie gewohnt ausgeführt. Zum Cookie selbst – das wcml_client_country-Cookie ist für die Kompatibilität zwischen WP Rocket und WooCommerce Multilingual & Multicurrency essenziell, insbesondere wenn Geolokalisierungsfunktionen aktiviert sind. Es sorgt dafür, dass Besucher die korrekten lokalisierten Inhalte und Währungen entsprechend ihrer geografischen Lage angezeigt bekommen. Aus diesem Grund kann das Cookie nicht einfach entfernt werden, ohne die Funktionalität der Lokalisierung zu beeinträchtigen. Wenn diese Zusammenfassung für Sie stimmig ist, leite ich den Fall gerne an unser Entwicklerteam weiter, damit sie direkt mit den Entwicklern von WP Rocket eine mögliche Lösung prüfen können. |
April 23, 2025 um 9:49 am #16958847 | |
aliciaW-2 |
Vielen Dank für die gute Zusammenfassung. Ich sehe dies genau so wie Sie. Vielen Dank im Voraus für die Weiterleitung an das Entwicklerteam. Ich lasse demnach dieses Ticket offen bis die Entwicklerteams allenfalls eine Lösung zur Problemstellung finden. |
April 23, 2025 um 12:24 pm #16959657 | |
Bruno Kos WPML-Unterstützer seit 12/2018
Sprachen: Englisch (English ) Deutsch (Deutsch ) Französisch (Français ) Zeitzone: Europe/Zagreb (GMT+02:00) |
Dies wurde an unser Kompatibilitätsteam weitergeleitet und kann einige Zeit zur Fehlersuche in Anspruch nehmen. Ich melde mich bei Ihnen, sobald ich Neuigkeiten oder Fragen für Sie habe. |
Mai 16, 2025 um 5:59 am #17039368 | |
Bruno Kos WPML-Unterstützer seit 12/2018
Sprachen: Englisch (English ) Deutsch (Deutsch ) Französisch (Français ) Zeitzone: Europe/Zagreb (GMT+02:00) |
Unsere Entwickler haben die Dokumentation zur versteckter Link überprüft. Es scheint, dass das Pre-Caching über WP-CRON-Anfragen erfolgt. Daher vermuten wir, dass der WCML-Hook `wcml_geolocation_is_used` in diesem Kontext nicht geladen wird. Bitte nehmen Sie folgende Änderung in WCML vor: Suchen Sie diese Zeile: class GeolocationBackendHooks implements \IWPML_Backend_Action, IStandAloneAction { Und ersetzen Sie sie durch: class GeolocationBackendHooks implements \IWPML_Frontend_Action, \IWPML_Backend_Action, IStandAloneAction { Sollte dies das Problem beheben, kann WP Rocket die Seiten vorkacheln – allerdings nur für eine Währung. Werden Seiten in anderen Währungen nicht vorab gecacht, sondern erst dann, wenn ein Besucher die Seite in der jeweiligen Währung aufruft. |
Das Thema „[Geschlossen] WPML verursacht Preloading Problem in WP Rocket“ ist für neue Antworten geschlossen.