Wordpress 自定义重写规则

Wordpress 自定义重写规则,wordpress,url-rewriting,Wordpress,Url Rewriting,我有网址: 我想把它改写成: 我在functions.php中添加了以下内容: add_action('init', 'dcc_rewrite_tags'); function dcc_rewrite_tags() { add_rewrite_tag('%id%', '([^&]+)'); } add_action('init', 'dcc_rewrite_rules'); function dcc_rewrite_rules() { add_rewrite_rul

我有网址:

我想把它改写成:

我在functions.php中添加了以下内容:

add_action('init', 'dcc_rewrite_tags');
function dcc_rewrite_tags() {
    add_rewrite_tag('%id%', '([^&]+)');
}

add_action('init', 'dcc_rewrite_rules');
function dcc_rewrite_rules() {
    add_rewrite_rule('^alternatywy/(.+)/?$','index.php?page_id=8286&id=$matches[1]','top');
}
但它不起作用。我做错了什么?

试试这个:

add_filter('query_vars', function($vars) {
    $vars[] = "id";
    return $vars;
});

add_action('init', 'dcc_rewrite_rules');
function dcc_rewrite_rules() {
    add_rewrite_rule('^alternatywy/([^/]+)/?$','index.php?page_id=8286&id=$matches[1]','top');
}
现在是时候刷新重写规则了。您可以通过代码或手动保存永久链接两种方式来完成

手册:

从WordPress管理屏幕中,选择设置->永久链接 只需单击“保存更改”而不做任何更改

代码:


为什么将此问题标记为
.htaccess
?它不起作用。即使我要去,它也会让我转向:(你的永久链接结构是什么?你刷新了永久链接吗?
/* Flush rewrite rules for custom post types. */
add_action( 'after_switch_theme', 'flush_rewrite_rules' );