典型的新闻通话如下:
http://myurl/?tx_news_pi1%5Bnews%5D=4916&tx_news_pi1%5Bcontroller%5D=News&tx_news_pi1%5Baction%5D=detail&cHash=ef6e70673f8c8be5eddd03ad8bb8e220
我想更改前端的uid,但是当我没有正确的哈希值时,它不起作用。是否可以仅通过uid调用newsitem,还是可以在前端创建哈希?像
http://myurl/?tx_news_pi1%5Bnews%5D=9999&tx_news_pi1%5Bcontroller%5D=News&tx_news_pi1%5Baction%5D=detail
而9999将被我的uid取代?
答案 0 :(得分:1)
是的,cHash(Cache Hash)与TYPO3中的缓存机制有关。在保持缓存机制工作的同时摆脱它的唯一方法是使用RealURL。 RealURL在内部处理cHash,因此无法显示它。
可以找到新闻的默认RealURL配置here。
这将生成http://mydomain.tld/news/detail/news-title
之类的链接,其中news-title
是标题的小写和空格版本。如果您希望新闻记录的UID作为标识符,则可以通过替换
'alias_field' => 'title',
通过
'alias_field' => 'uid',
然后清除缓存,您的UID将按配置生成。
您还可以使用MySQL函数组合title和uid,例如:
'alias_field' => 'CONCAT(SUBSTRING(title, 1, 249), \'-\', uid)',
这将使用标题中的字符1-249,添加短划线,然后添加UID。