自定义帖子类型、固定链接、添加查询变量问题

时间:2011-11-26 作者:quokka

做错了事,搞不清楚是什么。。非常感谢您的帮助!

我有一个自定义的帖子类型,我想在permalink结构中添加查询变量。。到目前为止还不错。。。。

这是wordking right:http://allehondenrassen.nl/kennel?artist=queen&genre=pop

这不起作用:http://allehondenrassen.nl/kennel/queen/pop/

in my archive-kennels.php I added:

echo get_query_var(\'artist\');
echo get_query_var(\'genre\');

In functions.php I added:

add_filter(\'page_rewrite_rules\', \'dvd_rewrite_rules\');
function dvd_rewrite_rules($rules)
{
global $wp_rewrite;
// custom post type name
$dvd_post_type = \'kennels\';
$dvd_rule = array(
    // Custom Rewrite Slug = kennel
    \'kennel/(.+)/(.+)/?\' => \'index.php?post_type=\' . $dvd_post_type . \'&artist=$matches[1]&genre=$matches[2]\'
);
return array_merge($dvd_rule, $rules);
}


add_filter(\'query_vars\', \'dvd_query_vars\');
function dvd_query_vars($vars)
{
$dvd_vars = array(
    \'artist\',
    \'genre\'
);

return array_merge($dvd_vars, $vars);
}
玩了几个小时,但看不出问题所在。。。提前感谢!Bas公司

1 个回复
SO网友:quokka

是的,我帮了忙,但还是谢谢你!我通过安装转储环境插件修复了它http://wordpress.org/extend/plugins/dump_env/

这样,我就能够评估所有现有的重写规则。我的自定义重写规则与WP默认为自定义帖子类型生成的现有重写规则冲突。

我改变了规则

\'kennel/ras/(.+)/(.+)/?$\' => \'index.php?post_type=\' . $dvd_post_type . \'&artist=$matches[1]&genre=$matches[2]\'
现在它正常工作了!dump env插件,这将在将来为我节省一些开发时间;)谢谢

结束

相关推荐

Custom permalinks

我们有一个自定义类型music./music/ /music/post-name/ 此外,我们还有一个类似标签的分类法genres. 其URL为:/music-genres/genre-name/ 我尝试创建如下URL:/music/ /music/post-name/ /music/genres/ /music/genres/genre-name/ /music-genres/ 应替换为/music/genres/.最后,我们应该得到如下url