Plugin
24 Apr 2025
Penjelasan tentang Plugin
Plugin Jekyll: Panduan Lengkap
Apa Itu Jekyll?
Jekyll adalah static site generator berbasis Ruby, sering digunakan untuk membuat blog, dokumentasi, atau situs pribadi. Plugin Jekyll adalah ekstensi yang memperluas fungsionalitas default Jekyll, seperti menambahkan tag Liquid custom, generator halaman, converter konten, dan sebagainya.
Apa Itu Plugin Jekyll?
Plugin Jekyll adalah komponen Ruby (biasanya berupa file .rb
) yang di-load saat proses build, memungkinkan kamu menambahkan fitur kustom seperti:
- Filter Liquid kustom
- Tag Liquid kustom
- Generator halaman otomatis
- Converter file markdown/custom lainnya
- Hook saat build/publish
Jenis Plugin Jekyll
1. Filter Plugin
Membuat filter custom di dalam Liquid.
module Jekyll
module ReverseFilter
def reverse(input)
input.reverse
end
end
end
Liquid::Template.register_filter
(Jekyll::ReverseFilter)
Penggunaan di template:
hello => "olleh"
2. Tag Plugin
Membuat tag custom seperti alert
3. Generator Plugin
Membuat halaman secara otomatis.
module Jekyll
class MyPageGenerator < Generator
def generate(site)
site.pages << PageWithoutAFile.
new(site, site.source, '',
'generated.html')
end
end
end
4. Converter Plugin
Mengubah format file (misalnya dari .txt
ke HTML).
module Jekyll
class TxtConverter < Converter
safe true
priority :low
def matches(ext)
ext =~ /^\.txt$/i
end
def output_ext(ext)
".html"
end
def convert(content)
"<pre>#{content}</pre>"
end
end
end
Struktur Direktori Plugin Lokal
Jekyll bisa menggunakan plugin dari:
_plugins/
(langsung di-load saat build)- Gem-based (didaftarkan di
Gemfile
dan_config.yml
)
Contoh Gemfile
:
gem "jekyll-sitemap"
gem "jekyll-seo-tag"
Contoh _config.yml
:
plugins:
- jekyll-sitemap
- jekyll-seo-tag
Plugin Populer Jekyll
Plugin | Fungsi |
---|---|
jekyll-seo-tag | Optimasi SEO |
jekyll-sitemap | Buat sitemap.xml otomatis |
jekyll-feed | Buat RSS feed |
jekyll-paginate | Paginasi untuk blog |
jekyll-archives | Arsip berdasarkan kategori/tag/tanggal |
jekyll-assets | Manajemen aset CSS/JS/Gambar |
Cara Mengaktifkan Plugin di GitHub Pages
GitHub Pages hanya mendukung plugin tertentu (whitelisted). Jika ingin menggunakan plugin custom:
- Gunakan GitHub Actions atau build manual.
- Push hasil build ke branch
gh-pages
.
Contoh Plugin Kustom di _plugins/
Buat folder _plugins/hello.rb
:
Jekyll::Hooks.register :site,
:post_write do |site|
puts "Build selesai untuk:
#{site.config['title']}"
end
Tips Pengembangan Plugin
- Gunakan
puts
atauJekyll.logger
untuk debug. - Plugin dijalankan saat build (
jekyll build
ataujekyll serve
). - Untuk distribusi, buat plugin menjadi gem Ruby.