溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎樣使用pelican和Github pages來搭建博客

發(fā)布時(shí)間:2021-12-13 09:54:14 來源:億速云 閱讀:174 作者:柒染 欄目:互聯(lián)網(wǎng)科技

本篇文章給大家分享的是有關(guān)怎樣使用pelican和Github pages來搭建博客,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

今天我將談一下我這個(gè)博客是如何搭建的。在我們開始之前,我希望你熟悉使用 Github 并且可以搭建一個(gè) Python 虛擬環(huán)境來進(jìn)行開發(fā)。

這是一篇幫助你發(fā)布由 Github 托管的個(gè)人博客的教程。為此,你需要一個(gè)正常的 Github 用戶賬戶 (而不是一個(gè)工程賬戶)。

你要做的第一件事是創(chuàng)建一個(gè)放置代碼的 Github 倉庫。如果你想要你的博客僅僅指向你的用戶名 (比如 rsip22.github.io) 而不是一個(gè)子文件夾 (比如 rsip22.github.io/blog),你必須創(chuàng)建一個(gè)帶有全名的倉庫。

怎樣使用pelican和Github pages來搭建博客

Github 截圖,打開了創(chuàng)建新倉庫的菜單,正在以 'rsip22.github.io' 名字創(chuàng)建一個(gè)新的倉庫

我推薦你使用 README、用于 Python 的 .gitignore 和 一個(gè)自由軟件許可證 初始化你的倉庫。如果你使用自由軟件許可證,你仍然擁有這些代碼,但是你使得其他人能從中受益,允許他們學(xué)習(xí)和復(fù)用它,并且更重要的是允許他們享有這些代碼。

既然倉庫已經(jīng)創(chuàng)建好了,那我們就克隆到本機(jī)中將用來保存代碼的文件夾下:

$ git clone https://github.com/YOUR_USERNAME/YOUR_USERNAME.github.io.git

并且切換到新的目錄:

 $ cd YOUR_USERNAME.github.io

因?yàn)?Github Pages 偏好運(yùn)行的方式是從 master 分支提供文件,你必須將你的源代碼放到新的分支,防止 Pelican 產(chǎn)生的靜態(tài)文件輸出到 master 分支。為此,你必須創(chuàng)建一個(gè)名為 source 的分支。

$ git checkout -b source

用你的系統(tǒng)所安裝的 Pyhton 3 創(chuàng)建該虛擬環(huán)境(virtualenv)。

在 GNU/Linux 系統(tǒng)中,命令可能如下:

$ python3 -m venv venv

或者像這樣:

$ virtualenv --python=python3.5 venv

并且激活它:

$ source venv/bin/activate

在虛擬環(huán)境里,你需要安裝 pelican 和它的依賴包。你也應(yīng)該安裝 ghp-import (來幫助我們發(fā)布到 Github 上)和 Markdown (為了使用 markdown 語法來寫文章)。運(yùn)行如下命令:

(venv)$ pip install pelican markdown ghp-import

一旦完成,你就可以使用 pelican-quickstart 開始創(chuàng)建你的博客了:

(venv)$ pelican-quickstart

這將會(huì)提示我們一系列的問題。在回答它們之前,請(qǐng)看一下如下我的答案:

> Where do you want to create your new web site? [.] ./> What will be the title of this web site? Renata's blog> Who will be the author of this web site? Renata> What will be the default language of this web site? [pt] en> Do you want to specify a URL prefix? e.g., http://example.com (Y/n) n> Do you want to enable article pagination? (Y/n) y> How many articles per page do you want? [10] 10> What is your time zone? [Europe/Paris] America/Sao_Paulo> Do you want to generate a Fabfile/Makefile to automate generation and publishing? (Y/n) Y **# PAY ATTENTION TO THIS!**> Do you want an auto-reload & simpleHTTP script to assist with theme and site development? (Y/n) n> Do you want to upload your website using FTP? (y/N) n> Do you want to upload your website using SSH? (y/N) n> Do you want to upload your website using Dropbox? (y/N) n> Do you want to upload your website using S3? (y/N) n> Do you want to upload your website using Rackspace Cloud Files? (y/N) n> Do you want to upload your website using GitHub Pages? (y/N) y> Is this your personal page (username.github.io)? (y/N) y Done. Your new project is available at /home/username/YOUR_USERNAME.github.io

