首发于 中国R语言社区
R语言搭建炫酷的线上博客系统

R语言搭建炫酷的线上博客系统

徐静 硕士研究生、算法工程师 兴趣方向:统计机器学习,深度学习,模型的线上化部署、网络爬虫,前端可视化。
个人博客: dataxujing.github.io/


市面上有很多开源的博客搭建系统比如jekyll (我的个人博客就是用jekyll搭建的),hugo等。去年的时候想给我家闺女做一个记录其成长轨迹的博客,就使用了Rblogdown去完成的。如果你是R语言用户,那么恭喜你,你可以完全通过R语言搭建自己的博客或者网站了。Blogdown包是YiHui Xie等开发的可以调用Hugo主题的基于Rstudio的快速搭建个人博客系统的优质R包,说明文档详实: bookdown.org/yihui/blog。我们下面会介绍基于Blogdown 、 hugo 、 netlify 、 github完全基于Rsudio搭建一个炫酷的博客系统并部署。让我们愉快的开始吧.

1.开始前的准备

首先我么要安装R,Rstudio(如果你的Rstudio已经N年没有更新了,建议你更新你的Rstudio,因为下面的一些操作可能比较老的Rstudio版本是没有的), 有了这些之后,你需要安装必要的包:

blogdown的安装

CRAN

install.packages("blogdown")

GitHub

if (!requireNamespace("devtools")) install.packages("devtools") devtools::install_github("rstudio/blogdown")

hugo安装与更新

blogdown::installhugo() blogdown::updatehugo()

查看安装hugo的版本

