วิกิและการเลือกดู
ทุกอย่างในบทนี้รันจริงอยู่บนไซต์นี้: ชั้นหนังสือบนหน้าแรกเรียงขึ้นจาก NoteCard แถวหมวดหมู่ของมันคือ FacetNav หนึ่งตัว แถบเมตาเหนือข้อความนี้คือ TaxonomyLine และกลุ่มดาวเล็ก ๆ ในแถบข้างคือ LocalGraph ทั้งหมดเป็นคอมโพเนนต์แสดงผลล้วน — ไซต์แก้ค่าจากทะเบียนของตัวเองแล้วส่งข้อมูลที่พร้อมแสดงเข้ามา ตัวช่วยแก้ค่ามากับแพ็กเกจในชื่อ createTaxonomy และ createBacklinks (กลไกอยู่ในแพ็กเกจ ความหมายอยู่ที่ไซต์)
§2.1การเชื่อมต่อ สามบรรทัด
import { createTaxonomy } from 'astro-inkstone/lib/taxonomy';
import { DOMAINS, KINDS, STATUSES } from '../content/notes/_meta/taxonomy';
export const { getWikiUnits, groupByKind, groupByDomain, groupByPrimaryDomain, tagIndex, resolveTaxonomy } =
createTaxonomy({ kinds: KINDS, domains: DOMAINS, statuses: STATUSES },
{ collection: 'notes', locales: [{ code: 'zh', prefix: 'zh/' }], primary: 'en' });ทะเบียน (_meta/taxonomy.ts) คือข้อมูลล้วน ๆ ในต้นไม้เนื้อหา: kind, domain พร้อมโทนสี, status พร้อมสีจุด แต่ละค่ามีป้ายทั้งภาษาอังกฤษและภาษาจีน เพิ่มค่าใหม่ตรงนั้น ติดให้บันทึกสักเรื่อง แล้วหน้าเลือกดูทุกหน้าจะรับไปเอง — เส้นทาง URL ถูกกำหนดพารามิเตอร์ตามค่าอยู่แล้ว
§2.2ชั้นหนังสือกับโทเคนของมัน
หน้าเลือกดูยืนอยู่บนพื้นผืนที่สอง: browse.css ให้กระดาษโทนอุ่น แถบหัวเรื่องเซอริฟ เส้นชั้นหนังสือสองพอยต์ และตารางการ์ด ทั้งหมดผ่านโทเคน --wb-* — ครึ่งฝั่งเลือกดูของจานสีสองบริบท หน้าเข้าสู่บริบทนี้ด้วยคลาสเดียวคือ wb-root บน body ข้างในนั้นโทเคนของ chrome ถูกจับคู่ใหม่ แถบนำทางเดียวกันจึงวางบนพื้นไหนก็ได้
§2.3NoteCard
การ์ดกินข้อมูลที่แก้ค่าเสร็จและพร้อมแสดง — ป้ายสำเร็จรูป โทนสี วันที่จัดรูปแบบแล้ว ลิงก์มิเรอร์ การ์ดโดยกำเนิดอาศัยบนชั้นหนังสือ ตัวอย่างจึงวางในแถบบริบทเลือกดูขนาดย่อม (.wb-root.wb-inset) ที่ฝังในคอลัมน์อ่านนี้:
- อ้างอิง2026.08รวมทุกองค์ประกอบ
ทุกองค์ประกอบของไปป์ไลน์ markdown ออกแสดงในหน้านี้อย่างละหนึ่งครั้ง
- อ้างอิง3 chapters2026.08ชุดคอมโพเนนต์
พาชมคอมโพเนนต์ครบทุกตัวในสามบท — และเป็นการสาธิตฮับสด ๆ ไปพร้อมกัน
Hero · HubCard · Stats — อุปกรณ์ของฮับ ใช้บนตัวฮับเอง
§2.4FacetNav
ดัชนีเลือกดูหลายมิติ — kind, domain (พร้อมโทนสีของแต่ละตัว) และแท็กยอดนิยม ทั้งหมดพรีเรนเดอร์เป็นลิงก์ทรงเม็ดยา:
ป้ายหัวแถวก็เป็น props ที่มีค่าเริ่มต้นภาษาอังกฤษ — ชุดข้างบนส่ง labels={{ kind: 'ประเภท', domain: 'หมวด', tag: 'แท็ก', all: 'ทั้งหมด →' }} เข้ามา ชุดเดียวกับที่หน้าหมวดหมู่ภาษาไทยของไซต์นี้ใช้ นอกนั้นไม่ต้องเปลี่ยนอะไรเลย
§2.5TaxonomyLine, KindBadge, StatusDot, DomainChip
แถบเมตาบรรทัดเดียวที่หัวบันทึก คืออะตอมตราสามชิ้นประกอบกัน แต่ละชิ้นก็ใช้เดี่ยว ๆ ได้เช่นกัน:
อะตอมแต่ละตัวเมื่อวางเดี่ยวในเนื้อความ: ตราประเภท บทแนะนำ หนึ่งอัน ชิป domain ไปป์ไลน์ หนึ่งอัน และจุดสถานะ เอเวอร์กรีน หนึ่งจุด
§2.6Backlinks
แผง "ลิงก์ย้อนกลับ" ใต้ทุกบันทึกในสวนนี้คำนวณโดย createBacklinks ของแพ็กเกจ — พลิกตัวแก้ปลายทางวิกิลิงก์ของเอนจินเองให้กลายเป็นดัชนี เป้าหมาย ← ต้นทาง พร้อมข้อความบริบทประกอบ ข้างล่างนี้ใช้ข้อมูลตัวอย่างอินไลน์:
เลื่อนลงไปท้ายหน้านี้จะเจอแผงของจริง — บทนี้เองก็เป็นเป้าหมายของวิกิลิงก์เหมือนกัน
§2.7LocalGraph
ดัชนีชุดเดียวกันตอบคำถามที่สองได้ด้วย — ห่างจากตรงนี้หนึ่งก้าวมีใครบ้าง? — index.localGraph(id, titleOf) คืนคำตอบเป็นรายชื่อเพื่อนบ้าน ลิงก์ขาเข้ามาก่อน คอมโพเนนต์วาดพวกมันบนวงรีรอบบันทึก: ขาเข้าเส้นทึบ ขาออกเส้นประ เพื่อนบ้านยังพก color ของตัวเองมาได้ (เช่นมาจากอีกคอลเลกชันหนึ่ง) ข้างล่างวาดที่ความกว้างคอลัมน์อ่านด้วยข้อมูลตัวอย่าง ของจริงอยู่ในแถบข้างของทุกบันทึกที่มีลิงก์: