📦 plugin-content-pages
The default pages plugin for Docusaurus. The classic template ships with this plugin with default configurations. This plugin provides creating pages functionality.
Installation
- npm
 - Yarn
 
npm install --save @docusaurus/plugin-content-pages
yarn add @docusaurus/plugin-content-pages
tip
If you use the preset @docusaurus/preset-classic, you don't need to install this plugin as a dependency.
You can configure this plugin through the preset options.
Configuration
Accepted fields:
| Name | Type | Default | Description | 
|---|---|---|---|
path | string | 'src/pages' | Path to data on filesystem relative to site dir. Components in this directory will be automatically converted to pages. | 
routeBasePath | string | '/' | URL route for the pages section of your site. DO NOT include a trailing slash. | 
include | string[] | ['**/*.{js,jsx,ts,tsx,md,mdx}'] | Matching files will be included and processed. | 
exclude | string[] | See example configuration | No route will be created for matching files. | 
mdxPageComponent | string | '@theme/MDXPage' | Component used by each MDX page. | 
remarkPlugins | [] | any[] | Remark plugins passed to MDX. | 
rehypePlugins | [] | any[] | Rehype plugins passed to MDX. | 
beforeDefaultRemarkPlugins | any[] | [] | Custom Remark plugins passed to MDX before the default Docusaurus Remark plugins. | 
beforeDefaultRehypePlugins | any[] | [] | Custom Rehype plugins passed to MDX before the default Docusaurus Rehype plugins. | 
Example configuration
Here's an example configuration object.
You can provide it as preset options or plugin options.
tip
Most Docusaurus users configure this plugin through the preset options.
const config = {
  path: 'src/pages',
  routeBasePath: '',
  include: ['**/*.{js,jsx,ts,tsx,md,mdx}'],
  exclude: [
    '**/_*.{js,jsx,ts,tsx,md,mdx}',
    '**/_*/**',
    '**/*.test.{js,jsx,ts,tsx}',
    '**/__tests__/**',
  ],
  mdxPageComponent: '@theme/MDXPage',
  remarkPlugins: [require('remark-math')],
  rehypePlugins: [],
  beforeDefaultRemarkPlugins: [],
  beforeDefaultRehypePlugins: [],
};
Preset options
If you use a preset, configure this plugin through the preset options:
docusaurus.config.js
module.exports = {
  presets: [
    [
      '@docusaurus/preset-classic',
      {
        pages: {
          path: 'src/pages',
          // ... configuration object here
        },
      },
    ],
  ],
};
Plugin options
If you are using a standalone plugin, provide options directly to the plugin:
docusaurus.config.js
module.exports = {
  plugins: [
    [
      '@docusaurus/plugin-content-pages',
      {
        path: 'src/pages',
        // ... configuration object here
      },
    ],
  ],
};
i18n
Read the i18n introduction first.
Translation files location
- Base path: 
website/i18n/<locale>/docusaurus-plugin-content-pages - Multi-instance path: 
website/i18n/<locale>/docusaurus-plugin-content-pages-<pluginId> - JSON files: extracted with 
docusaurus write-translations - Markdown files: 
website/i18n/<locale>/docusaurus-plugin-content-pages 
Example file-system structure
website/i18n/<locale>/docusaurus-plugin-content-pages
│
│ # translations for website/src/pages
├── first-markdown-page.md
└── second-markdown-page.md