【问题标题】:Force frontpage language强制首页语言
【发布时间】:2012-08-17 23:26:45
【问题描述】:

我有一个启用了 sef url 的多语言 joomla 2.5 网站。页面严重依赖ajax,所以各种内容都是老老实实从服务器拉出来的

window.onload

事件。为了使一切正常工作并且 url 看起来不错,我想强制 Joomla 在页面加载和调用模板的 index.php 时始终以站点默认语言响应。

或者描述问题不同:

如果 ajax 调用拉取了与默认语言不同的项目并且随后进行了页面刷新,joomla 将重定向到上次 ajax 调用语言的主页,这就是我想要阻止的。

问候

【问题讨论】:

    标签: ajax multilingual joomla2.5


    【解决方案1】:

    搞定了!问题本身是错误的!我应该一直在问:“如何以默认语言重定向到首页?”

    答案:

    $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 );
    }
    

    完成!

    你好……

    【讨论】:

    • 效果很好,对我帮助很大,谢谢!我想补充一点,, 'hallo', true 位会输出一条消息,如果您不想要任何消息,可以将其删除。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-09-22
    • 1970-01-01
    • 2011-01-06
    • 2021-08-02
    • 1970-01-01
    • 1970-01-01
    • 2013-08-21
    相关资源
    最近更新 更多