關(guān)于時(shí)區(qū),應(yīng)該指定為 TZ 時(shí)區(qū)(這里是全部列表: tz 數(shù)據(jù)庫時(shí)區(qū)列表)。

現(xiàn)在,繼續(xù)往下走并開始創(chuàng)建你的***篇博文!你可能想在你喜愛的代碼編輯器里打開工程目錄并且找到里面的 content 文件夾。然后創(chuàng)建一個(gè)新文件,它可以被命名為 my-first-post.md (別擔(dān)心,這只是為了測(cè)試,以后你可以改變它)。在文章內(nèi)容之前,應(yīng)該以元數(shù)據(jù)開始,這些元數(shù)據(jù)標(biāo)識(shí)標(biāo)題、日期、目錄及更多,像下面這樣:

.lang="markdown" # DON'T COPY this line, it exists just for highlighting purposes Title: My first postDate: 2017-11-26 10:01Modified: 2017-11-27 12:30Category: miscTags: first, miscSlug: My-first-postAuthors: Your nameSummary: What does your post talk about? Write here. This is the *first post* from my Pelican blog. **YAY!**

讓我們看看它長(zhǎng)什么樣?

進(jìn)入終端,產(chǎn)生靜態(tài)文件并且啟動(dòng)服務(wù)器。要這么做,使用下面命令:

(venv)$ make html && make serve

當(dāng)這條命令正在運(yùn)行,你應(yīng)該可以在你喜愛的 web 瀏覽器地址欄中鍵入 localhost:8000 來訪問它。

怎樣使用pelican和Github pages來搭建博客

博客主頁的截圖。它有一個(gè)帶有 Renata's blog 標(biāo)題的頭部,***篇博文在左邊,文章的信息在右邊,鏈接和社交在底部

相當(dāng)簡(jiǎn)潔,對(duì)吧?

現(xiàn)在,如果你想在文章中放一張圖片,該怎么做呢?好,首先你在放置文章的內(nèi)容目錄里創(chuàng)建一個(gè)目錄。為了引用簡(jiǎn)單,我們將這個(gè)目錄命名為 image?,F(xiàn)在你必須讓 Pelican 使用它。找到 pelicanconf.py 文件,這個(gè)文件是你配置系統(tǒng)的地方,并且添加一個(gè)包含你的圖片目錄的變量:

.lang="python" # DON'T COPY this line, it exists just for highlighting purposes STATIC_PATHS = ['images']

保存它。打開文章并且以如下方式添加圖片:

.lang="markdown" # DON'T COPY this line, it exists just for highlighting purposes ![Write here a good description for people who can't see the image]({filename}/images/IMAGE_NAME.jpg)

你可以在終端中隨時(shí)按下 CTRL+C 來中斷服務(wù)器。但是你應(yīng)該再次啟動(dòng)它并檢查圖片是否正確。你能記住怎么樣做嗎?

(venv)$ make html && make serve

在你代碼完工之前的***一步:你應(yīng)該確保任何人都可以使用 ATOM 或 RSS 流來讀你的文章。找到 pelicanconf.py 文件,這個(gè)文件是你配置系統(tǒng)的地方,并且編輯關(guān)于 RSS 流產(chǎn)生的部分:

.lang="python" # DON'T COPY this line, it exists just for highlighting purposes FEED_ALL_ATOM = 'feeds/all.atom.xml'FEED_ALL_RSS = 'feeds/all.rss.xml'AUTHOR_FEED_RSS = 'feeds/%s.rss.xml'RSS_FEED_SUMMARY_ONLY = False

保存所有,這樣你才可以將代碼上傳到 Github 上。你可以通過添加所有文件,使用一個(gè)信息(“first commit”)來提交它,并且使用 git push。你將會(huì)被問起你的 Github 登錄名和密碼。

$ git add -A && git commit -a -m 'first commit' && git push --all

還有...記住在最開始的時(shí)候,我給你說的怎樣防止 Pelican 產(chǎn)生的靜態(tài)文件輸出 master 分支嗎?,F(xiàn)在對(duì)你來說是時(shí)候產(chǎn)生它們了:

$ make github

你將會(huì)被再次問及 Github 登錄名和密碼。好了!你的新博客應(yīng)該創(chuàng)建在 https://YOUR_USERNAME.github.io。

以上就是怎樣使用pelican和Github pages來搭建博客,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI