कैसे Gatsby URL में पोस्ट की तारीख डाल करने के लिए?

वोट
0

सभी Gatsby स्टार्टर क़ौम की तरह एक पथ/gatsby-starter-blog/hi-folks/

कैसे मैं इसे सेट अप के साथ क्या /2015-05-28/hi-folks/या बस के साथ वर्ष /2015/hi-folks/

धन्यवाद!

11/08/2016 को 02:52
का स्रोत उपयोगकर्ता
अन्य भाषाओं में...                            


2 जवाब

वोट
2

दो विकल्प:

1) वैसे ही जैसे आप यूआरएल इस मामले में तो होना चाहते हैं नामित निर्देशिका में ब्लॉग पोस्ट डाल /2015-05-28/hi-folks/index.md। 2) आप प्रोग्राम के रूप में एक समारोह के निर्यात से द्वारा पथ सेट कर सकते हैं gatsby-node.jsकहा जाता है rewritePath। यह फ़ाइल पेज पेज के मेटाडाटा + से आता है के लिए फाइल सिस्टम डेटा के साथ प्रत्येक पृष्ठ के लिए कहा जाता है। तो आप अपने markdown के frontmatter में पोस्ट की तिथि निर्धारित करना चाहते हैं और प्रत्येक पोस्ट की तरह पथ के साथ एक सरल markdown फ़ाइल होना है कहना/a-great-blog-post.md

तो आप क्या, की तरह अपने gatsby-Node.js कुछ करने के लिए जोड़ करना चाहते हैं:

import moment from 'moment'

exports.rewritePath = (parsedFilePath, metadata) => {
  if (parsedFilePath.ext === "md") {
    return `/${moment(metadata.createdAt).format('YYYY')}/${parsedFilePath.name}/`
  }
}
11/08/2016 को 03:31
का स्रोत उपयोगकर्ता

वोट
0

rewritePathअब कोई Gatsby में समर्थित है। यहाँ एक समाधान Gatsby 2.3 में काम करता है की पुष्टि की है,

const m = moment(node.frontmatter.date)
const value = `${m.format('YYYY')}/${m.format('MM')}/${slug}`
createNodeField({ node, name: 'slug', value })
05/05/2019 को 04:02
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more