So erkennen Sie die aktuelle Sprache einer Joomla! Webseite?

Lesezeit: 1 Minute

Benutzer-Avatar
Leonie

Ich möchte nur einen Code generieren, der die aktuelle Sprache meiner Website in Joomla + PHP erkennt

  • von welcher sprache sprichst du? Programmieren oder gesprochene Sprache oder Browsersprache?

    – Sarfraz

    28. Juli 2010 um 11:14 Uhr

Benutzer-Avatar
MvanGeest

Sehen getLanguage in JFactory:

$lang = JFactory::getLanguage();
echo 'Current language is: ' . $lang->getName();

Sobald Sie die Sprache haben, können Sie auch den Gebietsschema-/Sprachcode abrufen (z en-US). Joomla! Sprachen können mehrere Gebietsschemas haben, sodass Sie ein Array erhalten.

$lang = JFactory::getLanguage();
foreach($lang->getLocale()  as  $locale) {
    echo 'This language supports the locale: ' . $locale;
}

Wenn Sie aus irgendeinem Grund nur am ersten Gebietsschema interessiert sind, können Sie einfach das erste Element greifen. Sie benötigen wahrscheinlich ein Array wie dieses:

$lang = JFactory::getLanguage();
$locales = $lang->getLocale();
echo 'This language\'s first locale is: ' . $locales[0];

Wenn Sie nur das ausgewählte Sprach-Tag (z. B. pt-PT) erhalten möchten, können Sie getTag() verwenden.

$lang = JFactory::getLanguage();
echo 'Current language is: ' . $lang->getTag();

  • Wer weiß, wie man die aktuelle Sprachflagge bekommt? Danke!

    – Das Leben ist kurz

    1. März 2013 um 5:48 Uhr

In Joomla 3.4+ funktioniert die Antwort von @MvanGeest immer noch. Hier ist eine Liste nützlicher Funktionen, die für das Sprachobjekt vorhanden sind:

  • Holen Sie sich einen Überblick über die aktuelle Sprache durch ein Objekt vom Typ JLanguage

    $currentLanguage = JFactory::getLanguage();
    
  • Holen Sie sich den aktuellen Sprachnamen:

    $currentLanguageName = $currentLanguage->get('name');
    
    //OR
    
    $currentLanguageName = $currentLanguage->getName();
    
  • Überprüfen Sie, ob RTL (was bei der arabischen Sprache und einigen anderen Sprachen der Fall ist)

    $isRTL = $currentLanguage->get('rtl');
    
    //OR
    
    $isRTL = $currentLanguage->isRtl();
    
  • Holen Sie sich das aktuelle Sprach-Tag:

    $currentTag = $currentLanguage->get('tag');
    
    //OR
    
    $currentTag = $currentLanguage->getTag();
    
  • Holen Sie sich eine Liste aller bekannten Sprachen:

    $arrLanguages = $currentLanguage->getKnownLanguages();
    

1256610cookie-checkSo erkennen Sie die aktuelle Sprache einer Joomla! Webseite?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy