Hexo自定义页面做首页

作者: 一月筠 | 来源:发表于2017-04-01 12:52 被阅读3293次

前言

如果你想了解如何在 GitHub Pages上传自己写的网页作为首页,hexo博客作为其子页?即自己写的页面作为http://user.github.io的页面,将hexo博客放在http://user.github.io/blog上,怎么做?那就接着往下看...

本教程的前提已经用hexo将博客搭建在yourname.github.io的repository上,接下来跟随博主开始愉快的旅程吧。

说一下我走过的弯路吧,想想真是曲折蜿蜒。音乐music,走起!我看见一座座山,一座座。。。那就是青藏高原。。。好了,言归正传。

之前我的想法是通过子域名访问,即主域名(yoursite.com)和子域名(blog.yoursite.com)都解析到你的GitHub Pagesyourname.github.io。然后再自定义主页,比如index.html。我的博客页面是存放在yourname.github.iorepo中,自定义的主页放在一个叫做Home-Pagerepo中。在yourname.github.ioHome-Page这两个仓库中分别在根目录放置了CNAME文件,文件的内容分别为blog.yoursite.comyoursite.com。其实这样也是可以实现的,只是觉得太繁琐,索性就改成了现在的布局。

页面效果如下图所示,详情请浏览博主的个人博客
http://guoyanjun.top

郭艳军的那些事儿

新建一个repository

名字可以随意,我的是blog
那么现在你有了一个空的repository然后本地clone下按照提示初始化一个master分支,并且开启github pages
注意,这里的repo的目录下是不存在CNAME文件的

修改hexo配置文件_config.yml

找到url下的root 修改成/你起的名字/ (博主这里就是/blog/)url也要改!!!博主一开始没发现。。。

# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: https://yourname.github.io/blog
root: /blog/
permalink: :year/:month/:day/:title/
permalink_defaults:

然后再找到_config.yml下的deploy,把repository改成你新的repository的clone地址

deploy:
  type: git
  repository: https://github.com/yourname/blog.git (改这里)
  branch: master

重新部署你的博客

在对应的文件下在gitbash上输入hexo g再输入hexo d
这样你的博客就被部署到https://yourname.github.io/blog/上了

清空原来的repository

现在原来那个yourname.github.io的repository你就可以清空,然后留下一个index.html,把你自定义页面的代码复制到里面就好了,然后可以通过以下链接跳转到你的博客界面了。

<a href="blog/"></a>

改主题里URL的ROOT

# Subdirectory | 子目录
## If your site' url is 'http://yoursite.com/blog', set root_url as '/blog/'
## 网站若存放在子目录,请按上面格式填写
## https://hexo.io/docs/configuration.html#URL
root_url: /blog/

像本站用的XXX主题改了以后左边栏会出现问题,这时候需要到left-col.ejs改一下
我是这样解决的

<section class="switch-part switch-part1">
    <nav class="header-menu">
        <ul>
            <% for (var i in theme.menu){ %>
                <!-- 修改这里 -->
                <li>
                    <a href="<%- url_for(theme.menu[i]) %>">
                        <%= i %>
                    </a>
                </li>
                <%}%>
        </ul>
    </nav>
    <nav class="header-nav">
        <ul class="social">
            <% for (var i in theme.subnav){ %>
                <a class="fa <%= i %>" href="<%- url_for(theme.subnav[i]) %>" title="<%= i %>"></a>
                <%}%>
        </ul>
    </nav>
</section>

参考资料

  • 以下附上我觉得不错的参考资料。

1、如何将你的github仓库部署到github pages(repo里建gh-pages分支,上传hexo到blog的gh-pages里面)

2、hexo系列教程:(二)搭建hexo博客

3、hexo + github + 多说 来搭建免费博客 // Netpi 日志 (本地打不开解决方法)

4、如何搭建一个独立博客——简明Github Pages与Hexo教程 (ssh key的设置)

5、hexo你的博客Hexo

6、Hexo 3.1.1 静态博客搭建指南

相关文章

网友评论

  • 950b4ba75caa:请问left-col.ejs在哪里呀?我找不着这个文件
  • Yolo_m:您好 我想问一下 文章加密那个怎么设置的 谢谢指导一下
    Yolo_m:@Yolo_m 为什么我设置好了以后 也添加了模版 但最后还是默认的模版
    Yolo_m:@一月筠 好的 谢谢了:beers:
    一月筠:@Yolo_m 使用了一个插件:hexo-encrypt
    github地址:https://github.com/edolphin-ydf/hexo-encrypt
  • 小神猫:现在文章真是一大抄
  • ccccccal:没太看懂啊,老铁
    ccccccal:@一月筠 谢谢,已经搞定了:grin:
    一月筠:@蓦然回首那已不是 具体哪里没看明白呢?:stuck_out_tongue_winking_eye:
  • id被吃:博主你好,请问你首页的镜面特效是怎么实现的
    一月筠:CSS实现的,详情请移步到GitHub:https://github.com/TinyJay/TinyJay.github.io/tree/master/css

本文标题:Hexo自定义页面做首页

本文链接:https://www.haomeiwen.com/subject/bnliottx.html