GitHub+Hexo搭建个人博客(三)Hexo个性化配置进阶

主题安装

  • Hexo官网提供了丰富的主题,挑选一款适合自己的,执行以下命令:

    $ git clone [主题地址] [存放位置]
    

    例如我选择的主题是Next

    $ git clone https://github.com/iissnan/hexo-theme-next themes/next
    

    完成之后,在themes目录下就会多了一个主题next的文件夹

    点击预览 themes

  • 进入站点配置文件 ,找到theme字段,修改为

    theme: next
    
  • 进入主题配置文件 ,找到scheme字段,里面有next主题四种模板。

    # Schemes
    scheme: Muse
    # scheme: Mist
    # scheme: Pisces
    # scheme: Gemini
    

    首先使用命令,打开http://localhost:4000在本地预览,切换scheme刷新下页面看看效果

    $ hexo s -g
    

Next主题

主题目录

.
├── _config.yml
├── languages
├── layout
├── scripts
└── source

具体解释

基础配置

进入站点配置文件 ,字段Site

# Site
title: Danboard                 # 网站标题
subtitle: 踮起脚尖,另一种高度     # 副标题
description:                    # 描述,显示在侧边栏
author: Danboard                # 作者
language: zh-Hans               # 语言
timezone: Asia/Shanghai          # 时间

站点logo

进入主题配置文件 ,字段favicon

favicon:
  small: /images/favicon-16x16-next.png
  medium: /images/favicon-32x32-next.png
  apple_touch_icon: /images/apple-touch-icon-next.png
  safari_pinned_tab: /images/logo.svg

图标推荐:

Font Awesome

阿里图标

下载图标,指定大小,修改名称,存放在source/images/

菜单

进入主题配置文件 ,字段menu

默认支持Font Awesome图标,所以||后只要跟上图标名就ok,可以自行更换

menu:
  home: / || home
  #about: /about/ || user
  #tags: /tags/ || tags
  #categories: /categories/ || th
  archives: /archives/ || archive
  #schedule: /schedule/ || calendar
  #sitemap: /sitemap.xml || sitemap
  #commonweal: /404/ || heartbea

选择自己想要的菜单项,取消注释

  1. 新建一个about(关于我)页面

    $ hexo new page "about"
    

    hexo/source/下生成about/index.md ,编辑index.md文档

  2. 新建一个tags(标签)页面

    $ hexo new page "tages"
    

    hexo/source/下生成tages/index.md ,修改如下

    type: tages
    
  3. 新建一个categories(分类)页面

    $ hexo new page "categories"
    

    hexo/source/下生成/index.md ,修改如下

    type: categories
    
  4. 新建一个腾讯公益404页面

    hexo/source/下新建一个404.html的文件,内容如下:

    <!DOCTYPE HTML>
    <html>
    <head>
      <meta http-equiv="content-type" content="text/html;charset=utf-8;"/>
      <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
      <meta name="robots" content="all" />
      <meta name="robots" content="index,follow"/>
      <link rel="stylesheet" type="text/css" >
    </head>
    <body>
      <script type="text/plain" src="http://www.qq.com/404/search_children.js"
              charset="utf-8" homePageUrl="/"
              homePageName="返回主页">
      </script>
      <script src="https://qzone.qq.com/gy/404/data.js" charset="utf-8"></script>
      <script src="https://qzone.qq.com/gy/404/page.js" charset="utf-8"></script>
    </body>
    </html>
    

    修改菜单

    commonweal: /404.html || heartbea
    

侧边栏

http://oxv1k8kvi.bkt.clouddn.com/18-4-1/77995899.jpg
  1. 进入主题配置文件 ,字段sidebar

    sidebar:
      position: left     # 靠左
      #position: right       # 靠右
    
      #display: post # 默认,在文章页面(拥有目录列表)时显示
      #display: always   # 在所有页面中都显示
      display: hide      # 在所有页面中都隐藏(可以手动展开)     
      #display: remove   # 完全移除
    
  1. 头像

    • 添加头像

      进入主题配置文件 ,字段avatar

      avatar: /images/avatar.png     # 放在source/images/
      # avatar: http://example.com/avatar.png    # 网上链接 url
      
    • 圆形头像

      文件\themes\next\source\css\_common\components\sidebar\sidebar-author.styl ,添加代码:

      .site-author-image {
        
        /* 头像圆形 */
        border-radius: 80px;
        -webkit-border-radius: 80px;
        -moz-border-radius: 80px;
        box-shadow: inset 0 -1px 0 #333sf;
      }
      
    • 头像旋转

      同上,添加代码:

      .site-author-image {
        /* 鼠标经过头像旋转360度 */
        -webkit-transition: -webkit-transform 1.5s ease-out;
        -moz-transition: -moz-transform 1.5s ease-out;
        transition: transform 1.5s ease-out;
      }
      
      img:hover {
        /* 鼠标经过头像旋转360度 */
        -webkit-transform: rotateZ(360deg);
        -moz-transform: rotateZ(360deg);
        transform: rotateZ(360deg);
      }
      
      /* Z 轴旋转动画 */
      @keyframes play {
        0% {
          transform: rotateZ(0deg);
        }
        100% {
          transform: rotateZ(-360deg);
        }
      }
      @-webkit-keyframes play {
         // 同上
      }
      @-moz-keyframes play {
         // 同上
      }
      
  2. 社交链接

    进入主题配置文件 ,字段social

    social:
      GitHub: https://github.com/XXX || github
      #E-Mail: mailto:yourname@gmail.com || envelope
      #Google: https://plus.google.com/yourname || google
      #Twitter: https://twitter.com/yourname || twitter
      #FB Page: https://www.facebook.com/yourname || facebook
      #VK Group: https://vk.com/yourname || vk
      #StackOverflow: https://stackoverflow.com/yourname || stack-overflow
      #YouTube: https://youtube.com/yourname || youtube
      #Instagram: https://instagram.com/yourname || instagram
      #Skype: skype:yourname?call|chat || skype
    
    social_icons:
      enable: true
      icons_only: false
      transition: false
    
  3. 推荐阅读 or 友情链接

    进入主题配置文件 ,字段Blogrolls

    # Blog rolls
    links_icon: link
    links_title: 友情链接
    # links_layout: block        # 块级    分行显示
    links_layout: inline     # 内联    同行显示
    links:           # 添加友链
      SYSU: http://www.sysu.edu.cn/      
    

