【问题标题】:TYPO3 RealUrl detail view fixedPostVarsTYPO3 RealUrl 详细视图 fixedPostVars
【发布时间】:2017-01-23 16:31:24
【问题描述】:

您好,对于我的扩展,我使用 RealUrl fixedPostVars 作为详细视图..

    'fixedPostVars' => array(
'article' => array(
    array(
        'GETvar' => 'tx_bla_news[action]',
        'valueMap' => array(
            'show' => '',
        ),
        'noMatch' => 'bypass'
    ),
    array(
        'GETvar' => 'tx_bla_news[controller]',
        'valueMap' => array(
            'Article' => '',
        ),
        'noMatch' => 'bypass'
    ),
    array(
        'GETvar' => 'tx_bla_news[article]',
        'lookUpTable' => array(
            'table' => 'tx_bla_domain_model_article',
            'id_field' => 'uid',
            'alias_field' => 'title',
            'addWhereClause' => ' AND NOT deleted',
            'useUniqueCache' => 1,
            'useUniqueCache_conf' => array(
                'strtolower' => 1,
                'spaceCharacter' => '-',
            ),
            'languageGetVar' => 'L',
            'languageExceptionUids' => '',
            'languageField' => 'sys_language_uid',
            'transOrigPointerField' => 'l10n_parent',
            'autoUpdate' => 1,
            'expireDays' => 180,
            'enable404forInvalidAlias' => 1,
        ),
    ),
),
'85' => 'article',

这会生成一个不错的详细视图 URL,例如 https://www.bla.com/article/title

现在,当文章被编辑时,该 URL 在第一次点击时不再起作用,我们需要转到列表视图从那里单击它,然后才能再次起作用。

我在 2 个不同的扩展上得到了这种行为。上面的比较简单。

我该如何解决这个问题。 RealUrl 2.15

[编辑 1 月 24 日] ================

保存记录后,tx_realurl_urldata 和 tx_realurl_uniqalias 中记录的相应条目将被删除。 如何防止保存时丢失条目??

tx_realurl_uniqalias 获得一个过期时间戳。

如果动作部分发生变化

    'valueMap' => array(
        'show' => 'show',
     ),
    'noMatch' => 'bypass'

或者只是在

    'valueDefault' => 'show'

它工作正常。但是我总是得到一个额外的 URL 部分显示..

======== 感谢 Franske,我得到了它的工作:)

使用 ts 的解决方案:

    [globalVar = GP:tx_bla_news|article > 0]
        config.defaultGetVars {
        tx_bla_news {
            controller = Article
            action = show
        }
     }
    [global]

【问题讨论】:

  • 有没有逻辑改变原始记录的标识?例如,更改 UID 的内容或原始记录在创建新记录时被删除?
  • 不,UID 保持不变。这是一个相当简单的扩展。
  • “URL 不再起作用”究竟是什么意思?你得到什么样的错误?
  • 它只是转到默认操作(列表视图),但仍然是详细视图 URL bla.com/article/title
  • 不确定它是否仍然有效或存在,但您是否启用了 plugin.tx_yourextension.mvc.callDefaultActionIfActionCantBeResolved = 1?如果是,请将其停用以希望得到一个有用的错误。

标签: typo3 typo3-7.6.x realurl


【解决方案1】:

你的问题是tx_realurl_urldata被删除了。

一旦发生这种情况,realurl 将无法重建您的 url。在尝试解码 /article/title 时,它认为 title 是您要调用的操作,并且不存在因此您得到 404

我建议将动作和控制器部分移到 url 的末尾。或者甚至可以删除它们并像https://docs.typo3.org/typo3cms/extensions/news/AdministratorManual/BestPractice/Realurl/Index.html#removing-controller-and-action-arguments-from-url一样解决它

【讨论】:

  • 谢谢!我添加了打字稿。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多