บทความนี้แนะนำข้อมูลเกี่ยวกับ API และมีส่วนช่วยต่อผู้ใช้ท่ีอยากปรับ source code ของ hexo หรือเขียนปลั๊กอินใหม่ ถ้าคุณสนใจวิธีการใช้้พื้นฐานของ hexo กรุณาไปอ่น docs แทน
บทความนี้สำหรับ hexo 3 หรือเวอร์ชั่นใหม่กว่านี้เท่านั้น
Initialize
ขั้นตอนแรกคือการสร้าง instance ของ hexo. instance
จะประกอบด้วยสองส่วน:base_dir
ซึ่งเป็น root directory ของเว็บไซต์ และ object ท่ีมี initialization options ขั้นตอนท่ีสองใช้วิธี init
เพื่อ initialize instance ด้วยวิธีนี้ hexo จะโหลด configuration และปลั๊กอินของมัน
var Hexo = require('hexo'); |
Option | Description | Default |
---|---|---|
debug |
Enable debug mode. Display debug messages in the terminal and save debug.log in the root directory. |
false |
safe |
Enable safe mode. Don’t load any plugins. | false |
silent |
Enable silent mode. Don’t display any messages in the terminal. | false |
config |
Specify the path of the configuration file. | _config.yml |
draft / drafts |
Enable to add drafts to the posts list. example: when you use hexo.locals.get('posts') |
render_drafts of _config.yml |
Load Files
hexo โหลดไฟล์ด้วยสองวิธี: load
และ watch
. วิธี load
ใช้มาเพื่อโหลดไฟล์ใน folder source
และ data ของธีม ส่วนวิธี watch
ทำเรื่องเดียวกันกับวิธี load
แต่จะเริ่มบันทึกการเปลี่ยนแปลงของไฟล์อย่างต่อเนื่อง
ทั้งสองวิธีนี้จะโหลด list ของไฟล์และส่งไฟล์เข้า processor ท่ีเกี่ยวข้อง หลังการ process ของไฟล์ทั้งหมด จะมี generator มาสร้าง route
hexo.load().then(function(){ |
Execute Commands
ด้วยวิธี call
ผู้ใช้สามารถเรียกคำสั่ง console สำหรับ instance ของ hexo การเรียกคำสั่ง console นี้ประกอบด้วยสอง argument: ชื่อคำสั่ง console และ argument ของ option คำสั่ง console ที่แตกต่างกันนั้นจะมี option ท่ีแตกต่างกัน
hexo.call('generate', {}).then(function(){ |
hexo.call('list', { _: ['post'] }).then(function() { |
Exit
ด้วยวิธี exit
คุณสามารถจบคำสั่ง console อย่างสง่างามและทำสิ่งสำคัญให้ เช่นการบันทึก database
hexo.call('generate').then(function(){ |