Extbase:在realURL中配置控制器和操作以获取详细信息

时间:2015-01-08 17:41:45

标签: typo3 extbase typo3-6.2.x realurl

我对realURL和extbase感到疯狂。

列表/详细信息扩展是否有简单的解决方案来显示至少有序的网址,可能采用

的形式
/show/detail/title-of-the-item

“show”和“detail”是动作和控制器,例如

我一直在尝试删除控制器和操作,例如RealURL: Remove Controller and Action from URL中建议的那样 - 但是总会有一些不起作用的东西。疯。 它甚至没有移除cHash。

目前我的realurl_conf是:

<?php

$TYPO3_CONF_VARS['EXTCONF'] ['realurl'] ['_DEFAULT'] = getRealURL('1');


function getRealURL($root)
{
    return array(
        'init' => array(
            'appendMissingSlash' => 'ifNotFile',
            'enableUrlDecodeCache' => 1,
            'enableCHashCache' => 1,
            'enableUrlEncodeCache' => 1,
            'respectSimulateStaticURLs' => 0,
           'postVarSet_failureMode'=>'redirect_goodUpperDir',

        ),
    'redirects_regex' => array (

    ),
    'preVars' => array(
                        array(
                             'GETvar' => 'L',
                             'valueMap' => array(
                                                'de' => '0',
                                                'fr' => '1',
                                        ),
                             'valueDefault' => 'de',
                             'noMatch' => 'bypass',
                        ),
                      array(
                                'GETvar' => 'no_cache',
                                'valueMap' => array(
                                    'no_cache' => 1,
                                ),
                                '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,
        ),


         'postVarSets' => array(
            '_DEFAULT' => array(
                'wb' => array(
                    array(
                        'GETvar' => 'tx_weiterbildung_pi1[item]' ,
                        'lookUpTable' => array(
                            'table' => 'tx_weiterbildung_domain_model_item',
                            'id_field' => 'uid',
                            'alias_field' => 'kurs_titel',
                            'addWhereClause' => ' AND NOT deleted',
                            'useUniqueCache' => 1,
                            'useUniqueCache_conf' => array(
                                'strtolower' => 1,
                                'spaceCharacter' => '-',
                            ),
                        ),
                    ),
                ),
            ),
        ),

      'fileName' => array(
            'defaultToHTMLsuffixOnPrev'=>0,
            'index' => array(
                'rss.xml' => array(
                    'keyValues' => array(
                        'type' => 100,
                    ),
                ),
                'rss091.xml' => array(
                    'keyValues' => array(
                        'type' => 101,
                    ),
                ),
                'rdf.xml' => array(
                    'keyValues' => array(
                        'type' => 102,
                    ),
                ),
                'atom.xml' => array(
                    'keyValues' => array(
                        'type' => 103,
                    ),
                ),
            ),
        ),
 );
}
/**********************************
REALURL end
***********************************/
?>

1 个答案:

答案 0 :(得分:1)

不是很简单,但至少工作......

在我的每个分机中,我不要使用f:link.action VH,而是使用f:link.page,这样你就可以创建像

这样的链接
?id=123&tx_yourext_foo=bar

如果没有控制器和操作参数,当然正如您所看到的那样,您很可能需要修改您的FE插件,使用GeneralUtility::_GP('tx_yourext_foo')读取这些参数,特别是如果此插件使用多个on模式(行动)取决于参数