WordPress Inhalte nach Sprache anzeigen

Wenn du ein Sprachplugin wie Multilingual Press, Polylang, qTranslate X oder WPML nutzt, hattest du bestimmt schonmal das Problem, dass du außer den Inhalten einen Bestandteil des Themes für die jeweilige Sprache anders darstellen möchtest. Das Plugin kümmert sich zwar um die Text- und Bildinhalte die du in Beiträge und Seiten einfügst, aber nicht unbedingt um das drumherum.

Ein Use-Case für diesen wäre z.B. ein Slider oder ein Logo. Hier ist ein einfacher, erweiterbarer Codeschnipsel.

Beispiel: Shortcode anzeigen auf einer bestimmten Seite (13) mit einer bestimmten Sprache.

<?php if (is_page(13)) {
  $curLang = substr(get_bloginfo( 'language' ), 0, 2);
    switch ($curLang) {
      case "de":
      // german slider for german users
        echo do_shortcode("[slidey id='1']");
        break;
      case "en":
      // english slider for english users
        echo do_shortcode("[slidey id='2']");
        break;
      case "es":
      // spanish slider for spanish users
        echo do_shortcode("[slidey id='3']");
        break;
    }
  }
?>

Ich sehe gerade WPML hat dafür eigenen Konstanten (Quelle: http://www.openscriptsolution.com/cms/wordpress/how-to-get-current-language-code-by-using-wpml-plugin-of-wordpress/):

<?php
  if (ICL_LANGUAGE_CODE == 'en') {
    // put your code here if the current language code is 'en' (English)
  } elseif (ICL_LANGUAGE_CODE == 'id') {
    // put your code here if the current language code is 'id' (Indonesian)
  }
?>

Vielleicht habt ihr das ja schonmal selber gemacht. Würde mich interessieren wie!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.