TYPO3 realurl 和 tx_news,使用整个标题 path-segment
TYPO3 realurl and tx_news, use title as entire path-segment
我使用 Yoast SEO 插件将一个 wordpress 网站迁移到 TYPO3,新闻文章 URL 仅使用域名和标题;
## example
http://example.com/news-title/
我使用 TYPO3 v8.7.10, tx_news 6.3.0 和 realurl 2.3.1
我知道如何使用 docs.typo3.org
中描述的 fixedPostVars 隐藏控制器和动作名称
当然我可以使用 .htaccess
进行永久重定向
我知道 user_encodeSpURL_postProc
和 user_decodeSpURL_preProc
配置中的技巧,但是我至少需要一个目录...
有人知道其他选择吗?
与
的组合
- 在起始页上使用新闻详细信息视图并且
- 使用 Real 的 postFixedVarsURL (https://github.com/dmitryd/typo3-realurl/wiki/Configuration-reference#fixedpostvars)
您可以创建这样一个 URL。
但我建议不要使用起始页并创建重定向到例如http://example.com/article/news-title/.
我提出这个解决方案
1) 跳过不需要的参数
通过使用以下设置
plugin.tx_news {
settings {
link {
skipControllerAndAction = 1
}
}
}
链接不再包含控制器和操作。我更喜欢使用它而不是在 realurl 中删除它,因为 realurl 中的魔力较少。
2.) 渲染首页单视图
澄清一下:首页是指第一页。
[globalVar = GP:tx_news_pi1|news > 0] && [globalVar = TSFE:id = HOMEPAGE-ID]
lib.news = USER
lib.news {
userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
pluginName = Pi1
vendorName = GeorgRinger
extensionName = News
controller = News
settings =< plugin.tx_news.settings
persistence =< plugin.tx_news.persistence
view =< plugin.tx_news.view
action = detail
switchableControllerActions.News.1 = detail
}
page.10 < lib.news
[end]
这只是概念验证,因为最终集成取决于如何呈现您的模板和内容。您还可以删除 page.10 < lib.news
并检查内容中的变量 lib.news
,或者将其分配给变量并在模板中检查。
我使用 Yoast SEO 插件将一个 wordpress 网站迁移到 TYPO3,新闻文章 URL 仅使用域名和标题;
## example
http://example.com/news-title/
我使用 TYPO3 v8.7.10, tx_news 6.3.0 和 realurl 2.3.1
我知道如何使用 docs.typo3.org
中描述的 fixedPostVars 隐藏控制器和动作名称
当然我可以使用 .htaccess
进行永久重定向
我知道
user_encodeSpURL_postProc
和user_decodeSpURL_preProc
配置中的技巧,但是我至少需要一个目录...
有人知道其他选择吗?
与
的组合- 在起始页上使用新闻详细信息视图并且
- 使用 Real 的 postFixedVarsURL (https://github.com/dmitryd/typo3-realurl/wiki/Configuration-reference#fixedpostvars)
您可以创建这样一个 URL。 但我建议不要使用起始页并创建重定向到例如http://example.com/article/news-title/.
我提出这个解决方案
1) 跳过不需要的参数
通过使用以下设置
plugin.tx_news {
settings {
link {
skipControllerAndAction = 1
}
}
}
链接不再包含控制器和操作。我更喜欢使用它而不是在 realurl 中删除它,因为 realurl 中的魔力较少。
2.) 渲染首页单视图
澄清一下:首页是指第一页。
[globalVar = GP:tx_news_pi1|news > 0] && [globalVar = TSFE:id = HOMEPAGE-ID]
lib.news = USER
lib.news {
userFunc = TYPO3\CMS\Extbase\Core\Bootstrap->run
pluginName = Pi1
vendorName = GeorgRinger
extensionName = News
controller = News
settings =< plugin.tx_news.settings
persistence =< plugin.tx_news.persistence
view =< plugin.tx_news.view
action = detail
switchableControllerActions.News.1 = detail
}
page.10 < lib.news
[end]
这只是概念验证,因为最终集成取决于如何呈现您的模板和内容。您还可以删除 page.10 < lib.news
并检查内容中的变量 lib.news
,或者将其分配给变量并在模板中检查。