12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- const {createFilePath} = require('gatsby-source-filesystem')
- const path = require('path')
- exports.onCreateNode = ({node, getNode, actions}) => {
- const {createNodeField} = actions
- if (node.internal.type === 'MarkdownRemark') {
- const slug = createFilePath({node, getNode, basePath: 'content', trailingSlash: false})
- createNodeField({
- node,
- name: 'slug',
- value: slug
- })
- }
- }
- exports.createPages = ({graphql, actions}) => {
- const {createPage} = actions
- return graphql(`
- {
- allMarkdownRemark {
- edges {
- node {
- id
- fields {
- slug
- }
- html
- }
- }
- }
- }
- `).then(result => {
- result.data.allMarkdownRemark.edges.forEach(({node}) => {
- createPage({
- path: node.fields.slug,
- component: path.resolve('./src/templates/Page.js'),
- context: {
- slug: node.fields.slug
- }
- })
- })
- })
- }
|