如果您正在使用自定义文章类型,并希望使用add_rewrite_rule函数来修改URL重写规则,那么您需要更新文章类型的rewrite属性。以下是一个例子:
function custom_post_type() { $args = array( 'public' => true, 'rewrite' => array('slug' => 'custom-post-type-rewrite'), 'supports' => array('title', 'editor', 'thumbnail') ); register_post_type('custom-post-type', $args); }
add_action('init', 'custom_post_type');
在上面的示例中,我们将rewrite属性设置为一个数组,并指定一个自定义slug。现在,我们可以使用add_rewrite_rule函数来添加新的重写规则,如下所示:
function custom_rewrite_rules() { add_rewrite_rule('^custom-post-type/([^/]*)/?', 'index.php?post_type=custom-post-type&name=$matches[1]', 'top'); }
add_action('init', 'custom_rewrite_rules');
在上面的示例中,我们声明了一个新的重写规则,它将匹配/custom-post-type/后跟一个内容slug的URL,并将其处理为一个custom-post-type文章类型的名称。请注意,我们将post_type参数设置为custom-post-type,以便WordPress知道我们正在请求自定义文章类型的内容。