logo blog.kpping.me

ทำให้ Hugo โชว์บทความเต็ม ๆ ใน RSS

โดยปกติแล้ว RSS Template ของ Hugo จะโชว์บทความด้วย .Summary ทำให้ข้อมูลไปโชว์ใน RSS ไม่ครบ หลังจากได้ลองค้นจากหลาย ๆ ที่ พบว่าแก้ไข Template เป็นแบบนี้ได้ข้อมูลครบถ้วน และ แสดงผลได้ถูกต้องที่สุด

rss full content result

รูป: ตัวอย่างผลลัพธ์

ขั้นตอนการทำ

  1. สร้างไฟล์ layouts/rss.xml (ตรวจสอบลำดับการอ่านไฟล์) เพื่อใช้แทน Template เดิม

    touch layouts/rss.xml
    
  2. คัดลอกข้อมูลจาก https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/embedded/templates/_default/rss.xml มาใส่

  3. เพิ่ม xmlns:content เพื่อให้ Firefox อ่าน XML นี้ได้

    <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    
  4. เพิ่ม content เพื่อให้ RSS Reader นำไปใช้แทน Description

    <content:encoded>
    {{ `<![CDATA[` | safeHTML }}
        {{ .Content }}
    {{ `]]>` | safeHTML }}
    </content:encoded>
    

 

Final Code

see code

 

ทดสอบการใช้งาน

เราสามารถตรวจสอบ RSS ของเราได้ด้วยโปรแกรม RSS Reader ทั่วไป หรือ สามารถให้ w3.org ช่วยตรวจสอบ