朱琛的小屋

Hexo博客第三站:安装主题+第三方评论+网站统计

接着我们开始丰富我们的博客。

再次提示:

  1. 下面输入的命令都在 Git Bash 中输入。
  2. 下文提到的目录地址都是面对NexT主题的,不过其他主题的索引也都大同小异。

1. hexo博客结构

在这里,我们先来看看hexo自动生成的博客的主要结构。

├─scaffolds      //每篇帖子模板所在地
├─source         
│  └─_posts      //这里放着我们写的帖子 里面初始化一篇hello-world.md
└─themes         //hexo博客主题所在地
    └─landscape  //初始化主题默认为landscape
├─node_modules   //hexo的驱动文件所在地
├─_config.yml    //hexo博客配置文件

这些都是我们有可能去改变的。看完了这个,接下来开始让我们的博客变得添砖加瓦吧。

2. 添砖加瓦

2.1 安装主题

一个好看的主题可以更加吸引读者,但是从头设计主题也太麻烦了吧~,所以Hexo有很多现成的主题。传送门 [ Hexo主题 ]
我们利用语句下载下来我们需要的主题。例如我们下载hexo-theme-next这个主题。

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

然后进入上面提到的 themes 文件夹下,可以看见出现了hexo-theme-next文件夹。此时我们到博客根目录下的 _config.yml,修改博客所用的主题 (第66行) 。

# Extensions
## Plugins: http://hexo.io/plugins/
## Themes: http://hexo.io/themes/
theme: hexo-theme-next

改完后,我们在 Git Bash 中输入

hexo g
hexo s

进入 [ http://127.0.0.1:4000/ ] 查看我们的页面,是不是变得高大上多啦。这一章主要是完善博客所必须的一些内容。

2.2 第三方评论

博客怎么能没有让小伙伴说话的地方呢。因为Hexo博客是静态博客,所以评论系统我们得靠其他的插件了。NexT这个主题支持 Disqus 和多说两种第三方评论插件。我使用的是多说。Disqus的看这里有提到 Hexo在github上构建免费的Web应用

  1. 进入多说平台,点击 “ 我要安装 “ 。
  2. 配置好自己的站点,注意多说域名这一栏是我们接下来需要的东西。站点地址就是你Hexo博客上传的GitHub页面地址。
  3. 在你的站点配置文件 (不是主题配置文件) _config.yml加一行:duoshuo_shortname: 你的多说域名 ( 多说域名: 你的多说二级域名去掉 .duoshuo.com 部分 )
  4. 再次生成上传 hexo ghexo d (没有事先部署到GitHub上的看这里 Hexo博客第二站:部署到GitHub上),点击文章hello-world,是不是看见最下方出现了评论系统啦。管理的话进入多说的后台管理就行了。
  5. **有人可能觉得多说的标准css样式不怎么好看。你可以进入后台管理-设置-基本设置-自定义CSS里面编辑自己想要的。我用的是从网上借鉴来,自己改动了一些的。
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    #ds-reset .ds-avatar,
    #ds-recent-visitors .ds-avatar{
    filter: alpha(opacity=0); /*设置图片背景透明*/
    background-color: rgb(0, 0, 0);
    background-color: rgba(0, 0, 0, 0);
    }


    #ds-reset .ds-avatar img,
    #ds-recent-visitors .ds-avatar img {
    width: 54px;
    height: 54px; /*设置图像的长和宽,这里要根据自己的评论框情况更改*/
    border-radius: 27px; /*设置图像圆角效果,在这里我直接设置了超过width/2的像素,即为圆形了*/
    -webkit-border-radius: 27px; /*圆角效果:兼容webkit浏览器*/
    -moz-border-radius: 27px;
    box-shadow: inset 0 -1px 0 #3333sf; /*设置图像阴影效果*/
    -webkit-box-shadow: inset 0 -1px 0 #3333sf;
    -webkit-transition: 0.4s;
    -webkit-transition: -webkit-transform 0.4s ease-out;
    transition: transform 0.4s ease-out; /*变化时间设置为0.4秒(变化动作即为下面的图像旋转360读)*/
    -moz-transition: -moz-transform 0.4s ease-out;
    }


    #ds-reset .ds-avatar img:hover,
    #ds-recent-visitors .ds-avatar img:hover {

    /*设置鼠标悬浮在头像时的CSS样式*/ box-shadow: 0 0 10px #fff
    ;

    rgba(255, 255, 255, .6), inset 0 0 20px rgba(255, 255, 255, 1);
    -webkit-box-shadow: 0 0 10px #fff;
    rgba(255, 255, 255, .6), inset 0 0 20px rgba(255, 255, 255, 1);
    transform: rotateZ(360deg); /*图像旋转360度*/
    -webkit-transform: rotateZ(360deg);
    -moz-transform: rotateZ(360deg);
    }



    #ds-recent-visitors .ds-avatar {
    float: left
    }
    /*隐藏多说底部版权*/
    #ds-thread #ds-reset .ds-powered-by {
    display: none
    ;

    }

