RE: WPML + Zeitpunkt der Ermittlung der Sprache für CookieBox

Hallo!

Ich muss (in Kombination mit ACF) programmatisch und Post-Abhängig die WPML-Sprache umschalten.  Der früheste Zeitpunkt, an dem ich von WordPress die post ID ermitteln kan ist mit dem action hook ‚wp‘.  Damit kann ich dann die Sprache von WPML umstellen. Mein Problem ist, dass Borlabs Cookie die Sprache scheinbar vorher ermittelt und die umgestellte Sprache ignoriert. Wenn ich WPML früher umstelle, z.B. im ‚init‘ -Hook. Funktioniert es, aber da kriege ich noch keine Post ID. Habt ihr einen Tipp, wie ich das realisieren kann?

Vielen Dank im Voraus.

add_action('wp', function(){

global $sitepress;

$sitepress->switch_lang('en');

// Seite wird in englisch dargestellt
// Post ID kann ermittelt werden
// Cookie Box wird aber in deutsch dargestellt

},5);
add_action('init', function(){

global $sitepress;

$sitepress->switch_lang('en');

// Seite wird in englisch dargestellt
// Cookie Box wird in englisch dargestellt
// Post ID kann aber noch nicht ermittelt werden

},5);
Jaabadaa Neues Mitglied Gefragt vor am Juli 21, 2021 in Borlabs Cookie.
Kommentar hinzufügen
3 Antworten

Borlabs Cookie ermittelt die Sprache praktisch sofort, also vor dem ‚wp‘ Hook. Anschließend nutzt es den Rückgabewert von WPMLs ‚wpml_current_language‘ Filter.

Wenn du das was WPML bei diesem Filter zurückgibt, im WP-Hook änderst, musst du anschließend von uns die Config und die Content Blocker neu laden.

 

// Load config with new language code
BorlabsCookie\Cookie\Config::getInstance()->loadConfig('DER_NEUE_LANGUAGE_CODE');
// Load Content Blocker settings with new language code
BorlabsCookie\Cookie\Frontend\ContentBlocker::getInstance()->init();

ACHTUNG: Das ist alles so nicht vorgesehen und die direkte Verwendung von unseren Klassen sollte niemals erfolgen. Diese Lösung kann daher bei einem Update eventuell nicht mehr funktionieren. Für die Version 3.0 kann ich dir versichern, dass diese Methode nicht mehr funktionieren wird und du deinen Code dann anpassen müsstest (Version 3.0 hat noch keinen finalen Releasetermin, Q3 ist angepeilt).

Hilfreiches Mitglied Beantwortet vor am Juli 24, 2021.
Kommentar hinzufügen

Deine Antwort

Mit dem Absenden deiner Antwort erklärst du dich mit den Datenschutzbestimmungen und den Nutzungsbedingungen einverstanden.