我已按照本指南创建符合 SEO 的多语言 url,现在我需要使用 slug url 为一些模块设置 url 规则。
使用的规则在读取 url 时工作正常,即像这样编写 url
www.mywebsite.com/en/pages/hello-world
(它加载正确的页面)。
但是使用 createUrl 函数,它仅在 slug 不包含任何破折号时返回一个有效的 url,即使用 slug "hello" createUrl 返回
www.mywebsite.com/en/pages/hello
但是使用 slug "hello-world" createUrl 返回
www.mywebsite.com/pages/hello-world/language/en
这是使用的规则:
'<language:(en|de)>/<controller:pages>/<slug:[\w\-]+>'=>'pages/view'
我以这种方式调用 createUrl:
createUrl('pages/' . $slug)
我不知道出了什么问题...