从Wordpress迁移至Hugo以及不信关

2018-11-08 约 3037 字 预计阅读 7 分钟

好几天没有更新了。不是偷懒,是因为找到一个新玩意:-)
前几天觉得Wordpress的Elegant模板太过冗余,css设置起来很多冲突。
打算找一个单纯支持W3.css的Wordpress模板。
用Google搜索”w3 css wordpress themes”没找到什么Wordpress,结果找到一个Hugo的W3 basic模板。
Hugo是啥玩意?初到新西兰,在Boss的男装店做过几年店小二,可是知道Hugo Boss是一款知名西装啊。
点开看看了,学习了一下:

Hugo is a static site generator written in Go”). Hugo is developed by Bjørn Erik Pedersen, Steve Francia, and other contributors. Hugo is an open source project licensed under the Apache License 2.0.[2]

Go语言又是啥,完全不知道。
维基百科

Go(又稱Golang[3])是Google開發的一种静态强类型編譯型并发型,并具有垃圾回收功能”)的编程语言

几个形容词全不懂,不过看到是金主Google开发的,那需要关注。

总而言之,搜了一圈,都说Go语言很好,性能超过Python、PHP几条街。
反正我Python和PHP这两门语言也是小学生水平,要改换门庭也很容易。
想起高中时有个同学在演讲课上说过这么一句话:

白纸好作画

故此打算学习一下Go语言。
学习新东西从博客入手最好,经常更新,会经常有新想法新问题冒出来,在解决问题的过程中学习效果最佳。
故此研究了一下如何从Wordpress迁移到Hugo。
本来是很简单的操作,因为是中文博客的原因,中途增加了一些定制工作量。现在将步骤梳理于此供大家参考。

安装Hugo

Hugo支持多操作系统。Windows、MAC OS也可以安装,本人用的是Ubuntu,故此命令都是linux的。 到Hugo Releases下载最新版本。 写作本文时是0.51版

wget https://github.com/gohugoio/hugo/releases/download/v0.51/hugo_0.51_Linux-64bit.deb
然后安装
sudo dpkg -i hugo*.deb
运行一下hugo检测版本
hugo version

安装git

以前因为自己玩代码,没有团队合作意识,没仔细用过git。 这两天用git感觉真是好用,大大提高工作效率,而且也更有乐趣

Make the web fun again

sudo apt-get update
sudo apt-get install git
过一阵子,再写一个用git快速更新网站的帖子。

建立第一个Hugo站并安装模板

hugo new site命令就可以在指定目录建立新站,我是建立了一个开发者环境目录

hugo new site ~/dev.jesselau.com
安装模板,可以到hugo themes挑选模板,我这里用自己开发的w3-simple模板为例
cd ~/dev.jesselau.com/themes
git clone https://github.com/jesselau76/hugo-w3-simple
需要配置一下config.toml文件,可以按照下列例子参考:

config.toml

baseurl = "/" languageCode = "en-us"
title = "Jesse Lau Blog"
theme = "hugo-w3-simple"
disqusShortname = "" # disqus_shortname
googleAnalytics = "" # UA-XXXXXXXX-X
[[menu.main]]
name = "About"
url = "/about/"
weight = 2
[[menu.main]]
name = "Categories"
url = "/categories/"
weight = 3
[[menu.main]]
name = "Tags"
url = "/tags/"
weight = 4
[params]
relatedPosts = true
socialshare = true
description = "Jesse Lau Blog"
onesignalid = "" #one signal push app id
logotext = "JESSE LAU BLOG" # logo text
footer = "© [Jesse Lau](https://jesselau.com) 2018 | [Github](https://github.com/jesselau76) | [Twitter](https://twitter.com/jesselau2) | [RSS](/index.xml)"
好了,hugo site就配置好了,直接可以运行
hugo server
浏览器访问localhost:1313就能看到站点

将Wordpress帖子移植到Hugo

上文操作结束,还没有任何内容。需要很方便的工具将以前在Wordpress码的帖子弄到Hugo站。
Hugo官方推荐了两个Wordpress插件,我用了完全无反应。但有的博主说可以,你们可以试试看。
我使用的是exitwp-for-hugo,是用Python编的。
先到Wordpress的tools-Export将发布的帖子导出到一个xml文件。
这个脚本成功将帖子转化成markdown文件,然后拷贝到~/dev.jesselau.com/content/posts/目录下。
浏览器访问localhost:1313,帖子都有了。随意点击几个,都是404错误。
因为以前Wordpress是用的中文链接,通过数据库转链,字符可以随意用标点符号等,然而Hugo是建立的静态网页,建立了文件夹,这样文件名有很多限制,不能采用很多字符。
这样,我只能修改一下exitwp的python源文件。加了这么一个函数

def remove_period(x):
#cut words and delete punctuation
punc = "!?。"#$%&'()*+,-/:;<=>@[\]^_`{|}~⦅⦆「」、、〃》「」『』【】〔〕〖〗〘〙〚〛〜〝〞〟〰〾〿–—‘’‛“”„‟…‧﹏."
punc = punc.decode("utf-8")
string = re.sub(ur"[%s]+" %punc, "", x.decode("utf-8"))
return string
这个函数就把怪异字符统统删除。
我给这个项目建立了一个git分支,修改版在此处,如果有兴趣可以看看。

修改错误链接

因为上述操作,以前的帖子内互链就有不少404错误了。
找到一个工具,可以将错误链接都找出来。
然后用Sublime Text或者Notepad++的多文件查找替换功能修改错误链接即可。

网速大幅提高

少了PHP+数据库处理时间,网页速度真是大有改善。 测试了一下我最长的帖子之一
同样网页Wordpress版本
wordpress网页加载时间 7.450s Hugo产生的静态网页 hugo加载时间只有 1.962s Wordpress版本的网页有2,516kb,而Hugo版只有759kb。
当然跟我目前的排版属于简洁模式有关系。但也说明了Wordpress的冗余代码太多。
另外

7.450-2516/759*1.962=0.95

就是说即使不考虑文件大小的缩小,通过数据库的时间也大概有0.95秒左右,静态网页大幅提高网页速度是毋庸置疑的。
# 第一次用Markdown编辑器写作,感觉比Wordpress的更好用。


今天再细读一下通关文之不信关

道德经曰:上士闻道,勤而行之;中士闻道,若存若亡;下士闻道,大笑之。
金刚经曰:善男子、善女人,发阿耨多罗三藐三菩提心,应如是住,如是降伏其心。阿耨多罗三藐三菩提心,即华言无上正等正觉心,乃信心也。
易曰:中孚豚鱼,吉。
中庸曰:诚者物之终始,不诚无物。
是故君子诚之为贵。
三教圣人垂训,皆以诚信为修道之本也。
夫信者,非言语之信,非信息之信,乃真心实意之信。
信之一字,其理最真,其力最大。
能以感天地,通神明,转生杀,扭生死,为圣为贤,作佛作仙,为修道者第一至宝。
学者认定此一字,紧抱心胸,须臾不离,则大本已立,不动不摇,不更不变。
从此进步,可以闻道,可以行道;可以了性,可以了命。
古来仙真,那个不从信中着脚,那个不从信中成道?
但信不是悬虚妄想,不是打夥讲谭,乃是一心在道,别无二意,念茲在茲,朝斯夕斯,时刻不忘之义。
非视性命为一大事者不能信;非视天下如敝蹝者不能信;非富贵不能淫,贫贱不能移,威武不能屈者不能信,非俯视一切,万有皆空者不能信;非至死不变,吉凶患难置於度外者不能信。
若方寸之中稍有一毫疑虑,稍有一些懈怠,俱不为之信。
可知真信是诚一不二,与日俱进,与时偕行之功。
能如此者,日有所进;若反此者,枉度岁月。
但信又要辨其是非,分其邪正。
世间有误入旁门外道,持守终身,固执不化,至死不变者,何尝不是信?
然信之非正,反为信害。
故学道者贵乎信,尤贵乎信得其正,方是真信於道矣。
世间糊涂学人,信道不笃。
一日十二时中,万起万灭,任其群魔反乱,未尝一刻把道放在心上。
或无事之时,忽然想起翻弄书卷,未曾玩味,却又想起别事,被鬼怪将心扯去。
亦有学人,一时整顿刚气,勇猛精进,辨别理义,寻师访友,久而不遇,便生怠心。
或有稍闻些子香风,不见速效,便生疑惑,逡巡不前;或有入于歧路,造作成病,不悔自错,反以丹经为虚妄。
如此等类,不可枚举。
不能信道,焉能知道。
吾劝真心学道者,速将不信关口打通。
认定性命,一概邪心邪事扫去,另立起个金刚志气,实实落落向前,不管他得力不得力,学成学不成,至死方休。
暗中自有鬼神扶持,终有好事。
否则,今日作此,明日作彼,忽然而前,忽然而后,或信或疑,主宰不定,妄想明道,难矣。

此关讲到一心在道,别无二意,念茲在茲,朝斯夕斯,时刻不忘,也即是《一代宗师》里常讲的:

念念不忘,必有回响

正信不是悬虚妄想,乃是需要一步步行去,自然而然会有好事。
正信与邪信之区别就在于这个“行”。

宁可一思进
莫在一思停


author

本文由Jesse Lau原创

2012年定居新西兰至今,自由职业者,从事网站和程式交易,曾获得Dukascopy外汇程序交易比赛2届月度冠军(id:Tradingwithea).
本文采用知识共享署名 4.0 国际许可协议进行许可。


留点评论吧:

本网站使用cookie技术以提高用户体验度。 了解我们的隐私政策 我已了解