Skip to content

Table of contents

Open Table of contents

แนะนำ

ฉันสร้างเว็บไซต์นี้ขึ้นมาเพื่อพัฒนาทักษะการพัฒนาเว็บของฉันเป็นหลัก ฉันต้องการเพิ่มความรู้เกี่ยวกับการพัฒนาเว็บสมัยใหม่โดยใช้เฟรมเวิร์ก และหลังจากค้นคว้าตัวเลือกต่างๆ ฉันตัดสินใจใช้เฟรมเวิร์ก Astro สาเหตุหนึ่งที่ฉันเลือก Astro คือมันสร้างด้วย JavaScript และ TypeScript และฉันต้องการใช้โปรเจ็กต์นี้เป็นโอกาสในการเรียนรู้เพิ่มเติมเกี่ยวกับ TypeScript ท้ายที่สุด เป้าหมายของฉันคือสร้างเว็บไซต์ที่มีคุณภาพและเรียนรู้ typescript ไปพร้อมกัน

Astro.build

https://astro.build/ เฟรมเวิร์ก Astro เป็นเฟรมเวิร์กพัฒนาเว็บที่ค่อนข้างใหม่ซึ่งออกแบบมาเพื่อสร้างเว็บไซต์ประสิทธิภาพสูงที่โหลดเร็ว หนึ่งในคุณสมบัติหลักของ Astro คือการใช้การเรนเดอร์ฝั่งเซิร์ฟเวอร์ (SSR) ซึ่งช่วยให้เฟรมเวิร์กสามารถ pre-render เนื้อหาส่วนใหญ่ของเว็บไซต์บนเซิร์ฟเวอร์ก่อนส่งไปยังไคลเอนต์ ซึ่งหมายความว่าเว็บไซต์สามารถโหลดได้เร็วขึ้นมากเพราะไคลเอนต์ไม่ต้องรอให้เซิร์ฟเวอร์สร้างเนื้อหาก่อนแสดงผล

ฉันสนุกกับการทำงานกับเฟรมเวิร์ก Astro จนถึงตอนนี้ เพราะมันใช้งานง่ายมาก แม้แต่สำหรับมือใหม่เหมือนฉัน ไม่กี่ปีที่ผ่านมา ฉันมีความคิดเดียวกันที่จะสร้างเว็บไซต์และลองใช้เฟรมเวิร์ก Hugo อย่างไรก็ตาม Hugo สร้างบน Go ซึ่งทำให้ทำงานด้วยยากขึ้นมาก โดยเฉพาะอย่างยิ่งเพราะฉันไม่มีประสบการณ์กับ Go ในตอนนั้น เนื่องจากฉันสนใจเรียนรู้ JavaScript ฉันพบว่า Astro เป็นตัวเลือกที่ดีกว่าสำหรับฉันมาก มันเป็นวิธีที่ดีในการเรียนรู้ภาษาไปพร้อมกับการสร้างเว็บไซต์

แล้วไงต่อ?

ฉันจัดการให้ฟังก์ชันพื้นฐานของเว็บไซต์ทำงานได้แล้ว ตอนแรกฉันใช้เทมเพลตเว็บไซต์ astro-paper ซึ่งมีประโยชน์มาก อย่างไรก็ตาม หลังจากทำงานบนเว็บไซต์ประมาณหนึ่งสัปดาห์ Astro Framework ก็ปล่อยเวอร์ชัน 2.0 ซึ่งมีฟีเจอร์ใหม่เจ๋งๆ ที่ฉันต้องการรวมเข้าด้วยกัน ฉันเปลี่ยนแปลงเทมเพลตบางอย่างเพื่อรวมฟีเจอร์ใหม่ แต่ฉันไม่เข้าใจทั้งหมดว่าทุกอย่างทำงานอย่างไร เป็นผลให้ฉันตั้งใจทำให้มันพังส่วนใหญ่และเริ่มสร้างส่วนบล็อกใหม่ตั้งแต่ต้น แม้ว่าบล็อกจะใช้งานได้แล้ว แต่ก็ยังมีฟีเจอร์ที่เสียที่ต้องแก้ไข แม้จะมีความท้าทายเหล่านี้ ฉันพบว่าฉันเรียนรู้มากมายผ่านกระบวนการนี้ ซึ่งดีมาก

รายการสิ่งที่ต้องทำ

ยังมีอีกสองสามสิ่งที่ฉันต้องทำเพื่อปรับปรุงเว็บไซต์ก่อนที่ฉันจะพอใจอย่างเต็มที่ ฉันหวังว่าฉันจะทำงานเหล่านี้เสร็จเร็วๆ เพื่อที่ฉันจะได้ไปทำโปรเจ็กต์อื่นๆ นอกเหนือจากการสร้างเว็บไซต์ธรรมดา

  • แก้ไขหน้าแรกของเว็บไซต์
  • เพิ่มเนื้อหาไปยังหน้าเกี่ยวกับฉัน
  • แก้ไขฟังก์ชันค้นหาสำหรับโพสต์บล็อก
  • ลบการกล่าวถึง “แท็ก” ทั้งหมด
  • เพิ่มฟังก์ชัน “กลุ่มหมวดหมู่”
  • สร้างหน้าหมวดหมู่ที่เหมาะสม
  • เพิ่มการรองรับหลายภาษา
  • ปรับปรุง CSS styling
  • ปรับปรุงเนื้อหาเว็บไซต์โดยรวม