Files
old-v2-frontend/src/templates/blog.js

72 lines
1.9 KiB
JavaScript
Raw Normal View History

2018-07-05 20:43:56 +02:00
import React, { Component } from 'react'
2018-07-05 20:56:44 +02:00
import Link from 'gatsby-link'
2018-07-05 20:43:56 +02:00
2018-07-06 23:32:12 +02:00
import PageIntro from '../components/PageIntro'
2018-07-06 09:35:17 +02:00
import Card from '../components/Card'
2018-09-12 13:57:38 +02:00
import SEO from '../components/SEO'
2018-07-06 09:35:17 +02:00
import PageTransition from 'gatsby-plugin-page-transitions'
2018-07-05 20:43:56 +02:00
class Blog extends Component {
render() {
2018-07-05 20:56:44 +02:00
const data = this.props.data
return (
<PageTransition>
2018-09-12 13:57:38 +02:00
<SEO siteTitle="Saburly - Blog Posts" siteDescription="Bugs keep us busy, but sometimes we find the time to have fun & publish" />
2018-09-12 14:06:23 +02:00
<div className="container mx-auto p-4 w-full md:flex md:flex-wrap items-stretch w-full" siteUrl="https://saburly.com/blog">
2018-07-06 23:32:12 +02:00
{data.allWordpressPost.edges.map(({ node }) => (
2018-07-07 00:07:28 +02:00
<div key={node.id} className="mt-4 md:w-1/2 p-2">
<Link
to={`blog/${node.slug}`}
className="pointer no-underline saburly-transition hover:opacity-50"
>
<Card
title={node.title}
date={node.date}
excerpt={node.excerpt}
image={
node.featured_media
? node.featured_media.localFile.childImageSharp
.resolutions
: undefined
}
/>
</Link>
2018-07-06 23:32:12 +02:00
</div>
))}
</div>
</PageTransition>
2018-07-05 20:56:44 +02:00
)
2018-07-05 20:43:56 +02:00
}
}
export const query = graphql`
query blogQuery {
allWordpressPost {
edges {
node {
id
title
excerpt
status
2018-07-05 20:43:56 +02:00
slug
date(formatString: "MMMM DD, YYYY")
2018-07-06 10:23:57 +02:00
featured_media {
localFile {
childImageSharp {
resolutions(width: 600, height: 300) {
src
width
height
}
}
}
}
2018-07-05 20:43:56 +02:00
}
}
}
}
`
export default Blog