Ermittelt die Daten als Array zu korrespondierenden Sprachversionen
<!-- Auszug aus /[IHR-LAYOUT-PROJEKT]/wGlobal/layout/templates/misc/includes.global.php --> ... <!-- Sprachwahl: Hier werden bei aktivierter Sprachwahl die verfügbaren Sprachen angeboten. --> <xsl:template name="languageSelector" wChecksum="cab872472aee6356e45d753d838cd1eb"> <wsl:php> $languagesDisplay = '<xsl:value-of select="php:functionString('wVariables::getValue', 'languages_display', $wGlobalProjectPath)" />'; $languagesExclude = '<xsl:value-of select="php:functionString('wVariables::getValue', 'languages_exclude', $wGlobalProjectPath)" />'; $wGlobalProjectPath = '<xsl:value-of select="$wGlobalProjectPath" />'; <![CDATA[ $correspondentLanguageFiles = wPageCur::getCorrespondentLanguageFiles('', array('create' => true, 'checkOnline' => true, 'checkPersonalization' => true, 'languagesExclude' => $languagesExclude)); $languageKeys = array_keys($correspondentLanguageFiles); if($languagesDisplay != ''){ $languageKeys = explode('|', $languagesDisplay); } foreach($languageKeys as $language){ $data = $correspondentLanguageFiles[$language]; $text = wTexts::getText('languageSelector_'.$language); if($data['available'] == 1 && $language != ''){ $queryString = wStringconverter::applyFilter($_SERVER['QUERY_STRING'], 'secure'); $path = $queryString != '' ? $data['path'].'?'.$queryString : $data['path']; if($data['current'] == 1){ print '<a class="langCurrent" href="'.$path.'"><img src="'.$wGlobalProjectPath.'/wGlobal/layout/images/flags/'.$language.'.gif" alt="'.$text.'" title="'.$text.'"/><span>'.$text.'</span></a>'; } else{ print '<a class="lang" href="'.$path.'"><img src="'.$wGlobalProjectPath.'/wGlobal/layout/images/flags/'.$language.'.gif" alt="'.$text.'" title="'.$text.'"/><span>'.$text.'</span></a>'; } } else if($data['parentPath'] != ''){ print '<a class="lang" href="'.wPathName::getDirTop($data['parentPath']).'"><img src="'.$wGlobalProjectPath.'/wGlobal/layout/images/flags/'.$language.'.gif" alt="'.$text.'" title="'.$text.'"/><span>'.$text.'</span></a>'; } else{ print '<a class="lang" href="'.$data['project'].'"><img src="'.$wGlobalProjectPath.'/wGlobal/layout/images/flags/'.$language.'.gif" alt="'.$text.'" title="'.$text.'"/><span>'.$text.'</span></a>'; } } ]]> </wsl:php> </xsl:template> ...
Das Array gibt jeweils alle definierten Sprachen zurück und kann nach verfügbar (available) und aktueller Sprache (current) geprüft werden (siehe Beispiel oben). Die Funktion unterstützt ab Version 005.040.005.000 die Prüfung auf Online-Status und Personalisierung einer Datei.
Hinweis
Beim Einsatz von Framework-Funktionen in eigenen Skripten beachten Sie bitte den Artikel "So verwenden Sie das PHP-Framework in eigenen Scripten".
Wenn Sie eine Funktion innerhalb einer Weblication® Seite z.B. über das PHP-Quelltext Element oder in einem XSL-Template über wsl:php einbinden, muss das Framework über die grid.php nicht mehr referenziert werden.