Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const path = require(`path`)
- const { createFilePath } = require(`gatsby-source-filesystem`)
- var XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest;
- global.XMLHttpRequest = XMLHttpRequest;
- exports.onCreateNode = ({ node, getNode, actions }) => {
- const { createNodeField } = actions
- if (node.internal.type === 'MarkdownRemark') {
- const slug = createFilePath({ node, getNode, basePath: 'pages/posts' })
- createNodeField({
- node,
- name: 'slug',
- value: slug,
- });
- }
- }
- exports.createPages = ({ graphql, actions }) => {
- const { createPage } = actions
- return new Promise((resolve, reject) => {
- graphql(`
- {
- allMarkdownRemark {
- edges {
- node {
- fields {
- slug
- }
- }
- }
- }
- }
- `).then(result => {
- result.data.allMarkdownRemark.edges.forEach(({ node }) => {
- createPage({
- path: node.fields.slug,
- component: path.resolve(`./src/templates/blog-post.js`),
- context: {
- slug: node.fields.slug,
- },
- })
- })
- resolve()
- })
- })
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement