WPML
wpml_browser_redirect_language_params
Typ
filter
WPML-Version
4.0.6

Beschreibung

Dieser Filter kann verwendet werden, wenn der Theme-Entwickler einen anderen Cookie-Namen verwenden oder das Array languageUrls anpassen möchte, um andere URLs zu verwenden.

Er verwendet das Argument $params, ein assoziatives Array, das einige Informationen über die aktuelle Sprache, die aktiven Sprachen und die Cookie-Einstellungen enthält.

Argumente

pageLanguage
Speichert den aktuellen Sprachcode.
languageUrls
Speichert ein assoziatives Array, das alle Übersetzungs-URLs der aktuellen Seite enthält. Die Schlüssel des Arrays sind die Sprachcodes. Dieselbe Sprache kann über mehrere Einträge verfügen, um einer anderen Kombination von Sprachcodes zu entsprechen. Im Fall von en_US wird beispielsweise dieselbe URL dreimal mit den folgenden Schlüsseln wiederholt: en_us, en und us.
cookie
Speichert ein assoziatives Array mit den Cookie-Einstellungen. Weitere Details finden Sie unter Document.cookie. Die Schlüssel sind:
  • name: der Name des Cookies (standardmäßig _icl_visitor_lang_js).
  • domain: die Domain, in der das Cookie verwendet werden muss (standardmäßig die aktuelle Domain; diese sollte nicht geändert werden).
  • path: der Pfad des Cookies (standardmäßig /).
  • expiration: die Ablaufzeit in Sekunden wird aus dem Wert gelesen, der unter Sprachpräferenz der Besucher speichern festgelegt ist, zu finden unter Browser-Sprachumleitung unter WPML → Einstellungen → Sprachen.

Beispielhafte Verwendung

Um diesen Filter zu verwenden, muss die Browser-Sprachumleitung unter WPML → Einstellungen → Sprachen aktiviert sein.

Der folgende Code kann verwendet werden, um den Browser für einen Beitrag auf die Startseite umzuleiten, wenn in eine bestimmte Sprache gewechselt wird

function example_callback( $params ) {
	global $post;
	// Redirect the French language to the home page if the current page ID is 123
	if ( $post->ID === 123 ) {
		$params['pageLanguage'] = 'en';
		$params['languageUrls'] = [ 'fr' => 'http://example.com/fr/' ];
	}
	return $params;
}
add_filter( 'wpml_browser_redirect_language_params', 'example_callback' );

wpml_decode_custom_field, wpml_footer_language_selector, wpml_add_language_form_field, wpml_ls_exclude_in_menu, wpml_is_rtl, wpml_alternate_hreflang, wpml_head_langs, wpml_must_translate_canonical_url, wpml_active_languages, wpml_encode_custom_field

Alle 30 Websiteübergreifende Sprachinformationen-Hooks