mirror of
https://github.com/mastermindzh/rickvanlieshout.com
synced 2024-12-29 08:18:00 +01:00
65 lines
1.4 KiB
JavaScript
65 lines
1.4 KiB
JavaScript
|
import React from 'react';
|
||
|
import { graphql } from 'gatsby';
|
||
|
import Layout from '../components/Layout';
|
||
|
import Sidebar from '../components/Sidebar';
|
||
|
import Feed from '../components/Feed';
|
||
|
import Page from '../components/Page';
|
||
|
|
||
|
const CategoryTemplate = ({ data, pageContext }) => {
|
||
|
const {
|
||
|
title: siteTitle,
|
||
|
subtitle: siteSubtitle
|
||
|
} = data.site.siteMetadata;
|
||
|
|
||
|
const {
|
||
|
category,
|
||
|
page
|
||
|
} = pageContext;
|
||
|
|
||
|
const { edges } = data.allMarkdownRemark;
|
||
|
const pageTitle = page > 0 ? `${category} - Page ${page} - ${siteTitle}` : `${category} - ${siteTitle}`;
|
||
|
|
||
|
return (
|
||
|
<Layout title={pageTitle} description={siteSubtitle}>
|
||
|
<Sidebar />
|
||
|
<Page title={category}>
|
||
|
<Feed edges={edges} />
|
||
|
</Page>
|
||
|
</Layout>
|
||
|
);
|
||
|
};
|
||
|
|
||
|
export const query = graphql`
|
||
|
query CategoryPage($category: String, $limit: Int!, $skip: Int!) {
|
||
|
site {
|
||
|
siteMetadata {
|
||
|
title
|
||
|
subtitle
|
||
|
}
|
||
|
}
|
||
|
allMarkdownRemark(
|
||
|
limit: $limit,
|
||
|
skip: $skip,
|
||
|
filter: { frontmatter: { category: { eq: $category }, layout: { eq: "post" }, draft: { ne: true } } },
|
||
|
sort: { order: DESC, fields: [frontmatter___date] }
|
||
|
){
|
||
|
edges {
|
||
|
node {
|
||
|
fields {
|
||
|
categorySlug
|
||
|
slug
|
||
|
}
|
||
|
frontmatter {
|
||
|
date
|
||
|
description
|
||
|
category
|
||
|
title
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
`;
|
||
|
|
||
|
export default CategoryTemplate;
|