blogdown::hugoversion() ``` 当你安装好这些R包,然后运行 blogdown::newsite()没有报错,我们就可以进行下一步的操作了。


2.Rstudio线下编辑博客系统

配置需要的环境后,我们可以通过Rstudio来生成blog了:

第一步:初始化一个Rblogdown项目

打开Rstudio->File->New Project->New Directory 进入如下操作



如图选择Website using blogdown创建一个R项目(如果看不到这个选项,请升级你的Rstudio) 进而



注意上述过程也可以通过R命令来实现:blogdown::new_site(theme = "xxx"),xxx代表你要使用的hugo主题,hugo主题可以在 themes.gohugo.io/中获得,这里有你想要的各种主题,你可以直接下载,拷贝到你项目中的themes文件中。

第二步:运行初始化的Rblogdown

运行完第一步之后,你会在你的Rstudio中看到项目文件的列表:



第三步:在Rstudio中运行博客系统

在Console中输入:blogdown::serve_site()就可以正常启动你的博客系统了:



在Rstudio的Viewer中会显示运行的博客,如下图所示:



wow, 我们的博客出来了,但是问题来了,我怎么样通过R markdown Post到我的博客,因为我要更新我的博客内容,我们下一步要解决的问题就是删除模板中提供的博客内容,增加自己的Post的R markdown博文。

第四步:Post我的Rmd博文

我们在第二步中说过,content文件夹中的内容就是我们要Post的内容,因此我们只需删除掉content->post文件夹下的文件就可以了,同时我们也可以把about.md文件换成自己的about内容。清空之后我们就可以按照下面面方式Post我们自己的博文了:



tools->Addins->blogdown New Post->Excute就可以新建一个Post的Rmd文档,如下图所示:



填写好内容后,点击Done按钮即可在Post的问价夹看到生成的Rmd文档,你就可以编辑了,如下所示:





最终生成的博客就编程了你自己想要的。



第五步: 修改Hugo主题,让他变的更炫酷,更属于自己

上面四步我们使用了基本的Hugo主题,如果我想换一些博客Hugo主题怎么办呢?其实这个问题我已经在上面中提到了,你需要修稿config文件和theme文件夹中的内容,比如你可以修稿config文件来修改你博客的结构和替换主题,theme文件夹中的主题可以在Hugo官方的主题网站中下载然后通过配置文件调用。

这里提供一个我之前做的一个博客的效果:


到这里为止,使用blogdown搭建了自己的博客系统,我们下一步需要做的是要把我们的博客部署到 netlify。


3.部署

对于blogdown的部署,提供了如下几种部署的办法:Netlify,Updog,GithubPages,GitlabPages等。我们选择其中一种部署办法就OK了,这里介绍blogdown部署到Netlify

首先我们要把第2节中的项目托管到GitHub(这个过程比较简单,这里直接跳过)

然后需要注册登录Netlify( app.netlify.com/signup),可以直接通过GitHub账号登录,然后按照如下所示的过程,进行部署就OK了。

点击 New site from git



点击GitHub



搜索GitHub中项目的名称



填写部署的相关信息并点击部署



部署完成的界面



这样就部署完你的项目了,Netlify会提供一个免费的域名给你例如我部署的项目: nuannuan.netlify.com/。 最后如果你想Post新的内容到你的博客,直接可以Post到GitHub对应的项目中就OK了,非常方便。当然你也可以替换成自己的域名。

4.小结

我们通过blogdown包和Hugo可以完全基于Rstudio搭建一套自己的博客系统,并通过Netlify和GitHub部署到公网环境。这样我们就有自己的博客了。



大家都在看

2017年R语言发展报告(国内)

精心整理 | R语言中文社区历史文章合集(作者篇)

精心整理 | R语言中文社区历史文章整理(类型篇)



weixin.qq.com/r/Lkyqssv (二维码自动识别)


公众号后台回复关键字即可学习

回复 爬虫 爬虫三大案例实战
回复 Python 1小时破冰入门
回复 数据挖掘 R语言入门及数据挖掘
回复 人工智能 三个月入门人工智能
回复 数据分析师 数据分析师成长之路
回复 机器学习 机器学习的商业应用
回复 数据科学 数据科学实战
回复 常用算法 常用数据挖掘算法

资讯网起名大全姓王女孩名字洋气生辰八字查询免费算命别墅设计方案网站网站制作最好公司苏州安严seo画室起名名子大全梦婷名字的解释以及寓意根据《周易》起名的名句建设高级网站的房子装修的设计网站沈姓男孩起名 大全新永不瞑目 电视剧陈字签名设计设计自己签名的名字散光可以矫正过来吗配送公司起名大全大全马雅可夫斯基周易2021股市预测商城网站建设要多少费用卯时女孩起什么名字墨姓男孩起名羊肉馆起名简单好听有那些如何是电子签名起名巩姓睡前鬼故事给女友的文字版哪家企业建设网站好七夕生的男孩起名博字起名名字男孩生辰八字手工起名土菜馆起什么名字好少年生前被连续抽血16次?多部门介入两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”淀粉肠小王子日销售额涨超10倍高中生被打伤下体休学 邯郸通报单亲妈妈陷入热恋 14岁儿子报警何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言张家界的山上“长”满了韩国人?男孩8年未见母亲被告知被遗忘中国拥有亿元资产的家庭达13.3万户19岁小伙救下5人后溺亡 多方发声315晚会后胖东来又人满为患了张立群任西安交通大学校长“重生之我在北大当嫡校长”男子被猫抓伤后确诊“猫抓病”测试车高速逃费 小米:已补缴周杰伦一审败诉网易网友洛杉矶偶遇贾玲今日春分倪萍分享减重40斤方法七年后宇文玥被薅头发捞上岸许家印被限制高消费萧美琴窜访捷克 外交部回应联合利华开始重组专访95后高颜值猪保姆胖东来员工每周单休无小长假男子被流浪猫绊倒 投喂者赔24万小米汽车超级工厂正式揭幕黑马情侣提车了西双版纳热带植物园回应蜉蝣大爆发当地回应沈阳致3死车祸车主疑毒驾恒大被罚41.75亿到底怎么缴妈妈回应孩子在校撞护栏坠楼外国人感慨凌晨的中国很安全杨倩无缘巴黎奥运校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变王树国卸任西安交大校长 师生送别手机成瘾是影响睡眠质量重要因素国产伟哥去年销售近13亿阿根廷将发行1万与2万面值的纸币兔狲“狲大娘”因病死亡遭遇山火的松茸之乡“开封王婆”爆火:促成四五十对奥巴马现身唐宁街 黑色着装引猜测考生莫言也上北大硕士复试名单了德国打算提及普京时仅用姓名天水麻辣烫把捣辣椒大爷累坏了

资讯网 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化