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

WordPress首页多语言重写规则404问题求助

多语言静态首页404问题解决方案

问题原因

你当前的重写规则仅匹配/xx/home这类路径,但实际访问的是/fr(无home后缀),规则不触发,因此返回404错误。

修复方案

1. 调整重写规则并注册查询变量

替换原有代码为以下内容,新增匹配根路径语言标识的规则,同时让WordPress识别lang参数:

function products_plugin_rules() {
    // 匹配 /fr 或 /fr/ 格式的语言路径,指向静态首页
    add_rewrite_rule('^([a-z]{2})/?$', 'index.php?pagename=home&lang=$matches[1]', 'top');
    // 保留原有 /xx/home 规则(若需保留该路径访问)
    add_rewrite_rule('([^/]*)/home', 'index.php?pagename=home&lang=$matches[1]', 'top');
}
add_action('init', 'products_plugin_rules');

// 注册lang查询变量,确保WordPress能接收该参数
function register_lang_query_var($vars) {
    $vars[] = 'lang';
    return $vars;
}
add_filter('query_vars', 'register_lang_query_var');

2. 刷新重写规则缓存

进入WordPress后台「设置」→「固定链接」,无需修改任何选项,直接点击「保存更改」,完成重写规则的刷新。

3. 模板中调用语言参数(可选)

若需根据语言参数切换首页内容,可在静态首页模板(如home.php)中添加以下代码获取语言标识:

$lang = get_query_var('lang', 'en'); // 默认英文
if ($lang === 'fr') {
    // 输出法语版首页内容
} else {
    // 输出英文版首页内容
}

内容的提问来源于stack exchange,提问作者Hitesh Khunt

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 11:32:12