我有两个变量:"tl_language“和"filterLanguage”。现在我使用以下代码:
switch($GLOBALS['TL_LANGUAGE'])
{
case 'de':
if (!$entry->field('beschreibung')->value()){
include ("includes/mediacenter_content_de.php");
}else{
include ("includes/mediacenter_content_en.php");
}
break;
case 'en':
if (!$entry->field('beschreibung')->value()){
include ("includes/mediacenter_content_en.php");
}else{
include ("includes/mediacenter_content_de.php");
}
break;
case 'fr':
if (!$entry->field('beschreibung')->value()){
include ("includes/mediacenter_content_fr.php");
}else{
include ("includes/mediacenter_content_en.php");
}
break;
case 'nl':
if (!$entry->field('beschreibung')->value()){
include ("includes/mediacenter_content_nl.php");
}else{
include ("includes/mediacenter_content_en.php");
}
break;
default:
echo $entry->field('beschreibung_englisch')->value();
break;
}
?>现在我想添加一个过滤器,用户可以单独过滤语言。例如,如果tl_language是"de“,则显示细菌内容,或者如果filterLanguage是"de”,则显示德国内容。
现在,我正在尝试这样做:
if($GLOBALS['TL_LANGUAGE'] =="de" or $cc_language == "de"){
if (!$entry->field('beschreibung')->value()){
include ("includes/mediacenter_content_de.php");
}else{
include ("includes/mediacenter_content_en.php");
}
}
if($GLOBALS['TL_LANGUAGE'] =="en" or $cc_language == "en"){
if (!$entry->field('beschreibung')->value()){
include ("includes/mediacenter_content_en.php");
}else{
include ("includes/mediacenter_content_de.php");
}
}但它显示了双重内容。
发布于 2016-09-19 17:12:08
我建议使用第三个变量。我假设$cc_language有更高的优先权。使用您的第一个代码。
$lang = ( isset($cc_language) && !empty($cc_language) ) ? $cc_language : $GLOBALS['TL_LANGUAGE'];
switch( $lang ) {https://stackoverflow.com/questions/39568743
复制相似问题