สร้างเนื้อหารับเว็บไซต์ที่ได้รับการปรับปรุงอย่างสูง
css
และแท็กเทมเพลต css
ติดตั้งโดยใช้ NPM หรือเส้นด้ายด้วยคำสั่งง่ายๆ
yarn add contentz
# npm install contentz
หลังจากที่คุณติดตั้ง ContentZ แล้วคุณสามารถใช้กับคำสั่งง่ายๆ
contentz build
ที่จะอ่านไฟล์ของคุณและสร้างเว็บไซต์ของคุณให้คุณ
สร้างไฟล์กำหนดค่าที่เรียกว่า config.yml
---
title : Sergio Xalambrí
description : Senior Software Engineer and Technical Writer
domain : https://sergiodxa.com
language : en
repository : https://github.com/sergiodxa/personal-site/
email : [email protected]
patreon : sergiodxa
analytics : UA-XXXXXXXXX-2
social :
twitter : sergiodxa
github : sergiodxa
npm : sergiodxa
linkedin : sergiodxa
dev : sergiodxa
meetup : 182915204
navigation :
- name : About
path : /about
- name : Services
path : /services
ตัวเลือก | คำอธิบาย | ที่จำเป็น |
---|---|---|
ชื่อ | ชื่อของเว็บไซต์ที่ใช้ใน <title> และในหน้าแรก | ไม่ (ค่าเริ่มต้น: Just another Contentz site ) |
คำอธิบาย | คำอธิบายของเว็บไซต์ที่ใช้ใน <meta> และในหน้าแรก | ไม่ (ค่าเริ่มต้น: คำอธิบายที่ว่างเปล่า) |
โดเมน | โดเมนที่คุณจะใช้ในการโฮสต์เว็บไซต์ที่ใช้ในฟีด RSS | ใช่ |
ภาษา | ภาษาหลักของเว็บไซต์ใช้เป็นทางเลือกสำหรับบทความและหน้าเว็บ | ไม่ (ค่าเริ่มต้น: EN) |
ที่เก็บ | ที่เก็บ GitHub โฮสติ้งเว็บไซต์ที่ใช้ในส่วนท้ายของบทความและหน้า | ไม่ (ค่าเริ่มต้น: ซ่อนลิงค์ไปแก้ไข) |
อีเมล | ที่อยู่อีเมลของคุณใช้ในไอคอนอีเมลในหน้าแรก | ไม่ (ค่าเริ่มต้น: ซ่อนไอคอน) |
Patreon | ชื่อผู้ใช้ Patreon ของคุณใช้ในหน้าแรกและส่วนท้าย | ไม่ (ค่าเริ่มต้น: ข้อความ Hiden Patreon) |
การวิเคราะห์ | การวิเคราะห์ของคุณ ua | ไม่ (ค่าเริ่มต้น: ซ่อนการวิเคราะห์) |
ทางสังคม | รายการเครือข่ายสังคมออนไลน์ของคุณใช้เชื่อมโยงในหน้าแรก | ไม่ (ค่าเริ่มต้น: ซ่อนไอคอนโซเชียล) |
การนำทาง | รายการหน้าเว็บที่เชื่อมโยงในส่วนหัว | ไม่ (ค่าเริ่มต้น: อย่าเพิ่มลิงค์พิเศษ) |
SW | ตั้งค่าเป็น false หากคุณต้องการปิดการใช้งาน SW | ไม่ (ค่าเริ่มต้น: จริง) |
เพิ่มขึ้น | ตั้งค่าเป็น false หากคุณต้องการปิดใช้งานการสร้างที่เพิ่มขึ้น | ไม่ (ค่าเริ่มต้น: จริง) |
ไอคอน | ตั้งค่าเส้นทางของ favicon ของเว็บไซต์ | ไม่ (ค่าเริ่มต้น: /static/favicon.png ) |
สำหรับเครือข่ายสังคมออนไลน์อื่น ๆ ส่ง PR พร้อมไอคอนใหม่และเพิ่มวิธีการจัดรูปแบบ URL สำหรับไอคอนนั้น
สร้างโฟลเดอร์ /articles
และวางไฟล์ .mdx
ของคุณไว้ที่นี่นี่คือโพสต์ตัวอย่าง
---
title : My super cool article
description : This is the description of the article
date : 2018-01-01T00:00:00.000Z
published : true
---
This is my content, here I could use markdown or import a component and render it.
ตอนนี้เรียกใช้ contentz
และจะสร้าง A /public
Directory ด้วยหน้าแรกของคุณหน้าเก็บถาวรและบทความของคุณ คุณสามารถเข้าถึงที่เก็บถาวรของคุณ AT /articles/
และแต่ละบทความเป็น /articles/:article/
ในตัวอย่างที่คุณอาจเห็นได้ที่ /articles/my-super-cool-article
สำหรับหน้าแบบกำหนดเองสร้างโฟลเดอร์ A /pages
และวางไฟล์ .mdx
ของคุณไว้ที่นี่นี่คือหน้าตัวอย่าง
---
title : About me
---
Hi! I'm an example page.
ตอนนี้เรียกใช้ contentz
และจะสร้าง A /public
Directory ด้วยหน้าแรกและหน้าเว็บของคุณ แต่ละหน้าจะถูกวางไว้ในระดับพื้นฐานของ public
นั่นหมายความว่า /pages/about.mdx
ของคุณสามารถเข้าถึงได้เป็น /about/
ในเบราว์เซอร์ของคุณและไม่ใช่ /pages/about
ในกรณีที่คุณต้องการมีหน้าเพื่อแบ่งปันลิงก์ที่น่าสนใจคุณสามารถสร้างไฟล์ link.yml
ที่รูทของโครงการของคุณ จากนั้นเรียกใช้ contentz
และมันจะสร้าง A /link/
PAGE โดยอัตโนมัติสำหรับคุณด้วยรายการลิงก์ทั้งหมดของคุณ แต่ละลิงก์ควรมี url
, title
comment
และคีย์ date
ตัวอย่างไฟล์:
---
- url : https://sergiodxa.com/
title : Sergio Xalambrí
comment : The website of the creator of Contentz
date : 2019-01-28T19:44:10.945Z
- url : https://sergiodxa.dev/
title : sergiodxa.dev
comment : The alias of the website of the creator of Contentz
date : 2019-01-28T19:44:10.945Z
ContentZ จะสร้างหน้าข้อผิดพลาดโดยอัตโนมัติบน /404.html
เมื่อปรับใช้คุณสามารถเปลี่ยนเส้นทางไม่พบหน้าไปยัง /404.html
หากคุณปรับใช้เพื่อ netlify มันจะรับไฟล์นั้นโดยอัตโนมัติ
ContentZ สร้าง SW โดยอัตโนมัติสำหรับคุณ SW นี้จะแคชทุกคำขอไปยังเว็บไซต์ของคุณเอง (ใช้ location.origin
) มันจะไม่ร้องขอแคชไปยังโดเมนอื่น
พฤติกรรมนี้สามารถปิดใช้งานการเพิ่ม sw: false
ในไฟล์ config.yml
ของคุณ การเพิ่มสิ่งนี้จะลบ de sw.js
และ load-sw.js
เพื่อหลีกเลี่ยงการเข้าถึงแคชและสร้างไฟล์ unload-sw.js
ContentZ จะสร้างฟีดอะตอม RSS ที่ถูกต้องโดยอัตโนมัติด้วยรายการบทความของคุณมันจะถูกวางไว้ใน /atom.xml
และแท็ก <meta>
จะถูกเพิ่มโดยอัตโนมัติในแต่ละหน้าเพื่อให้สามารถค้นพบได้
หากคุณต้องการเชื่อมโยงไปยังไฟล์คงที่เช่นรูปภาพวิดีโอ ฯลฯ สร้างโฟลเดอร์ A /static
และวางไฟล์ทั้งหมดของคุณไว้ที่นั่น เมื่อเรียกใช้ content
พวกเขาจะถูกคัดลอกไปยัง /public/static
โดยอัตโนมัติ
ในกรณีที่คุณต้องการเพิ่มแท็ก HTML ด้วยสไตล์ที่กำหนดเองโดยตรงในเนื้อหา MDX ของคุณคุณสามารถใช้ css
Prop และแท็กเทมเพลต css
ของอารมณ์
ตัวอย่าง:
< div css = { { color : "red" } } > This is red </ div >
< div css = { css `color: blue` } > This is blue < / div>
ContentZ จะตรวจพบไฟล์ที่เปลี่ยนแปลงและอัปเดตไฟล์ที่เกี่ยวข้องเท่านั้น ซึ่งหมายความว่าถ้าคุณเพิ่มลิงค์ใหม่เท่านั้น /link/
จะถูกสร้างใหม่ แต่ถ้าคุณเปลี่ยนบทความหน้าบทความรายการบทความและฟีด RSS จะถูกสร้างใหม่
ในกรณีที่คุณอัปเดตการกำหนดค่าหรือคุณอัปเดตเวอร์ชัน ContentZ หน้าทั้งหมดจะถูกสร้างใหม่
หากคุณต้องการยกเลิกการตั้งค่าคุณสมบัตินี้ incremental: false
ใน config.yml
ของคุณ สิ่งนี้จะทำให้แคชก่อนหน้านี้เป็นโมฆะโดยอัตโนมัติและมักจะสร้างหน้าทั้งหมด
ContentZ ยังสามารถสร้างภาพโซเชียล (AKA Open กราฟ) โดยอัตโนมัติเพื่อให้คุณใช้ในบทความและหน้าของคุณ เพื่อใช้มันเรียกใช้คำสั่ง:
contentz social [path]
โดยที่ [path]
เป็นไฟล์ที่ใช้ในการสร้างภาพสังคม นอกจากนี้ยังอาจเป็นมากกว่าหนึ่งไฟล์ที่เพิ่มช่องว่างระหว่างไฟล์เหล่านั้น
contentz social [path1] [path2]
เส้นทางอาจเป็นเส้นทางสำหรับบทความโพสต์หรือหนึ่งในหน้าสร้างอัตโนมัติ
หากคุณต้องการสร้างพวกเขาในตอนแรก
contentz social home articles links error
หลังจากสร้างภาพโซเชียลคุณจะเห็นโฟลเดอร์ /static/_social
กับรูปภาพของคุณหน้าจะถูกวางไว้ใน /static/_social/pages
และบทความใน /static/_social/article
หน้าพิเศษจะอยู่ที่รากของ _social
ContentZ สนับสนุน i18n ออกจากกล่องสำหรับข้อความคงที่ของเว็บไซต์ข้อความเช่น Patreon Support หรือแก้ไขบน GitHub ในการเปลี่ยนภาษาหลักของเว็บไซต์ของคุณตั้งค่า language
สำคัญหรือคีย์ lang
(ต้องการภาษา) เป็นรหัสภาษา
ภาษาที่รองรับคือ es
สำหรับภาษาสเปนและ en
สำหรับภาษาอังกฤษ (ค่าเริ่มต้นเป็นภาษาอังกฤษในกรณีที่รหัสภาษาที่ไม่ถูกต้อง)
หากภาษาของคุณไม่รองรับเพิ่ม JSON ด้วยข้อความและโหลดใน I18N LIB จากนั้นส่ง PR เพื่อเพิ่ม