เครื่องมือสร้างไซต์แบบคงที่สำหรับไซต์ของสมาคมดนตรีนักเรียนของ Delft Krashna Musika ที่สร้างด้วย React และ Gatsby.js
ในการเริ่มต้น คุณจะต้องมีสภาพแวดล้อม Node.js และตัวจัดการแพ็คเกจ Yarn เมื่อคุณติดตั้งแล้ว ให้รันคำสั่งต่อไปนี้จากไดเร็กทอรีรากของ repo นี้:
yarn
yarn global add gatsby-cli
หากต้องการเริ่มเซิร์ฟเวอร์การพัฒนา (พร้อมการโหลดซ้ำจริง) ให้รัน:
yarn develop
ตอนนี้จะมีเซิร์ฟเวอร์ที่รับฟังบน localhost:8000!
หากต้องการสร้างบันเดิลการใช้งานจริง ให้รัน:
yarn build
การเปลี่ยนแปลงในสาขา master
จะถูกปรับใช้กับไซต์ที่ใช้งานอยู่โดยอัตโนมัติ (ที่ krashna.nl) ผ่านทางบริการ Netlify build
โดยทั่วไป โปรเจ็กต์นี้จะเป็นไปตามโครงสร้างโฟลเดอร์ Gatsby.js ทั่วไป:
/src/pages
ชื่อไฟล์ของไฟล์ JS แต่ละไฟล์ (ไม่รวมนามสกุล .js
) จะถูกใช้เป็น URL ของหน้าที่เกี่ยวข้อง/src/templates
/src/components
อย่างไรก็ตาม มีหลายวิธีที่จะนำเสนอความเป็นสากลและคุณลักษณะอื่นๆ:
/src/locales
แต่ละโฟลเดอร์ย่อยประกอบด้วยสำเนาของไฟล์คำจำกัดความการแปลแต่ละไฟล์ในภาษาเฉพาะ ไฟล์แปลเหล่านี้รวบรวมเป็น JSON ซึ่งให้บริการควบคู่ไปกับเนื้อหาที่เหลือและแทรกแบบไดนามิกลงในเพจขณะรันไทม์ เราใช้ไลบรารี react-intl
ซึ่งบูรณาการโดย gatsby-plugin-intl
สำหรับการแปล/src/data
การเพิ่มเนื้อหาสามารถทำได้ง่าย ๆ โดยการเพิ่มข้อความหรือข้อมูลอื่น ๆ ลงในไฟล์ที่กำหนดไว้ล่วงหน้า ตัวอย่างบางส่วนแสดงไว้ด้านล่าง เนื้อหาทั้งหมดเขียนด้วย Markdown หากคุณไม่คุ้นเคยกับ Markdown หรือต้องการความช่วยเหลือ โปรดดูลิงก์ที่มีประโยชน์นี้
หากต้องการเพิ่มหน้า...
/src/pages
โดยมีชื่อ URL ที่คุณต้องการใส่หน้านั้น หากมีข้อสงสัยเกี่ยวกับวิธีการจัดโครงสร้างไฟล์นี้ โปรดดูที่หน้าอื่นๆ ที่มีอยู่ในโฟลเดอร์นั้น/src/locales
โปรดดูหน้าที่มีอยู่และการแปลเพื่อดูตัวอย่างวิธีที่เราสามารถเข้าถึงคีย์การแปลในไฟล์เพจ และวิธีการกำหนดสิ่งนี้ในไฟล์การแปล เพื่อเพิ่มคอนเสิร์ต...
/src/data/concerts.yaml
ตามรูปแบบเดียวกันกับรายการอื่นๆconcerts.yaml
ในโฟลเดอร์ /src/locales
ในทั้งสองภาษา หากต้องการเพิ่มโพสต์ข่าว...
/src/data/news.yaml
ตามรูปแบบเดียวกันกับรายการอื่นๆnews.yaml
ในโฟลเดอร์ /src/locales
ในทั้งสองภาษา