成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何動態生成 Jekyll 配置文件

系統 Linux
使用 Python 或 Bash 將動態數據插入 Jekyll 靜態網站中,并且避免創建一個 API 后端。

[[433689]]

使用 Python 或 Bash 將動態數據插入 Jekyll 靜態網站中,并且避免創建一個 API 后端。

靜態網站生成器 Jekyll 使用 _config.yml 進行配置。這些配置都是 Jekyll 特有的。但你也可以在這些文件中 用我們自己的內容定義變量,并在整個網站中使用它們。在本文中,我將重點介紹動態創建 Jekyll 配置文件的一些優勢。

在我的本地筆記本電腦上,我使用以下命令來服務我的 Jekyll 網站進行測試:

  1. bundle exec jekyll serve --incremental --config _config.yml

結合多個配置文件

在本地測試中,有時需要覆蓋配置選項。我的網站的 當前 _config.yml 有以下設置:

  1. # Jekyll Configuration
  2.  
  3. # Site Settings
  4. url: "https://notes.ayushsharma.in"
  5. website_url: "https://notes.ayushsharma.in/"
  6. title: ayush sharma's notes ☕ + 🎧 + 🕹️
  7. email: ayush@ayushsharma.in
  8. images-path: /static/images/
  9. videos-path: /static/videos/
  10. js-path: /static/js/
  11. baseurl: "" # the subpath of your site, e.g. /blog

由于本地的 jekyll serve URL 是 http://localhost:4000,上面定義的 URL 就不能用了。我可以創建一個 _config.yml 的副本 _config-local.yml 并替換所有的值。但還有一個更簡單的選擇。

Jekyll 允許指定多個配置文件,后面的聲明覆蓋前面的聲明。這意味著我可以用以下代碼定義一個新的 _config-local.yml

  1. url:""

然后我可以把上述文件和我的主 _config.yml 結合起來,像這樣:

  1. bundle exec jekyll serve --incremental --config _config.yml,_config-local.yml

通過合并這兩個文件,這個 jekyll serve 的 url 的最終值將是空白。這就把我網站中定義的所有 URL 變成了相對的 URL,并使它們在我的本地筆記本電腦上工作。

C結合動態配置文件

一個簡單的例子,假設你想在你的網站上顯示當前日期。它的 bash 命令是:

  1. > date '+%A, %d %B %Y'
  2. Saturday, 16 October 2021

我知道我也可以 使用 Jekyll 的 _config.yml 的自定義內容。我將上述日期輸出到一個新的 Jekyll 配置文件中。

  1. my_date=`date '+%A, %d %B %Y'`; echo 'my_date: "'$my_date'"' > _config-data.yml

現在 _config-data.yml 包含:

  1. my_date: "Saturday, 16 October 2021"

我可以把我的新配置文件和其他文件結合起來,在我的網站上使用 my_date 變量。

  1. bundle exec jekyll serve --incremental --config _config.yml,_config-local.yml,_config-data.yml

在運行上述命令時,{{ site.my_date }} 輸出其配置的值。

結論

上面的例子很簡單,但可能性是無窮的。Bash、Python 和其他編程語言可以動態地生成 Jekyll 配置文件。然后我可以在 build 或 serve 過程中結合這些文件。

對于 findmymastodon.com我使用 Python 來獲取 Mastodon 的用戶統計數據。然后我把這些寫進一個新的 _config-data.yml 文件(目前是手動)。最后,主頁和其他頁面從配置文件中顯示這些。這樣,我就可以利用一個動態的后臺,并且仍然保持我所喜歡的所有靜態網站的優點。

我希望這能為你自己的靜態網站激發一些想法。Jamstack 對于靜態網站是很好的,但你可以避免為動態內容創建整個 API 后臺。為什么不使用一個構建作業來創建帶有更新內容的配置文件呢?這可能不適合每一種情況,但少一個 API 意味著更少的基礎設施移動部件。

我希望這能在你的下一個靜態網站項目中給你一些幫助。繼續閱讀,并祝你編碼愉快。 

 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2011-04-12 09:53:32

Spring

2019-11-22 10:00:53

ICC配置文件Windows 10

2011-01-19 14:00:21

2011-01-13 16:27:26

Linux配置文件

2010-03-25 19:01:43

ngnix配置文件

2009-06-08 16:44:00

Struts配置文件

2010-02-03 09:19:31

Python模塊

2010-03-25 17:46:27

nginx配置文件

2010-12-28 16:35:32

Outlook 配置文

2022-04-28 09:46:20

Nginx文件Linux

2010-12-27 14:59:31

Outlook 配置文

2009-07-09 15:55:18

WebWork配置文件

2011-03-28 09:07:26

Nagios配置文件

2011-03-28 15:52:16

Nagios配置文件

2011-04-01 16:30:49

Nagios

2011-03-03 09:14:38

PureFTPd

2009-09-22 10:23:15

Hibernate配置

2010-05-05 16:14:09

Unix管理

2010-08-05 14:36:07

NFS服務

2011-03-25 17:13:37

Nagios配置文件
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 97精品一区二区 | 精品国产一区二区三区久久影院 | 天堂一区二区三区四区 | www.99热.com | 在线观看国产精品视频 | 亚洲第一黄色网 | 精品视频在线一区 | 午夜大片 | av久久| 中文精品一区二区 | 亚洲+变态+欧美+另类+精品 | 国产一区二区三区色淫影院 | 最新91在线 | 国产乱码精品一区二区三区五月婷 | 国产乱码久久久久久 | 免费激情av | 亚洲在线看 | 久久精品国产99国产精品 | 欧美日韩中文在线 | 二区中文字幕 | 欧美精品国产精品 | 成人免费看黄 | 久久鲁视频 | 精品免费视频 | 国产精品亚洲一区二区三区在线 | 国产成人高清成人av片在线看 | 狠狠av| 国产精品区二区三区日本 | 一级看片| 99热精品6| 超碰婷婷 | 久久精品小短片 | 日韩图区| 国产一区二区三区久久 | 亚洲精品一二区 | 国产成人精品a视频一区www | 久草热线 | 国产亚洲一区二区精品 | 一区二区三区在线免费观看 | 一级少妇女片 | 精品欧美一区二区三区久久久 |