目前我网站的网址格式如下:
http://www.website.com/category/1518-alias
我需要将url的格式更改为以下内容:
http://www.website.com/category/alias-1518
也就是说,我想将网址中文章ID的位置更改为结尾。
任何人都可以帮助我尽快完成这项工作。
答案 0 :(得分:0)
如果别名可以是数字,则无法通过重写来完成。
http://www.website.com/category/1518-2013
将被重写为:
http://www.website.com/category/2013-1518
导致路由模糊。
您需要使用插件或黑客路由器代码更改自定义路由到Joomla。
http://docs.joomla.org/Search_Engine_Friendly_URLs#tab=Implementation_Details
P.S。:如果您正在为Joomla更改Joomla中SE友好URL的格式,那么更改现有URL以将ID后缀到最后将不会是一个重要的收益,如果有的话。如果您在现有网站上执行此操作,则可能会出现负排名波动。如果你说为什么要改变URL的格式,我可以提供替代方案和解决方案来解决你的问题"为什么"。
答案 1 :(得分:0)
如果您使用的是linux或Cygwin并且拥有GNU sed,请尝试运行以下命令:
sed -i 's/\(http:\/\/[[:alnum:]]*\/[[:alnum:]]*\/\)\([[:digit:]]*\)-\([[:alpha:]]*\)/\1\3-\2/' *.php
这告诉sed找到格式为“http:// [website] / [category] / [number] - [alias]”的所有字符串并交换[number]和[alias]字段,假设您的网站名称仅使用字母数字字符。
如果嵌套目录结构中有多个文件,则可以执行以下操作:
find /path/to/your/site/data -name '*.php' -exec sed -i 's/\(http:\/\/[[:alnum:]]*\/[[:alnum:]]*\/\)\([[:digit:]]*\)-\([[:alpha:]]*\)/\1\3-\2/' '{}' ';'