繁体   English   中英

TYPO3 RealUrl:从URL段中选择页面树和语言

[英]TYPO3 RealUrl: select pagetree and language from url segment

每个区域(例如德国,瑞士)都有多个页面树。 使用L参数将页面本身翻译成多种语言(例如,de,en)。

现在,Realurl应该从2个url段匹配到适当的页面树和语言。 我知道如何使用_Domains功能为每个区域使用单独的域来完成。 但是在这种情况下,所有区域的域始终保持不变。 使用Realurl可以实现吗?如何实现?

http://example.com/de/de =>应该映射到具有rootpage_id 1和语言de(L = 0)的pagetree

http://example.com/de/en =>应该映射到rootpage_id为1且语言为en(L = 1)的pagetree

http://example.com/ch/de =>应该映射到具有rootpage_id 2和语言de(L = 0)的pagetree

http://example.com/ch/zh-CN =>应该以rootpage_id 2和语言en(L = 1)映射到pagetree

real_url.conf

<?php
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']['_DEFAULT'] = array(
    'init' => array(
        'enableCHashCache' => 1,
        'appendMissingSlash' => 'ifNotFile,redirect',
        'adminJumpToBackend' => 1,
        'enableUrlDecodeCache' => 1,
        'enableUrlEncodeCache' => 1,
        'emptyUrlReturnValue' => '/'
    ),
    'pagePath' => array(
        'type' => 'user',
        'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
        'spaceCharacter' => '-',
        'languageGetVar' => 'L',
        'expireDays' => '3',
        'rootpage_id' => 1,
        'firstHitPathCache'=>1
    ),
    'preVars' => array(
        array(
            'GETvar' => 'L',
            'valueMap' => array(
                'de' => '0',
                'en' => '1',
            ),
            'valueDefault' => 'de',
        ),
       array(
            'GETvar' => 'no_cache',
            'valueMap' => array(
                'no_cache' => 1,
            ),
            'noMatch' => 'bypass',
        ),
    ),
);

现在,Realurl应该从2个url段匹配到适当的页面树和语言。

RealURL无法做到这一点。 根页ID是在处理段之前确定的。 它由域记录或您的RealURL配置定义。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM