Script Set Category Hugo Markdown
Script untuk mengubah / set tag tertentu menjadi category di Hugo
mrfdn.com - Kalau sebelumnya saya sudah membagikan script untuk set thumbnail berdasarkan gambar pertama pada artikel markdown di hugo, kali ini saya ingin membuat agar salah satu tag menjadi category.
Ini dikarenakan karena pada saat convert artikel wordpress/blogger ke hugo , hugo tidak otomatis mengatur category.
Semua taxonomy (tag, category, label) disatukan ke dalam taxonomy (tag) di Hugo.
Jika anda ingin agar category tetap ada di Hugo, maka ini adalah triknya. Kita buatkan script untuk memindahkan keyword category tertentu yang terdapat pada baris tags, lalu memindahkannya ke baris baru yang diawali dengan category:.
Langsung saja script nya seperti ini :
#!/run/current-system/sw/bin/bash
setcategory () {
kw="mycategory"
category=$(grep -oE "'$kw'"\|", '$kw'"\|" '$kw', "\|"'$kw', " $1 | head -1)
echo $1
[[ "$category" == "$kw" ]] && echo $1 || sed -i "s/$category//" $1 && sed -i "5 a\category: \n- $kw" $1
}
removeduplicatecategory(){
sed -i ':a;N;$!ba;s/\ncategory:*//2g' $1
sed -i "/$kw/d;s/category:/category:\n- $kw/" $1
}
for a in *.md ;
do
setcategory "$a";
removeduplicatecategory "$a";
done
Script ini merupakan modifikasi dari script sebelumnya. Terdapat banyak penambahan fitur.
Penjelasan script
Pertama, set keyword kategori yang ingin diganti. (misalnya anda memiliki kategori dengan nama mycategory).
Kemudian script akan mencari dan mendefinisikan keyword tersebut. Kemudian disimpan pada sebuah argumen $1.
Kemudian baris selanjutnya adalah logic, jika string category tidak sama dengan string keyword yang telah diset, maka simpan itu pada sebuah argumen $1.
Tapi jika sama maka lanjutkan dengan membuat category: kemudian pada baris ke 5 tulis keyword category di bawahnya dengan diawali tanda -.
Setelah itu hapus tulisan category: yang sama.
Kemudian hapus juga keyword category yang sama.
Selesai.
Saya sangat senang akhirnya bisa membuat sebuah bash script sendiri. Cerita dikit, saya seharian duduk di depan laptop hanya agar script ini berjalan dengan lancar.
Demikian artikel singkat tentang script set category tertentu di Hugo.
Semoga bermanfaat.