我正在工作的网站使用cooluri设置网址格式。对于新闻,“ link_cache”表的“ parameters”列中存储的参数如下:
a:3:{s:5:"cHash";s:32:"eea2db734d63b661abaab43d86fd3bb5";s:2:"id";s:5:"15503";s:18:"tx_ttnews[tt_news]";s:6:"142085";}
,或者以更具可读性的方式:
{
"cHash":"eea2db734d63b661abaab43d86fd3bb5",
"id":"15503",
"tx_ttnews[tt_news]":"142085"
}
我的问题是,有很多页面将这些url插入到内容元素中,如下面的示例所示,当然cHash参数不匹配。
website.com/news/some-title/431731b3f9d391a54c9ee48467ca4bb4.html
现在,由于这个原因,我在新闻单视图页面上收到以下错误消息:
未提供news_id
是否有解决此问题的干净方法?有人告诉我,不能更改后端中的链接。另外,链接非常旧,选项“ oldlinksvalidfor”设置为365。
答案 0 :(得分:0)
您的配置进入了代码块。这是Ext:CoolUri的配置。这对我来说很好(使用tt_news),这将从URL中删除cHash。您还具有用于管理缓存和所有内容的其他配置。
<predefinedparts>
<part>
<parameter>no_cache</parameter>
</part>
<part>
<parameter>cHash</parameter>
</part>
<!-- common patterns -->
<!-- parts defined this way will be removed from URL -->
<part>
<parameter>paramC</parameter>
</part>
<!-- this will prefix a value with "prefix-". Cannot be localized.
-->
<part key="prefix-(.*)" regexp="1">
<parameter>paramD</parameter>
</part>
<part key="page-(.*)" regexp="1">
<parameter>array[k5]</parameter>
</part>
<!-- if parameter matches value, key will be added to URL
with mutliple values, use valuemaps
-->
<part key="thisWillAppearInUrl">
<parameter>paramE</parameter>
<value>ifParamEMatcesThisValue</value>
</part>
</predefinedparts>
希望这对您有所帮助。
问候!