2.3 博客分享

我们的博客写的好,会有人希望分享给其他人看。NexT主题有两个分享部件:多说分享和JiaThis。多说分享首先必须启用了多说才能使用。我们在站点配置文件下加上如下的语句,如果你想开启多说分享服务,把jiathis注释掉,取消duoshuo_share的注释就行啦。

# JiaThis 分享服务
jiathis: true

# 多说热评文章服务
duoshuo_hotartical: true

# # 多说 分享服务(必须启用多说)
# duoshuo_share: true

2.4 网站统计

其实我觉得google,百度统计这些对于许多人用不太上,毕竟不能直接观察到自己的博客有多少人看了什么的。如果需要安装的看这里>添加 Google, 百度统计。这里推荐一个小插件-不蒜子。这个小插件可以让你轻而易举的看见自己的博客火热程度,例如访问量和访问人数等。

有一个好玩的小地方,你为了想看到每一篇文章的阅读量,你可以在/themes/hexo-theme-next/layout/_macro/post.swig里面的下面的位置加上如下代码,(这个热度是从一个博客上看到的,感觉很有趣哈):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{% if post.categories and post.categories.length %}
<span class="post-category" >

</span>
{% endif %}

<!-- 在下面的位置加上如下代码 -->

<span id="busuanzi_container_page_pv">
&nbsp; | &nbsp; 热度&nbsp; <span id="busuanzi_value_page_pv"></span>°C
</span>

<!-- 在上面的位置加上如上代码 -->

{% if post.comments %}
{% if (theme.duoshuo and theme.duoshuo.shortname) or theme.duoshuo_shortname %}
<span class="post-comments-count">
&nbsp; | &nbsp;
<a href="{{ url_for(post.path) }}#comments" itemprop="discussionUrl">
<span class="post-comments-count ds-thread-count" data-thread-key="{{ post.path }}" itemprop="commentsCount"></span>
</a>
</span>

但是这有一个缺陷。就是我们会发现在主页时显示的热度和进入博客后的热度不一样,那是因为在主页时他显示的是主页这个页面的阅读量,而不是博客的阅读量,所以我们需要改变一些 (不会该代码的哭死╥﹏╥… ):
我们在/themes/hexo-theme-next/layout/_macro/目录下新建post-article.swig,把这些post.swig中的内容复制过去,而且加上上面的统计代码,然后在/themes/hexo-theme-next/layout/post.swig上面% import '_macro/post.swig' as post_template %中的post.swig改成post-article.swig,这样子就解决啦。就是在主页上的博客名字下面不会有阅读人数,进入博客才能看见。
为了给大家尽量详细的说明,不知不觉发现这篇文章写得好长^O^ ,下次接着写。

朱琛 wechat
扫一扫,用手机看更方便~
坚持原创技术分享,您的支持将鼓励我继续创作!