我有一个包含catname(catename)和catid(23)的表。 现在在url我显示catid = 23。 我已经定义了一个重写规则,在url中显示example.com/13:example.com?catid = 13 是否有可能实现以下
在url:example.com/catename中 它显示的实际页面:example.com?catid=13
答案 0 :(得分:5)
首先,您还要在网址中发送类别名称。
然后在.htaccess
中使用
RewriteRule ^(.*)-c-(.*).html$ product_info.php?catid=$2%1
它对我有用。
另一种解决方案
如果您只想显示catname
,而不是catid
,那么您希望在表格中使用唯一键创建新字段。然后在此处保存要在URL中显示的类别的别名。
答案 1 :(得分:1)
这是可能的。您需要确保catname
是唯一的,如果不是,则需要添加一个额外的字段permalink / uniqid,以包含唯一且友好的URL别名。
RewriteRule ^/(\s+)$ ./index.php?catname=$1
然后,您需要在PHP文件中检查catname
并进行相应处理。
答案 2 :(得分:1)
如果您的类别名称不是唯一的,最好的办法是使用example.com/13-catname等网址。 更改重写规则以提取ID并将其传递给PHP脚本。
答案 3 :(得分:0)
感谢您的建议。现在我明白了。由于catname不是唯一的两个页面可以有相同的url,为此我必须确保它应该是唯一的。我可以在前面添加Id以使其独特。从这个名字我可以实现这一点。非常感谢。