Featured image of post Jekyll ต่างจาก WordPress ยังไง น่าใช้ไหม

Jekyll ต่างจาก WordPress ยังไง น่าใช้ไหม

Jekyll มีไว้สร้างเว็บ ซึ่งก็เหมือน WordPress ที่มีไว้สร้างเว็บเหมือนกัน แล้วซอฟต์แวร์ 2 ตัวนี้แตกต่างกันยังไงนะ

Jekyll เป็น static site generator (SSG) ที่เขียนขึ้นมาด้วยภาษา Ruby มีไว้สร้างเว็บ ซึ่งก็เหมือน WordPress ที่มีไว้สร้างเว็บเหมือนกัน แล้วซอฟต์แวร์ 2 ตัวนี้แตกต่างกันยังไงนะ

จากที่เคยดูแล WordPress ที่ทำงาน แล้วกลับมาใช้ Jekyll ทำเว็บส่วนตัว ผมคิดว่ามีข้อแตกต่างหลัก ๆ ที่เอามาเปรียบเทียบได้ดังนี้ครับ

หลักการทำงาน

สำหรับ WordPress เราจะเอาเขาไปติดตั้งในที่ที่มี web server, PHP, และ MySQL (อยู่เครื่องแม่ข่ายเดียวกันหรือแยกเครื่องกันก็ได้) ตั้งค่านิดหน่อย แล้วก็เริ่มเขียนบทความได้เลย WordPress จะเอาบทความไปเก็บไว้ในฐานข้อมูล MySQL ให้ พอมีคนเข้ามาอ่านบทความ WordPress ก็จะไปอ่านข้อมูลจากฐานข้อมูลมาแสดง (ยกเว้นว่ามีการตั้งค่าให้ใช้แคช ซึ่งจะไม่พูดถึงในบทความนี้)

ในส่วนของ Jekyll เราจะเขียนบทความหรือหน้าเว็บโดยสร้างไฟล์ที่เขียนด้วยภาษา Markdown เสร็จแล้วค่อยสั่งให้ Jekyll แปลงไฟล์เหล่านั้นให้เป็นหน้าเว็บ พอแปลงเสร็จเราก็จะเอาหน้าเว็บไปวางไว้บน web server (สังเกตว่าเครื่องแม่ข่ายไม่จำเป็นต้องมี PHP และ MySQL เหมือน WordPress)

การใช้งาน

ถ้าใครเคยใช้ WordPress มาก่อนน่าจะพอนึกออกขั้นตอนออกอยู่ใช่ไหมครับ เวลาอยากจะเขียนบทความก็ เข้าสู่ระบบ กดเครื่องหมายบวก พิมพ์บทความ เลือกหมวดหมู่ แล้วกดเผยแพร่ ก็เป็นอันสิ้นสุดแล้ว

กลับมาที่ Jekyll … เอาตรง ๆ เลย ผมว่าใช้งานยากอยู่นะครับ แต่สำหรับคนที่ ถนัด command line, ชอบใช้ Markdown, ชื่นชอบ Git, และมีความสุขกับการแก้ไขปัญหา อาจจะรู้สึกว่าง่ายก็ได้ แต่ผมใช้มาซักพักแล้วก็ยังรู้สึกว่ายากอยู่ดี ลองนึกภาพตามนะครับ

  1. เวลาจะเพิ่มบทความใหม่ ต้องสร้างไฟล์ Markdown ในโฟลเดอร์ _posts โดยตั้งชื่อไฟล์ในรูปแบบ ปปปป-ดด-วว-slug.md หากต้องการระบุ ชื่อเรื่อง หมวดหมู่ แท็ก และ/หรือ รูปประจำเรื่อง ต้องไปเขียนใส่ในสิ่งที่เรียกว่า front matter ที่ด้านบทสุดของไฟล์
  2. พอเขียนบทความเสร็จแล้วจะเผยแพร่ ต้องใช้คำสั่ง jekyll build เพื่อสร้างเว็บ โดยเว็บจะถูกสร้างขึ้นในโฟลเดอร์ _site สำหรับให้เราอัปโหลดขึ้นไปวางบน web server หรือถ้าใช้ GitHub Pages ก็จะง่ายกว่านั้นหน่อย คือเปิดเว็บ/แอป GitHub แล้วสร้างไฟล์ขึ้นมาได้เลย พอเรากด commit ปุ๊บ GitHub Pages ก็จะทำที่เหลือต่อให้เราเองโดยอัตโนมัติ
  3. หากจะแทรกรูปในบทความ ก่อนอื่นต้องนำไฟล์รูปไปวางในโฟลเดอร์ assets/img จากนั้นจึงคัดลอกที่อยู่ไฟล์ไปวางในตำแหน่งที่จะเราแทรกรูป โดยใช้รูปแบบ Markdown ดังนี้ ![คำอธิบายรูป](/assets/img/path/to/your/image.jpg)

