使用自定义POST类型重写GET参数

时间:2012-10-02 作者:user21036

我现在尝试了几天来解决以下问题:

我有一个自定义的帖子类型,叫做gallery. 我需要URL

http://example.com/gallery/FOOBAR
分析如下

http://example.com/gallery/?param=FOOBAR
自定义帖子类型的永久链接设置为:

/gallery/%postname%/%year%/%monthnum%/%day%/
我想我已经尝试了我能找到的每一个代码来解决这个问题,但似乎什么都不起作用
如果我刷新所有重写,则我的链接将不再有效(404)

甚至有可能吗?

1 个回复
SO网友:Parham

我认为应该行得通。首先,需要注册重写规则和参数:

function my_init() {
    add_rewrite_rule(
        \'gallery/(.+?)/?$\',
        \'index.php?post_type=gallery&param=$matches[1]\',
        \'top\' );
    add_rewrite_tag(\'%param%\',\'([^&]+)\');
}
add_action(\'init\', \'my_init\');
然后可以从查询中读取参数值:

$param = get_query_var(\'param\');
别忘了刷新重写。(只需查看“重写设置”页面即可刷新规则)

结束

相关推荐

Permalinks Won't Work

由于某种原因,永久物不会起作用。我单击选项3的单选按钮,然后单击保存,但它会返回到选项1。发生什么事了?(这不应该是FTP问题-它有本地主机访问数据库的权限,我可以在Wordpress fine中下载插件。)