hexo自定义首页/主页教程

hexo+github.io搭建博客后,有一个问题是,我的域名yucc.me直接指向我的博客首页,但是问题是我想用我的顶级域名yucc.me自定义页面用于个人信息及成果展示,同时又不想失去这个原有博客首页。本教程就是解决这个问题。

经过本教程,大家可以看到顶级域名yucc.me 已经可以自定义了,而博客首页对应的域名变为yucc.me/blog了,除了这些,其他的所有链接地址(包含导航链接、文章内容链接等)都没有改变。

在google也搜了很多,都没找到合适的答案,有的是通过将博客作为子域名来展示,顶级域名再单独搭建一个库,我觉得太麻烦,而且我的很多网页域名都改了,肯定不行。有的建议不生成首页,去除生成首页的插件,这也不行,原有的博客首页,还是很有必要的,我还是想保留。发现网上没有我想要的答案。

其实,仔细思考这个问题,最主要的问题是生成的博客首页的地址是根目录/顶级域名,所以占用了这个yucc.me的域名。所以最好的办法是让生成的博客首页地址改了就可以了,所以有了下面的教程。该教程只会让生成的博客首页至博客索引的第n页更改,对原有的博客内容页面毫无影响

1. 更改首页的地址

去hexo的配置文件_config.yml中,找到index_genernator,更改path,默认的是’’,更改为’/blog/‘。

以我的为例,更改前,博客的首页地址yucc.me/,更改后,yucc.me/blog/ 。这个更改非常好,更改后,只有博客首页地址变了,其他的所有内容,比如关于,归档,标签等的地址全部不变,博客文章的地址等全部不变。

1
2
3
4
index_generator:
path: '/blog/'
per_page: 10
order_by: -date

此时,可以去你的主题(我的主题是next)下面的_config.yml中的menu目录下的home对应的地址,从 / 改为 /blog/ 。

1
2
menu:
home: /blog/ || home

2. 设置你的顶级域名首页

可以在source目录下面,新建一个文件叫做 index.md,写下如下内容:

1
2
3
4
5
6
7
layout: false

---

hello, I am Chenchen Yu. This page is in building to show my work.

You can visit my blog: [yucc.me/blog/](./blog/) .

layout: false表示,该页不会使用hexo或主题的模板渲染。 名字叫index表示,这个就是对应着顶级域名的页面,对于我而言,就是yucc.me。所以想展示的就可以在这里面写了。

除了在source下面新建index.md的方法,也可以使用在source直接放一个index.html,这样顶级域名对应的就是index.html展示的内容了。

至此,教程结束。 可以看到顶级域名yucc.me 已经可以自定义了,而博客首页对应的域名变为yucc.me/blog了,除了这些,其他的都没有改变,我想这就是大家想要的答案了,欢迎点击上面的链接验证我的网站。

参考资料

  1. http://yucc.me/p/14eafa62/
谢谢你!