我有一个启用了 sef url 的多语言 joomla 2.5 网站。页面严重依赖ajax,所以各种内容都是从服务器拉出来的好旧的
window.onload
事件。为了使一切正常并且 url 看起来不错,我想强制 Joomla 在页面加载和调用模板的 index.php 时始终以站点默认语言响应。
或者描述不同的问题:
如果 ajax 调用拉取与默认语言不同的项目并且随后进行页面刷新,joomla 将重定向到最后一个 ajax 调用语言的主页,这就是我想要阻止的。
问候
我有一个启用了 sef url 的多语言 joomla 2.5 网站。页面严重依赖ajax,所以各种内容都是从服务器拉出来的好旧的
window.onload
事件。为了使一切正常并且 url 看起来不错,我想强制 Joomla 在页面加载和调用模板的 index.php 时始终以站点默认语言响应。
或者描述不同的问题:
如果 ajax 调用拉取与默认语言不同的项目并且随后进行页面刷新,joomla 将重定向到最后一个 ajax 调用语言的主页,这就是我想要阻止的。
问候
得到它的工作!问题本身是错误的!我应该一直在问:“如何以默认语言重定向到首页?”
回答:
$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 );
}
完毕!
问候....