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

Docusaurus v2按国家分档:如何基于语言/国家控制侧边栏显隐

解决Docusaurus v2按语言/国家自定义侧边栏的方案

方法1:为各语言版本单独配置侧边栏

Docusaurus支持为不同语言指定独立的侧边栏配置文件,步骤如下:

  • 在项目根目录的sidebars.js同级,创建对应语言的侧边栏文件,比如sidebars.cn.js(中文)、sidebars.es.js(西班牙文)。
  • 每个语言专属的侧边栏文件里,只列出对应地区需要展示的文档路径。比如针对中国区版本,移除仅在欧美可用的功能文档条目。
  • 修改docusaurus.config.js中的i18n配置,为每个locale绑定对应的侧边栏配置:
module.exports = {
  i18n: {
    defaultLocale: 'en',
    locales: ['en', 'cn', 'es'],
    localeConfigs: {
      en: {
        sidebarPath: require.resolve('./sidebars.js'),
      },
      cn: {
        sidebarPath: require.resolve('./sidebars.cn.js'),
      },
      es: {
        sidebarPath: require.resolve('./sidebars.es.js'),
      },
    },
  },
};
  • 确保各语言版本的文档目录结构对应,比如docs/cn/存放中文文档,docs/es/存放西班牙文文档,侧边栏配置里的路径指向对应目录下的文件。

方法2:动态生成侧边栏(适合复用部分配置的场景)

如果不想维护多份重复的侧边栏配置,可以通过代码逻辑根据当前locale过滤条目:

  • 在sidebars.js中,获取当前运行的locale(可通过环境变量传递)。
  • 定义基础侧边栏条目,再根据locale添加对应地区的功能:
const getSidebar = () => {
  // 从环境变量获取当前构建的locale,默认英文
  const currentLocale = process.env.DOCUSAURUS_LOCALE || 'en';
  
  // 基础侧边栏结构
  const baseSidebar = [
    {
      type: 'doc',
      id: 'intro',
    },
    {
      type: 'category',
      label: '通用功能',
      items: ['feature1', 'feature2'],
    },
    {
      type: 'category',
      label: '地区专属功能',
      items: [],
    },
  ];

  // 按locale填充地区专属内容
  switch(currentLocale) {
    case 'cn':
      baseSidebar[2].items.push('feature-cn-1', 'feature-cn-2');
      break;
    case 'es':
      baseSidebar[2].items.push('feature-es-1', 'feature-es-2');
      break;
    default:
      baseSidebar[2].items.push('feature-en-1', 'feature-en-2');
  }

  return {
    docs: baseSidebar,
  };
};

module.exports = getSidebar();
  • 构建不同语言版本时,通过环境变量指定locale:
DOCUSAURUS_LOCALE=cn npm run build

方法3:自定义插件扩展侧边栏逻辑

如果前两种方法不够灵活,可以编写自定义Docusaurus插件,监听docusaurus:generateSidebar钩子,在侧边栏生成阶段根据当前locale动态过滤或添加条目。

注意事项

  • 确保对应语言目录下的文档文件存在,避免出现404错误。
  • 使用动态生成方式时,构建阶段必须正确传递locale参数,防止侧边栏生成异常。

内容的提问来源于stack exchange,提问作者Gustavo Delgado

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 18:30:43