Function Reference: geodir_wpml_ajax_set_guest_lang
Summary
Set the WPML language for AJAX requests for non logged user.
Description
Custom AJAX requests always return the default language content.
Global Values
- $sitepress
- (object) (required) Sitepress WPML object.
- Default: None
Change Log
Since: 1.6.18
Source File
geodir_wpml_ajax_set_guest_lang() is located in geodirectory_hooks_actions.php [Line: 2936]
Source Code
function geodir_wpml_ajax_set_guest_lang() {
if ( geodir_is_wpml() && wpml_is_ajax() && !is_user_logged_in() ) {
if ( empty( $_GET['lang'] ) && !( !empty( $_SERVER['REQUEST_URI'] ) && preg_match( '@\.(css|js|png|jpg|gif|jpeg|bmp)@i', basename( preg_replace( '@\?.*$@', '', $_SERVER['REQUEST_URI'] ) ) ) ) ) {
global $sitepress;
$referer = wp_get_referer();
$current_lang = $sitepress->get_current_language();
$referrer_lang = $sitepress->get_language_from_url( $referer );
if ( $referrer_lang && $current_lang != $referrer_lang ) {
$_GET['lang'] = $referrer_lang;
}
}
}
}