README ini hanya mendokumentasikan sebagian fitur Cryogen. Untuk dokumentasi tambahan silakan lihat situs cryogen.
Anda dapat membuat situs web baru menggunakan salah satu dari leiningen
atau clj-new
atau deps-new
.
Anda perlu menginstal Leiningen 2.5.0 atau lebih tinggi.
Situs baru dapat dibuat menggunakan template Cryogen leiningen sebagai berikut:
lein new cryogen my-blog
Alternatifnya, gunakan clj-new as a tool
:
clojure -Ttools install com.github.seancorfield/clj-new ' {:git/tag "v1.2.362"} ' :as clj-new # update to latest!
clojure -Tclj-new create :template cryogen :name myname/myblog :force true
cd myname/myblog/
Alternatifnya, gunakan deps-new as a tool
:
clojure -Ttools install io.github.seancorfield/deps-new ' {:git/tag "v0.4.0"} ' :as new
clojure -Sdeps ' {:deps {io.github.cryogen-project/cryogen {:git/tag "0.6.6" :git/sha "fcb2833"}}} ' -Tnew create :template org.cryogenweb/new :name myname/myblog
cd myname/myblog/
Artefak cryogen/lein-template
berisi templat leiningen dan templat deps-baru.
Server web dapat dimulai dari direktori my-blog
menggunakan Leiningen:
lein serve # or lein serve:fast
atau departemen alat:
clojure -X:serve # or clojure -X:serve:fast
Server akan mengamati perubahan pada folder content
dan themes
serta mengkompilasi ulang konten secara otomatis. Varian *:fast
melakukan kompilasi cepat tetapi sebagian hanya pada halaman/postingan yang diubah.
Anda juga dapat menghasilkan konten tanpa membuka server melalui:
lein run
atau melalui:
clojure -M:build
File konfigurasi situs ditemukan di content/config.edn
, file ini terlihat sebagai berikut:
{ :site-title " My Awesome Blog "
:author " Bob Bobbert "
:description " This blog is awesome "
:site-url " http://blogawesome.com/ "
:post-root " posts "
:page-root " pages "
:post-root-uri " posts-output "
:page-root-uri " pages-output "
:tag-root-uri " tags-output "
:author-root-uri " authors-output "
:public-dest " public "
:blog-prefix " /blog "
:rss-name " feed.xml "
:rss-filters [ " cryogen " ]
:recent-posts 3
:post-date-format " yyyy-MM-dd "
:archive-group-format " yyyy MMMM "
:sass-src []
:sass-path " sass "
:theme " blue "
:resources [ " img " ]
:keep-files [ " .git " ]
:disqus? false
:disqus-shortname " "
:ignored-files [ #" . #.*" #".* . swp$" ]
:previews? false
:posts-per-page 5
:blocks-per-preview 2
:clean-urls :trailing-slash
:collapse-subdirs? false
:hide-future-posts? true
:klipse {}
:description-include-elements #{ :p :h1 :h2 :h3 :h4 :h5 :h6 }
:debug? false }
Untuk informasi tentang setiap kunci silakan lihat bagian "Konfigurasi" di situs dokumentasi Cryogen.
Cryogen hadir dengan dukungan penurunan harga sebagai default. Jika Anda ingin menggunakan AsciiDoc, buka project.clj
di blog yang Anda buat (misalnya my-blog
), dan ubah baris di :dependencies
yang bertuliskan cryogen-flexmark
menjadi cryogen-asciidoc
(dan pastikan versi yang tepat). Daripada mencari file yang diakhiri dengan .md
di direktori content/md
, compiler sekarang akan mencari file yang diakhiri dengan .asc
di direktori content/asc
.
Template Cryogen hadir dengan tiga tema di folder themes
. Untuk mengubah tema blog Anda, ubah nilai kunci :theme
di config.edn
. Perhatikan bahwa tema Nucleus diperoleh dari downloadwebsitetemplates.co.uk yang mengharuskan Anda menyimpan catatan kaki, kecuali Anda memberikan donasi di situs web mereka.
Cryogen menggunakan mesin template Selmer untuk tata letak. Silakan lihat dokumentasinya untuk melihat tag dan filter yang didukung untuk tata letaknya.
Tata letak terdapat dalam folder themes/{theme}/html
proyek. Secara default, tata letak base.html
digunakan untuk menyediakan tata letak umum situs. Di sinilah Anda akan menambahkan sumber daya statis seperti aset CSS dan JavaScript serta menentukan header dan footer untuk situs Anda.
Setiap tata letak halaman harus memiliki nama yang cocok dengan kunci :layout
di metadata halaman dan diakhiri dengan .html
. Tata letak halaman memperluas tata letak dasar dan hanya berisi konten yang relevan dengan halaman di dalam blok content
. Misalnya, tata letak tag
terletak di tag.html
dan terlihat seperti berikut:
{% extends "/html/base.html" %}
{% block content %}
< div id = " posts-by-tag " >
< h2 >Posts tagged {{name}}</ h2 >
< ul >
{% for post in posts %}
< li >
< a href = " {{post.uri}} " >{{post.title}}</ a >
</ li >
{% endfor %}
</ ul >
</ div >
{% endblock %}
Cryogen menggunakan Highlight.js untuk penyorotan sintaksis kode. Anda dapat menambahkan lebih banyak bahasa dengan mengganti themes/{theme}/js/highlight.pack.js
dengan paket khusus dari sini.
Fungsi initHighlightingOnLoad
dipanggil di themes/{theme}/html/base.html
.
< script >hljs.initHighlightingOnLoad();</ script >
Konten statis yang dihasilkan akan ditemukan di bawah folder public
. Cukup salin konten ke folder statis untuk server seperti Nginx atau Apache dan situs Anda sekarang siap untuk diservis.
Contoh konfigurasi Nginx yang ditempatkan di /etc/nginx/sites-available/default
dapat dilihat di bawah ini:
server {
listen 80 default_server ;
listen [ :: ] : 80 default_server ipv6only = on ;
server_name localhost < yoursite . com > < www . yoursite . com > ;
access_log /var/log/blog_access.log;
error_log /var/log/blog_error.log;
location / {
alias / var / blog / ;
error_page 404 = / 404.html;
}
}
Cukup atur yoursite.com
ke domain situs Anda dalam konfigurasi di atas dan pastikan konten statis tersedia di /var/blog/
. Terakhir, tempatkan halaman kesalahan khusus Anda di file /var/blog/404.html
.
Informasi lebih lanjut tentang penerapan dapat ditemukan di sini.
Pustaka Clojure untuk menyediakan rendering Markdown ke kompiler inti cryogen dengan menggunakan perintah/program eksternal, seperti pandoc.
Hak Cipta © 2014-2021 Carmen La
Didistribusikan di bawah Lisensi Publik Eclipse, sama seperti Clojure.