我使用这个php来重定向http服务器语言上的语言,而不是使用apache

$langs=explode(",",$_SERVER['HTTP_ACCEPT_LANGUAGE']);
if(!is_array($langs))$langs=array($langs);
foreach($langs as $l){
    $reallang=(strlen($l)>2)?strtolower(substr($l,0,2)):strtolower($l);
    if(!class_exists('WPGlobus'))break;
    $currentlanguage=WPGlobus::Config()->language;
    /*echo "Testing browser lang $reallang<br>Current language is $currentlanguage<br>";*/ //DEBUG
    if($reallang==$currentlanguage)break;
    foreach(WPGlobus::Config()->enabled_languages as $lang) {
        if($lang==$reallang)header("Location: ".WPGlobus_Utils::localize_current_url($lang));
    }
}

现在的问题是,我不能访问我的管理面板,因为它改变了网址。我怎么能把这个设置成只在前端工作呢?

最佳答案

在运行代码之前检查is_admin()! defined( 'DOING_AJAX' )。那你就确定你不在管理区了。

10-02 17:48