Einfacher Multilanguage Switcher

Zuerst habe ich wp mit unterschiedlicher languange mit indonesischer languange als Voreinstellung installiert, ich habe Plan, möchte mit anderer languange übersetzen, Wie man einfachen Übersetzungsschalter übersetzt, aber indonesisch als Voreinstellung behalten. mit der .po-Datei

Danke für die Hilfe …

Solutions Collecting From Web of "Einfacher Multilanguage Switcher"

Angenommen, Sie sprechen über das Frontend und Sie haben Ihre Strings ordnungsgemäß internationalisiert, müssen Sie nur die function load_theme_textdomain () einfügen, um WordPress mitzuteilen, wo sich Ihre .po-Dateien befinden.

So macht es das Toolbox-Theme:

/** * Make theme available for translation * Translations can be filed in the /languages/ directory * If you're building a theme based on martins, use a find and replace * to change 'martins' to the name of your theme in all the template files */ load_theme_textdomain( 'martins', TEMPLATEPATH . '/languages' ); $locale = get_locale(); $locale_file = TEMPLATEPATH . "/languages/$locale.php"; if ( is_readable( $locale_file ) ) require_once( $locale_file ); 

AKTUALISIEREN:

Ich habe einmal mit wechselnden Benutzergebietsschema gespielt, um das automatisch zu tun, indem ich die Benutzersprache aus dem Superglobal $ _SERVER erhalte.

Ich habe das erfunden, aber es funktioniert noch nicht. Vielleicht kannst du damit arbeiten.

ACHTUNG: DIESES IST UNGESCHÄTZT UND KÖNNTE SICH SELBST ODER SELBST BRECHEN AUF IHRE WEBSEITE BEHALTEN

 function rm_get_locale($lang) { global $locale; // This gets the users' primary browser settings for acceptable languages // and transforms the string so it looks like en_US or pt_BR rather than // en-us and pt-br. It takes only the first value returned, no all of them. $langcode = explode(";", $_SERVER['HTTP_ACCEPT_LANGUAGE']); $langcode = explode(",", $langcode['0']); $langcode = $langcode['0']; $langcode = preg_split('/-/', $langcode); $upper = strtoupper($langcode[1]); $lower = $langcode[0]; // now we get the native wp locale and the parsed user locale $wplocale = get_locale(); $userlocale = implode('_',array($lower,$upper)); // compare them and apply the user's locale if they don't match. if ($userlocale != $wplocale) { return $userlocale; } else { return $lang; } } add_filter('locale','rm_get_locale');