ส่วนตัวแล้วคิดว่า Jekyll น่าจะเหมาะกับโปรแกรมเมอร์หรือคนที่พอจะเคยเขียนโค้ดมาบ้างครับ

การปรับแต่งรูปลักษณ์

ใน WordPress เราสามารถปรับแต่งรูปลักษณ์ได้โดยการเปลี่ยนธีม ซึ่งกดดาวน์โหลดติดตั้งจาก WordPress ได้เลย มีให้เลือกหลายพันธีม ส่วน Jekyll จะมีวิธีติดตั้งธีมหลัก ๆ อยู่ประมาณ 3 วิธี ขึ้นอยู่กับธีมที่เราจะใช้ ดังนี้

  1. ติดตั้ง gem ของปลั๊กอินที่จะใช้ แล้วไประบุ theme: <ชื่อธีม> ในไฟล์ _config.yml (ถ้าใช้ GitHub Pages จะติดตั้ง gem เพิ่มไม่ได้ แต่จะมีธีมให้เลือกใช้อยู่จำนวนนึง อย่างตอนที่เขียนบทความนี้ก็มี 13 ธีม ดูได้จากหน้า Supported themes)
  2. ติดตั้งปลั๊กอิน jekyll-remote-theme (ถ้าใช้ GitHub Pages จะมีให้อยู่แล้ว) แล้วไประบุ remote_theme: <ชื่อธีม> ในไฟล์ _config.yml
  3. fork repository ธีมนั้นมาเป็นของเรา

การปรับแต่งเชิงลึก

ปรับแต่งเชิงลึกในที่นี้หมายถึงการแก้ไขโค้ดของโปรแกรมนะครับ

ถ้าใช้ WordPress โดยทั่วไปแล้วมักจะไม่ต้องมานั่งปรับแต่งเชิงลึก เพราะว่าคุณสมบัติค่อนข้างครบถ้วนอยู่แล้ว และถ้าต้องการคุณสมบัติเพิ่มเติมที่ไม่มีใน WordPress เช่น ฟอร์มติดต่อ เว็บบอร์ด ระบบร้านค้า ฯลฯ ก็สามารถเลือกติดตั้งปลั๊กอินจากหน้าของผู้ดูแลเว็บไซต์ได้เลย แต่ถ้าต้องปรับแต่งเชิงลึกจริง ๆ วิธีมาตรฐานคือ การสร้างธีมลูก (ในกรณีที่เราต้องการแก้ไขธีม) หรือการสร้างปลั๊กอิน (ในกรณีที่เราต้องการเพิ่มหรือแก้ไขคุณสมบัติของ WordPress) ซึ่งอาจจะต้องทำความเข้าใจหลักการของ WordPress Hooks และศึกษาฟังก์ชันต่าง ๆ ที่ WordPress มีมาให้เราใช้เพิ่มเติม

