我有一个多语言的joomla 2.5网站与sef网址启用。该页面在很大程度上依赖于ajax,因此每种类型的内容都是从服务器中提取出来的
window.onload事件。为了让一切正常工作,urls看起来很漂亮,我想强制Joomla总是在页面加载并调用模板的index.php时使用站点的默认语言进行响应。
或者以不同的方式描述问题:
如果一个ajax-call拉出了一个不同于默认语言的项目,然后页面刷新,joomla会用上一次ajax-call的语言重定向到主页,这是我想要防止的。
问候
发布于 2012-08-22 22:29:53
让它工作了!问题本身是错误的!我应该问:“如何在默认语言中重定向到frontpage?”
答案:
$app = JFactory::getApplication();
$doc = JFactory::getDocument();
$languages = JLanguageHelper::getLanguages('lang_code');
$lang = JFactory::getLanguage();
$defaultLang = ( $lang->getTag() == $lang->getDefault() ) ? $lang : JLanguage::getInstance( $lang->getDefault() );
if( ! ( $lang->getTag() == $defaultLang->getTag() ) ){
$app->redirect( JRoute::_( 'index.php?lang='.$languages[ $defaultLang->getTag() ]->sef ), 'hallo', true );
}完成了!
问候……
https://stackoverflow.com/questions/12074823
复制相似问题