更改语言时,真实URL只显示index.php?id = xx [英] Real URL only shows me index.php?id=xx when changing language

查看:265
本文介绍了更改语言时,真实URL只显示index.php?id = xx的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果我查看我的默认语言,则链接会有说话网址(www.yoursite.com/company/about-us.html)。但现在我添加了一种语言,如果我查看链接,我会得到

If I look at my default language the links have speaking url (www.yoursite.com/company/about-us.html). But now I added a language and if I look at the links I get

www.yoursite.com/index.php?id=63& L = 1

有什么问题?这是我的列表菜单的Typoscript:

What is wrong? This is my Typoscript for the list menu:

lib.tsfootermenu1 = COA
lib.tsfootermenu1 {

  10 = HTML
  10.value = <p class="ContentOverviewHeading">


  15 < tmp.tsfootermenu1

  20 = HTML
  20.value = </p>

  25 = HMENU
  25  {
    special = directory
    special.value = 63
    entryLevel = 0

    1 = TMENU
    1.wrap = <ul>|</ul>
    1{
        expAll = 0
        NO{
          ATagTitle.field = title
          wrapItemAndSub = <li>|</li>
          ATagParams = class="SubMenu1"
        }
    }
  }
}

TS读出文件夹中的所有元素并显示一个列表。我已经为文件夹及其中的元素添加了页面翻译,但我仍然得到index.php?id = xx URL。当然我清除了真正的网址和页面缓存。

The TS reads out all elements in a folder and shows a list. I have added a page translation for the folder and the elements in it, but I still get the index.php?id=xx URL. Of course I cleared the real url and page cache.

编辑:

我的realURL配置:

My realURL config:

$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'] = array ( 
'_DEFAULT' => array (
    'init' => array (
        'enableCHashCache' => '1',
        'appendMissingSlash' => 'ifNotFile',
        'enableUrlDecodeCache' => '1',
        'enableUrlEncodeCache' => '1',
    ),
    'redirects' => array (
    ),
    'preVars' => array (
        '0' => array (
            'GETvar' => 'no_cache',
            'valueMap' => array (
                'nc' => '1',
            ),
            'noMatch' => 'bypass'
        ),
        '1' => array (
            'GETvar' => 'L',
            'valueMap' => array (
                'de' => '0',
                'en' => '2',
                'valueDefault' => 'de',
            ),
            'noMatch' => 'bypass',
        ),
        '2' => array (
            'GETvar' => 'lang',
            'valueMap' => array (
                'de' => 'de',
                'en' => 'en',
            ),
            'noMatch' => 'bypass',
        ),
    ),
    'pagePath' => array (
        'type' => 'user',
        'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
        'spaceCharacter' => '-',
        'languageGetVar' => 'L',
        'expireDays' => '7',
        'rootpage_id' => '1',
    )

修改:

我的解决方案看起来像我将完整配置更改为L = 2。 Typo3显然存在删除语言的一些问题。


My solution looked like I changed the complete config to L=2. Typo3 has obviously some problems with a deleted language.

推荐答案

至少你没有定义L ​​= 1的映射,只有L您的Realurl配置中= 0或L = 2.

At least you did not define an mapping for L=1, only L=0 or L=2 in your Realurl config.

这篇关于更改语言时,真实URL只显示index.php?id = xx的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