TYPO3 - 通过url GET参数访问记录的详细信息页面

问题描述 投票:0回答:1

我开发了一个带有列表和详细信息视图的extbase扩展(列表和显示操作)。不使用realurl ...详细视图的链接如下所示:

domain/index.php?id=43&/?tx_abc_abc[record]=1&tx_abc_abc[action]=show&tx_abc_abc[controller]=Abc 

当我更改网址中的记录ID时,我可以动态更改详细信息页面上的内容并访问记录:

domain/index.php?id=43&/?tx_abc_abc[record]=2&tx_abc_abc[action]=show&tx_abc_abc[controller]=Abc 
domain/index.php?id=43&/?tx_abc_abc[record]=3&tx_abc_abc[action]=show&tx_abc_abc[controller]=Abc 
domain/index.php?id=43&/?tx_abc_abc[record]=4&tx_abc_abc[action]=show&tx_abc_abc[controller]=Abc 

最终目标是让网址看起来像这样,并通过网址中的GET参数访问记录:

domain/abc/?abc=1
domain/abc/?abc=2
domain/abc/?abc=3
domain/abc/?abc=4

但是当激活realurl时...如果它在tx_realurl_urldata中不可用,我无法直接访问该记录。或者realurl设置应该如何?

什么是最好的解决方案?我有太多的记录(加上2种语言)来写入链接,并且始终可以在tx_realurl_urldata中使用。

所以我的想法是为这个特定的扩展停用realurl?但是怎么样?

或者我想在realurl_conf.php中排除详细信息页面:'excludePageIds'=> 42,43但这不起作用。

typo3 realurl typo3-8.x typo3-extensions
1个回答
0
投票

我为我自己的详细信息页面做了一个realurl配置,如下所示:

$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'] = [
    'www.domain.ch' => [
        ...
        ],
        'fixedPostVars' => [
            'extYourextensionDetailConfiguration' => [
                [
                    'GETvar' => 'tx_yourextension_abc[action]',
                    'noMatch' => 'bypass',
                ],
                [
                    'GETvar' => 'tx_yourtextension_abc[abc]',
                    'lookUpTable' => [
                        'table' => 'tx_yourextension_domain_model_abc',
                        'id_field' => 'uid',
                        'alias_field' => 'title',
                        'addWhereClause' => ' AND deleted=0 AND hidden=0',
                        'useUniqueCache' => true,
                        'useUniqueCache_conf' => [
                            'strtolower' => true,
                            'spaceCharacter' => '-',
                        ],
                        'enable404forInvalidAlias' => true,
                    ],
                ],
            ],
            ...,
            '99' => 'extYourextensionDetailConfiguration',
            ...,
        ],
        ...,
    ],
];

哪里

  • www.domain.ch是您的域名
  • extYourextensionDetailConfiguration是稍后使用的名称
  • alias_field是段的内容。如果要在手动更改URL之间切换,可以是ID
  • 99是具有详细视图的页面的ID
© www.soinside.com 2019 - 2024. All rights reserved.