You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress动态页面URL重写求助:实现简洁URL并传递参数

解决WordPress自定义URL重写后的301重定向问题

我完全懂你遇到的这个头疼问题——明明写了重写规则,访问简洁URL却直接跳转到不带参数的原始页面,这大概率是WordPress的规范URL(Canonical URL)机制在自动干预,再加上之前的重写规则写法有点小问题,咱们一步步搞定它:

第一步:修正重写规则的写法

之前的规则直接指向页面的URL,会触发WordPress的自动重定向。咱们改成直接通过index.php构建查询,让WordPress正确识别自定义参数:

function custom_crypto_rewrite_rules() {
    // 注册symbol作为合法的查询变量
    add_rewrite_tag('%symbol%', '([a-zA-Z0-9_]+)');
    
    // 重写规则:匹配自定义URL,映射到showcoin子页面并传递symbol参数
    add_rewrite_rule(
        '^crypto-monnaies/([a-zA-Z0-9_]+)\.html$',
        'index.php?pagename=crypto-monnaies/showcoin&symbol=$matches[1]',
        'top'
    );
}
add_action('init', 'custom_crypto_rewrite_rules');

第二步:确保WordPress允许传递symbol参数

需要告诉WordPress,symbol是一个合法的查询变量,这样才能在页面中获取到它:

function allow_crypto_symbol_query_var($query_vars) {
    $query_vars[] = 'symbol';
    return $query_vars;
}
add_filter('query_vars', 'allow_crypto_symbol_query_var');

第三步:阻止自动的规范URL重定向

WordPress会自动把“非规范”的URL重定向到它认为的标准页面URL,咱们需要针对自定义URL禁用这个行为:

function disable_crypto_canonical_redirect($redirect_url) {
    global $wp;
    // 检查当前请求是否是咱们的自定义加密货币URL格式
    if (preg_match('/^crypto-monnaies\/[a-zA-Z0-9_]+\.html$/', $wp->request)) {
        return false; // 阻止重定向
    }
    return $redirect_url;
}
add_filter('redirect_canonical', 'disable_crypto_canonical_redirect');

第四步:在页面模板中正确获取参数

不要再用$_GET['symbol']了,改用WordPress的get_query_var()函数来获取参数,这样更符合WordPress的机制:

// 在showcoin页面模板的合适位置添加
$symbol = get_query_var('symbol');
if ($symbol) {
    // 这里写你的业务逻辑,比如根据symbol加载对应加密货币的内容
    echo "当前显示的加密货币:" . esc_html($symbol);
} else {
    // 没有传递symbol参数的情况,比如跳转到列表页或者显示错误提示
    wp_redirect(get_permalink(get_page_by_path('crypto-monnaies')));
    exit;
}

最后一步:刷新重写规则缓存

写完代码后,一定要去WordPress后台的设置 → 固定链接页面,随便改一下固定链接的格式(比如从“文章名”改成“日期和名称”),然后点击“保存更改”——这一步会让WordPress刷新重写规则的缓存,新规则才会生效。

这样操作后,访问https://www.cryptolia.fr/crypto-monnaies/ADA.html就不会再重定向,同时$symbol变量也能正确获取到值啦!

内容的提问来源于stack exchange,提问作者Olivier Bureau

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:31:14