GitHub边角

效果:

http://oxv1k8kvi.bkt.clouddn.com/18-4-1/73895753.jpg

文件themes/next/layout/_layout.swig ,复制代码放在<div class="headband"></div>下,修改href为自己的github地址

因为我是把github的logo放在了左上角,在手机上查看就会发现logo与菜单重和了

如果想要修改边角位置,可以在文件themes/next/source/css/_custom/custom.styl 中进行更改

svg {
  float: left;
  transform: scale(-1, 1);
  +mobile() { 
      float: right;
      transform: scale(1, 1);
  }  
}

动画效果

  1. 背景动画

    进入主题配置文件 ,字段canvas_nest

    # 4种,开启true,关闭false
    canvas_nest: false
    three_waves: false
    canvas_lines: true
    canvas_sphere: false
    
  2. 进度条

    进入主题配置文件 ,字段Progress

    # Progress bar in the top during page loading.
    pace: true
    pace_theme: 
      pace-theme-flash
    

文章编辑

  1. 首页预览多篇文章,通过阅读全文打开

    • ``截断 推荐

      在想要显示在首页的文字下方添加标签``

    • 文章属性description

      ---
      title: 文章标题
      date: 发布时间
      tages: 文章标签
      description: 摘要,显示在首页
      ---
      
    • 自动显示

      进入主题配置文件 ,字段auto_excerpt

      auto_excerpt:
        enable: true
        length: 150      # 截取长度为150个字符
      
  2. 文章背景

    添加边框阴影,突出文章,打开文件themes/next/source/css/_custom/custom.styl ,该文件可以让自定义一些布局,通过浏览器的开发者工具找到对应标签,就可以进行设置了。

    .post {
      margin-top: 60px;
      margin-bottom: 60px;
      padding: 25px;
      background-color: #fff;
      -webkit-box-shadow: 0 0 10px rgba(202, 203, 204, .5);
      -moz-box-shadow: 0 0 10px rgba(202, 203, 204, .5);
    }
    
  3. 文章分割线

    文章添加边框阴影后,分割线就显得有点多余,在custom.styl文件中添加

    .posts-expand .post-eof {
        margin: 0px;
        background-color: rgba(255, 255, 255, 0);
    }
    
  4. 代码高亮

    进入主题配置文件 ,字段highlight

    # Available value:
    #    normal | night | night eighties | night blue | night bright
    highlight_theme: normal
    
    http://oxv1k8kvi.bkt.clouddn.com/18-4-1/58128679.jpg
  5. 文章打赏

    进入主题配置文件 ,字段reward,将支付宝or微信收款二维码图片保存到文件夹/themes/next/source/images/

    # Reward
    #reward_comment: Donate comment here
    wechatpay: /images/wechatpay.jpg
    alipay: /images/alipay.jpg
    # bitcoin: /images/bitcoin.png
    
  6. 文章分享

    Next这里提供了三种:jiathis、百度、豆瓣,效果都差不多

    自定义文件都在themes/next/layout/_partials/share/

    • jiathis分享

      jiathis: true
      
    • 百度分享

      baidushare:
         type: button
      # Available value:  # 两种样式  下方 | 侧边
      #    button | slide
      
    • 豆瓣(自己试了,不能用)

      duoshuo_share: true
      
  7. 文章加密

    这只是一种障眼法

    文件/themes/next/layout/_partials/head.swig ,添加如下代码

    <script>
        (function(){
            if('{{ page.password }}'){
                if (prompt('请输入文章密码') !== '{{ page.password }}'){
                    alert('密码错误!');
                    history.back();
                }
            }
        })();
    </script>
    

    文章属性添加

    password: # 你设定的密码
    

    ?

参考链接

最后编辑于
?著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,029评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,238评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事?!?“怎么了?”我有些...
    开封第一讲书人阅读 159,576评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,214评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,324评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,392评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,416评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,196评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,631评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,919评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,090评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,767评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,410评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,090评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,328评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,952评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,979评论 2 351

推荐阅读更多精彩内容