ส่วน Jekyll ถ้าเราพอจะมีความรู้เกี่ยวกับ HTML, CSS, และ JavaScript บ้างก็แทบจะเข้าไปแก้ตรง ๆ ได้เลย Jekyll จะใช้ภาษา template ที่ชื่อ Liquid ซึ่งดูแล้วไม่ค่อยยากเลย (ถ้าเทียบกับการต้องไปศึกษากลไกของ WordPress)

ค่าใช้จ่าย

สำหรับ WordPress จำเป็นต้องไปฝากกับผู้บริการ cloud ที่รองรับภาษา PHP และระบบจัดการฐานข้อมูล MySQL ซึ่งจากที่ลองหาดูคร่าว ๆ ที่ถูกที่สุดในขณะที่เขียนบทความนี้ก็คือ 350 บาทต่อปี ซึ่งจะมีเนื้อที่ให้เก็บข้อมูล 100 MB และรับ-ส่งข้อมูลได้เดือนละ 2 GB เหมาะกับเว็บที่มีเนื้อหาน้อย และคิดไว้แล้วว่าจะมีคนเข้าไม่เยอะ หรือถ้าใช้บน WordPress.com ก็จะมีหลายราคาให้เลือก ตั้งแต่ฟรีจนไปถึง 800,000 กว่าบาทต่อปี ซึ่งถ้าเลือกใช้แบบฟรีก็จะมีข้อจำกัดอยู่บ้าง เช่น ต้องแสดงโฆษณาบนหน้าเว็บ ผูกกับชื่อโดเมน (domain name) ไม่ได้ เลือกใช้ธีม/ปลั๊กอินได้อย่างจำกัด เป็นต้น

เรื่องค่าใช้จ่ายนี่เรียกได้ว่าเป็นจุดขายหลักของเว็บที่สร้างด้วย Jekyll เลยก็ว่าได้ ด้วยความที่เป็นแค่ static site ธรรมดา ก็เลยมีบริการฟรีค่อนข้างเยอะ เช่น

หรือในอนาคต ถ้าเกิดว่าบริการข้างต้นไม่ฟรีอีกต่อไป เราก็สามารถรัน Jekyll บนคอมพิวเตอร์ของเราเพื่อสร้างเว็บ แล้วเอาไปฝากกับเว็บโฮสต์ static หรือบริการคลาวด์อย่าง Amazon S3 หรือ Google Cloud Storage ก็ได้ ยังไงค่าใช้จ่ายก็ถูกกว่าเว็บโฮสต์ที่ให้บริการ PHP และ MySQL แน่นอน

สรุป

Jekyll เป็นเครื่องมือที่เอาไว้แปลงไฟล์ Markdown ให้เป็นหน้าเว็บ อาจจะต้องใช้ทักษะเกี่ยวกับ การใช้ command line, Markdown, และ Git ในระดับนึง ไม่เหมือน WordPress ที่คลิก ๆ พิมพ์บทความ แล้วก็ได้หน้าเว็บเลย แต่ก็มีข้อดีคือสามารถนำเว็บที่สร้างด้วย Jekyll ไปวางบนเครื่องแม่ข่ายที่มีเฉพาะ web server ได้ ไม่จำเป็นต้องมีภาษาสำหรับประมวลผลหรือฐานข้อมูล ทำให้มีค่าใช้จ่ายน้อยกว่า

สำหรับคนที่อยากลอง Jekyll สามารถไปอ่านบทความซีรีย์ ทำ Blog ด้วย Jekyll ของคุณเอมได้เลยครับ เขียนไว้ละเอียดมาก อ่านสนุกด้วย

ได้รับอนุญาตภายใต้สัญญา CC BY-NC-SA 4.0
อัปเดตล่าสุดเมื่อ 26 สิงหาคม 2024 20:14 +0700
comments powered by Disqus
ถูกสร้างด้วย Hugo
ธีม Stack ออกแบบโดย Jimmy