Using slugs dynamically

This commit is contained in:
Moris Zen
2018-06-25 15:28:50 +02:00
parent d145e29086
commit 7a67da8bb6
4 changed files with 2654 additions and 2557 deletions

View File

@@ -26,7 +26,10 @@ exports.createPages = ({ graphql, boundActionCreators }) => {
result.data.allWordpressPage.edges.forEach(({ node }) => {
createPage({
path: node.slug,
component: path.resolve('./src/pages/page.js'),
component: path.resolve('./src/pages/page-default.js'),
context: {
slug: node.slug,
}
})
})

5154
package-lock.json generated

File diff suppressed because it is too large Load Diff

28
src/pages/page-default.js Normal file
View File

@@ -0,0 +1,28 @@
import React, { Component } from 'react';
class DefaultPage extends Component {
render() {
const { data } = this.props
return (
<div>
<h1>Specific DefaultPage - {data.wordpressPage.title}</h1>
<div dangerouslySetInnerHTML={{
__html: data.wordpressPage.content
}}
/>
</div>
);
}
}
export const query = graphql`
query DefaultPageQuery($slug: String!) {
wordpressPage(slug: {eq: $slug}) {
title
slug
content
}
}
`
export default DefaultPage;

View File

@@ -1,24 +0,0 @@
import React, { Component } from 'react';
class Page extends Component {
render() {
const { data } = this.props
return (
<div>
<h1>Specific Page - {data.wordpressPage.title}</h1>
</div>
);
}
}
export const query = graphql`
query PageQuery {
wordpressPage(slug: {eq: "about"}) {
title
slug
content
}
}
`
export default Page;