Ich versuche, den aktuellen Sprachcode über zu erhalten ICL_LANGUAGE_CODE
in meinem Plugin, aber ich kann nicht, es ist nicht definiert, das Ergebnis davon
echo "Code: ".ICL_LANGUAGE_CODE;
ist
Code: ICL_LANGUAGE_NAME
Wenn ich folgendes versuche
global $sitepress;
$current_language = $sitepress->get_current_language();
echo "Code:". $current_language ;
Ich bekomme den leeren Bildschirm.
Ich weiß nicht, auf welche Weise ich es bekommen kann.
In der Theme functions.php funktioniert alles einwandfrei. Vielen Dank.
Sie können den WPML-Standardfilter verwenden, um die aktuelle Sprache wie folgt zu erhalten
$my_current_lang = apply_filters( 'wpml_current_language', NULL );
Das Ergebnis enthält Ihren aktuellen Sprachcode wie: ar , en , fr … usw
Diese Konstante ist veraltet. Bitte verwenden Sie stattdessen diese https://wpml.org/wpml-hook/wpml_aktuelle_Sprache/
Die vollständige neue WPML-API ist hier aufgelistet, falls Sie weitere Fragen haben
https://wpml.org/documentation/support/wpml-coding-api/wpml-hooks-reference/
Oder Sie können jederzeit Fragen im offiziellen wpml.org-Forum stellen 🙂
Sie können den folgenden Code verwenden, um den aktuellen Sprachcode zu erhalten. Ich habe dies in einem meiner Plugins ausprobiert und es funktioniert.
if ( defined( 'ICL_LANGUAGE_CODE' ) ) {
echo ICL_LANGUAGE_CODE;
}
/* WPML-Sprache mit Code abrufen: */
<?php
$languages = icl_get_languages('skip_missing=0&orderby=code&order=DIR');
foreach ($languages as $lang) {
?>
<li style = "list-style:none;">
<a href="<?php echo $lang['url']; ?>">
<img style="float:left; margin: 3px 5px 0 0;" src="<?php echo $lang['country_flag_url']; ?>" height="12" width="18" />
<?php echo $lang['native_name']; ?>
</a>
</li>
<?php
}
?>
13007000cookie-checkWPML – Holen Sie sich die aktuelle Sprache in einem anderen Pluginyes
wpml.org/forums/topic/icl_language_code-not-available
– mujuonly
16. August 2016 um 11:36 Uhr
Nein, es hilft nicht, ich habe auch versucht, mein Plugin und WPML-Plugin zu aktivieren/deaktivieren, die active_plugins-Liste überprüft, mein Plugin ist zuerst
– dkruchok
16. August 2016 um 11:59 Uhr