การเปลี่ยนเงาสำหรับ http://freenode.net
คุณจะต้องมีการพึ่งพา node.js ของเรา:
$ sudo npm install -g [email protected] svgo uglify-js
$ npm installจากนั้นสมมติว่าการติดตั้ง Python 3.4 (หรือใหม่กว่า):
$ python3 -m venv env
$ . env/bin/activate
$ pip install -r requirements.txt
$ cms7 หากทุกอย่างเป็นไปด้วยดีคุณควรเห็นเอาต์พุตบันทึกจำนวนมากและ out/ จะมีเว็บไซต์อยู่ในนั้น
เนื่องจากเราสร้างเว็บไซต์แบบคงที่คุณจะต้องดำเนินการ cms7 อีกครั้งทุกครั้งที่คุณเปลี่ยนบางสิ่ง หากตัวแก้ไขของคุณชอบคำสั่งคอมไพล์ที่สามารถเรียกใช้จากไดเรกทอรีใด ๆ คุณยังสามารถใช้ cms7 -c /path/to/config.yml
โปรดปฏิบัติตามแนวทางการบริจาค
เคล็ดลับที่เป็นประโยชน์สำหรับผู้ที่รวม PRS: คุณสามารถเรียกดูต้นไม้ที่ผสานจะส่งผลให้เกิดการสำรวจไปยัง https://github.com/freenode/web-7.0/tree/pull/XYZ/merge โดยที่ XYZ เป็นหมายเลขคำขอดึง
นอกจากนี้คุณยังสามารถไปที่ https://freenode.net/web-7.0/BRANCHNAME/ เพื่อดูการสร้างสาขาใด ๆ นอกจากนี้ยังใช้งานได้กับคำขอดึง ภายใน (พวกเขามีชื่อว่า pull-X )
ไซต์ถูกสร้างขึ้นจากแหล่ง Markdown และเทมเพลต Jinja2 ที่พบใน content/ และ templates/ ตามลำดับ Travis Build จะปรับใช้ไปยังหน้า GitHub โดยอัตโนมัติในทุกการกด
โมดูลต่างๆแปลงแหล่งที่มาเป็นโครงสร้างเอาต์พุตที่มีประโยชน์ ในที่สุด CMS7 จะจัดทำเอกสารกระบวนการนี้ แต่สำหรับตอนนี้:
content/pages/ มีหน้าธรรมดาซึ่งแสดงผลใน out/ ใช้ page.html
content/news/ มีโพสต์บล็อก/ข่าวที่แสดงผลใน out/news/ ใช้ article.html
content/kb/ มีหมวดหมู่ KB: แต่ละไดเรกทอรี content/kb/X/ มีรายการสำหรับหมวดหมู่ X สิ่งเหล่านี้แสดงผลใน out/kb/answers/ ด้วย kb.html
ดัชนีของรายการเหล่านี้จะแสดงผลใน out/kb/ ด้วย kb_index.html ตามรายการใน config/kb.yml
CMS7 ใช้ส่วนขยายข้อมูลเมตาของ Markdown และรับรู้บางคีย์พิเศษ:
title ตั้งชื่อหน้าชื่อslug แทนที่ URL เป้าหมาย: pages/hello กับ slug: banana จะ out/banana.htmltemplate แทนที่เทมเพลตที่จะแสดงไฟล์ markdown นี้บล็อกเฉพาะ:
authordateenclosure ตั้งค่า URL พอดคาสต์ของบทความทุกสิ่งที่จบลงในผลลัพธ์สุดท้ายมีชื่อที่ระบุไว้ในส่วนที่เหลือของเว็บไซต์ หากไฟล์มาจากไฟล์อินพุตโดยตรงโดยทั่วไปชื่อจะได้มาจากชื่อของ อินพุต
content/pages/hello.md มีชื่อชื่อของตัวเองที่สัมพันธ์กับไดเรกทอรีเนื้อหาลบส่วนขยายของพวกเขา: pages/hellostatic/img/cat.jpg มีชื่อชื่อของตัวเองที่สัมพันธ์กับรูทที่เก็บ: static/img/cat.jpgkb/index/X โดยที่ x คือชื่อของดัชนีใน config/kb.ymlCMS7 สามารถสร้าง URL สัมพัทธ์กับทุกสิ่งที่มีชื่อจากหน้าใดก็ได้ สิ่งนี้ควรเป็นที่ต้องการมากกว่าการเขียนลิงก์ด้วยตนเอง ในการสร้างลิงก์สัมพัทธ์จากเอกสาร Markdown เพียงลิงก์ไปยังชื่อ:
[ A page about frogs ] ( pages/frog ) หากต้องการทำเช่นเดียวกันจากเทมเพลตโทร url_for :
< a href = " {{ url_for('pages/frog') }} " >A page about frogs</ a >