【发布时间】:2012-08-08 16:18:01
【问题描述】:
我正在尝试在 wordpress 中重写一个 url,以便我可以根据传递的变量提供动态内容。我有一个插件,需要将可变数据传递给它。目前我有:
http://xyzsite.com/page/?var1=something
这可以正常工作并传入 $_GET 变量。所以我的下一步是清理变量,使其看起来像
http://xyzsite.com/page/something
我已经进行了一些谷歌搜索,并访问了一些看起来很有希望的网站,但我无法让它们中的任何一个工作。根据我的阅读,我需要使用
add_rewrite_tag and add_rewrite_rule
阅读完文章后,我已将其添加到我的 functions.php 页面:
add_rewrite_tag('%var1%','([^&]+)');
add_rewrite_rule('^page/([^&]+)/?','index.php?p=1141&var1=$matches[1]','top');
当我导航到页面 http://xyzsite.com/page/something 时,我收到 404 错误。当我导航到http://xyzsite.com/page/?var1=something 时,它仍然可以正常工作。所以看起来我的重写没有注册或正常工作。
有人可以帮我实现上述重写。仅供参考,我的永久链接设置设置为帖子名称,如果这很重要的话。谢谢。
【问题讨论】:
-
您检查过您的
.htaccess文件了吗?也许您没有.htaccess文件,或者它被忽略了。如果我是你,我会先尝试进行正常的 url 重写(使用永久链接设置),如果可行,那么只有从add_rewrite_tag()和add_rewrite_rule()开始。
标签: wordpress url-rewriting rewrite