title: 建站小记

date: 2018-03-04 11:10:54

updated: 2018-03-06 12:00:00

tags: [hexo,next,建站,学习,前端技术,折腾,博客,记录]

description:

keywords:

comments:

image:

前言

三月四日,建站小记。

开学事情不算多,在这个还未适应学习的时间,得找一些事情来避免这段时间被浪费掉,正好搞个blog,有兴趣,也不算完全浪费时间。

博客基本已经不被大众使用了,还在使用的多半都是些it从业者,不知为何我会喜欢一些逐渐被人们抛弃的东西,很久之前就想搞一个博客,也尝试过用wordpress,直接用的模板,最后也没有在上面坚持写字。

现在这个blog陆陆续续花了一周的时间,虽然hexo系统建立博客已经相当简单了,一个是没有基础比较愚笨(随着年龄增长越发觉得自己智商低于平均值),另一个原因是把next的很多特性都折腾了一下。

折腾了很多,最后其实样式也和官方的差不多,没有设计能力不敢大改,生怕搞出个乡村非主流,所以只能在官方的基础上修改吧。大佬们的博客很漂亮,奈何技术能力不足,尝试过模仿最后还是四不像。

我是一个不容易坚持的人,所以不敢轻易期望能够坚持什么,也是这样,凡是我认为能够坚持的一般也不会放弃。博客应该还是能够坚持下来的,因为有记录的需求。记录一些学习的成果问题,记录一些想说的字。

到目前为止博客的框架完成了,几经测试应该没有什么bug,但是也有一些想要实现的东西没有完成,未来的修改计划都在lofter上记录了。以后也会抽时间慢慢完善。markdown语法也还不熟悉,慢慢的我希望能够融入这个圈子。

**注意本文没有使用标准markdown语法,格式非常奇怪,如果有时间我会修改一下,如果要查看正常的请点击这里 https://e1sewhere.github.io/2018/03/04/建站小记/ **

建议

这是给来到这里想要建站的朋友们的建议

博客目前没有加入搜索引擎收录,所以不太可能被搜索到,如果你有幸看到这里,奇迹了。我会当作有很多人在看来写这篇博客,这样会让我写的更仔细,以后自己也方便参考。

  1. next目前是使用的最多的主题,网上能找到的教程基本都是基于next的,所以入门组好先选择next,等熟悉了前端知识和hexo的特点后就可以使用其他主题甚至自己写配置文件。
  2. 使用next主题时最先查看next官方文档,你会学到一些名词,很多网上的教程都是基于官方文档。
  3. 看教程时最好看完一个再看别的,一个好的教程博主都会尽可能系统的构建,你看完一篇可以更好的了解hexo,不至于再各个页面切换浪费时间。
  4. 如果你对hexo有了初步的了解就可以学习下html/css的知识,如果你想系统的学习前端入门知识,建议去w3school学习。
  5. 善用git的版本控制,很多错误的操作都可以靠它便捷的回滚,如果要了解可以从这个廖雪峰老师的网站入门。
  6. 你需要学会使用markdown语言,可以参考这篇HEXO下的Markdown语法(GFM)写博客: https://zhuzhuyule.com/blog/HEXO/HEXO下的Markdown语法(GFM)写博客.html
  7. 未完。。。

参考链接

  • 这是一些我建站过程中参考的比较好的教程,其他还有很多零散的没有记录也找不到了

实现内容

很多容易找到的东西我就不写出来了,这里只记录一些我建站过程中不宜找到的内容。

必要的安装

这部分比较简单参考:

使用Hexo+Github一步步搭建属于自己的博客(基础)

使用Hexo+Github一步步搭建属于自己的博客(进阶)

我的一部分配置文件

这部分是我的一部分custom.styl代码,你可以参考我的代码做一些简单的静态样式配色修改,当你掌握css后就可以使用开发者工具坐到页面内任何元素的调整,建议使用chrome浏览器。

实现方法: 修改文件 >*\themes\next\source\css_custom\custom.styl

直接添加如下代码,根据你的需要修改参数

// Custom styles.

body{   //页面主体背景
background:url(/images/wp1_1280x1024_jpg.jpg);
background-size:cover;
background-repeat:no-repeat;
background-attachment:fixed;
background-position:center;
} .content { //文章背景色
border-radius: 5px;
margin-top: 60px;
padding: 60px;
background:rgba(255 255 255,0.8) none repeat scroll !important;
}
.main-inner {width: 900px;} .header { //头部颜色
background:rgba(0 0 0,0.8) none repeat scroll !important;
}
.footer { //底部颜色
background:rgba(0 0 0,0.8) none repeat scroll !important;
} #lv-container { //来必力背景色
border-radius: 10px;
background:rgba(255 255 255,0.8) none repeat scroll !important;
} #sidebar {
background:rgba(0 0 0,0.8) none repeat scroll !important; //p,span,a {color: 颜色代码;}
} .post-button { //阅读全文位置
margin-top: 20px;
text-align: center;
//border-radius: 2px;
//radius: 10px;
}
a.btn{
//border-radius: 5px; }
.post-button a:hover { //阅读全文颜色样式
background: rgba(255 255 255,0.0);
color: #8f0008;
border-radius: 8px;
border-bottom-color: #8f0008;
} // 文章标题字体
.posts-expand .post-title {
font-size: 26px;
font-weight: 700;
} // 分割线样式
hr {
color: #a40000;
} //运行时间样式
div#days {
//color: #a40000;
font-size: 15px;
}
div#days:hover {
color: #a40000;
} //标题横线样式 .posts-expand .post-title-link::before{
background-color: #a40000;
} //首页按钮颜色
.menu .menu-item a:hover {
color: #a40000;
background: #000000; } //侧边栏概览目录样式
.sidebar-nav .sidebar-nav-active{
color: white;
border-bottom-color: #a40000;
}
.sidebar-nav:hover .sidebar-nav-active:hover{
color: #a40000; } //侧边栏按钮三横线颜色
.sidebar-toggle-line {
background: #000000;
}
.page-post-detail .sidebar-toggle-line {
background: #101010;
}
//侧边栏回到顶部样式
.back-to-top{
color: #000000;
} //文章内链接颜色
a:hover {
border-bottom-color: #d60036;
} //侧栏文章目录下的颜色
.post-toc .nav .active-current > a {
color: #eee;
}
.post-toc .nav .active > a {
color: white;
border-bottom-color: #d60036;
}
.post-toc .nav .active-current > a:hover {
color: #d60036;
}

注意 有些元素在这个custom内无法修改,而是在css文件夹内的其他文件夹内,内容过于零散就不一一列出,你可以使用f12自行修改,这里只列出最基础的几个修改。代码内有一些类可能你并没有比如运行时间样式,这个是需要在主题配置文件添加代码的,如果你没有添加,上文代码依然可以全部复制到你的custom文件并不会出现错误。

零散的一些设置

关闭某个页面的评论

直接在 你需要禁用评论的markdown文档(.md)头加入代码(三个短横线之上)

comments: false

例如

Title:helloworld
Data:2011-11-11 11:11:11
Comments:false
--
正文

为每篇文章添加"本文结束"标记

效果见本文末尾

实现方法

在路径 \themes\next\layout_macro 中新建 passage-end-tag.swig 文件,并添加以下内容:

<div>
{% if not is_index %}
<div style="text-align:center;color: #ccc;font-size:14px;">-------------本文结束-------------</div>
{% endif %}
</div>

接着打开\themes\next\layout_macro\post.swig文件,在post-body 之后, post-footer 之前添加如下代码

<div>
{% if not is_index %}
{% include 'passage-end-tag.swig' %}
{% endif %}
</div>

然后打开主题配置文件(_config.yml),在末尾添加:

Passage-end-tag:

enabled: true

此处注意:passage-end-tag.swig文件中有中文字所以最好使用utf-8编码

设置站点图标

选择好图片放置在/themses/next/source/images内

通常为两张png图片一张"16x16"一张"32x32"像素

修改 主题配置文件favicon的子项目为图片路径(可参考默认代码)

页面底部添加 网站总字数统计

主题配置文件post_wordcount:下的参数修改为true

Totalcount:true

需要hexo-wordcount插件支持,hexo文件夹下运行cmd输入安装代码npm install hexo-wordcount --save

添加阅读全文

方法一(推荐)#####

在文章中需要截断的地方添加<!--more--> 

之上的文章就会出现在首页摘要并在下方显示阅读全文按钮

方法二

在你要发表的博文md文件头中添加一行description:

在description后写你想要放在首页的文字,它会出现在文章题目下的摘要区域并在下方显示阅读全文按钮。

注意description:必须要有一个英文空格再输入内容。

你也可以直接在模板文件中插入description这样就不用每篇博文都手动添加这个关键字了。

在模板文件中插入的方法见下一条

模板文件增加项目

我们通常使用hexo new post “title”创建一个空的博文,post就是你要使用的模板如果不输入就是默认模板文件,我通常就使用的默认。

下面以默认模板为例子添加页面变量项目

我们修改如下位置

~/blog/scaffolds/post.md

这个文件下下也可以创建其他的模板文件,要使用只需要在new文件的时候声明使用的哪个文件就好了,很方便。

---
title:
date: 2018-03-04 11:10:54
updated:
tags:
description:
keywords:
comments:
image:
---

以上变量是我的模板文件,是几个我最常用的项目,你也可以参照下面的描述来查看自己需要哪些变量项目,需要注意的是每个变量的冒号都是英文冒号,而且冒号后必须有一个英文空格。

这是模板文件的一些解释 摘自reuixiy:https://reuixiy.github.io/technology/computer/computer-aided-art/2017/06/09/hexo-next-optimization.html

你可以在reuixiy的文章中查看更加详细的关于模板文件的解释


/* !!!!!!!!!!
** 每一项的 : 后面均有一个空格
** 且 : 为英文符号
** !!!!!!!!!!
*/
title:
/* 文章标题,可以为中文 */
date:
/* 建立日期,如果自己手动添加,请按固定格式
** 就算不写,页面每篇文章顶部的发表于……也能显示
** 只要在主题配置文件中,配置了 created_at 就行
** 那为什么还要自己加上?
** 自定义文章发布的时间
*/
updated:
/* 更新日期,其它与上面的建立日期类似
** 不过在页面每篇文章顶部,是更新于……
** 在主题配置文件中,是 updated_at
*/
permalink:
/* 若站点配置文件下的 permalink 配置了 title
** 则可以替换文章 URL 里面的 title(文章标题)
*/
categories:
/* 分类,支持多级,比如:
- technology
- computer
- computer-aided-art
则为technology/computer/computer-aided-art
(不适用于 layout: page)
*/
tags:
/* 标签
** 多个可以这样写[标签1,标签2,标签3]
** (不适用于 layout: page)
*/
description:
/* 文章的描述,在每篇文章标题下方显示
** 并且作为网页的 description 元数据
** 如果不写,则自动取 <!-- more -->
** 之前的文字作为网页的 description 元数据
** 建议每篇文章都务必加上!
*/
keywords:
/* 关键字,并且作为网页的 keywords 元数据
** 如果不写,则自动取 tags 里的项
** 作为网页的 keywords 元数据
*/
comments:
/* 是否开启评论
** 默认值是 true
** 要关闭写 false
*/
layout:
/* 页面布局,默认值是 post,默认值可以在
** 站点配置文件中修改 default_layout
** 另:404 页面可能用到,将其值改为 false
*/
type:
/* categories,目录页面
** tags,标签页面
** picture,用来生成 group-pictures
** quote?
** https://reuixiy.github.io/uncategorized/2010/01/01/test.html
*/
photos:
/* Gallery support,用来支持画廊 / 相册,用法如下:
- photo_url_1
- photo_url_2
- photo_url_3
https://reuixiy.github.io/uncategorized/2010/01/01/test.html
*/
link:
/* 文章的外部链接
** https://reuixiy.github.io/uncategorized/2010/01/01/test.html
*/
image:
/* 自定义的文章摘要图片,只在页面展示,文章内消失
** 此项只有参考本文 5.14 节配置好,否则请勿添加!
*/
sticky:
/* 文章置顶
** 此项只有参考本文 5.15 节配置好,否则请勿添加!
*/
password:
/* 文章密码,此项只有参考教程:
** http://shenzekun.cn/hexo的next主题个性化配置教程.html
** 第 24 节,配置好,否则请勿添加!
** 发现还是有 bug 的,就是右键在新标签中打开
** 然后无论是否输入密码,都能看到内容
*/

mist风格下修改博客名称双横线风格

首先网上粗略搜索没有找到修改方式,于是使用f12开发者工具(推荐使用chrome)

定位元素的class为.logo-line-before i,.logo-line-after i.brand 定位css路径为*\next\source\css\_common\components\header\site-meta.styl

步骤:

*\next\source\css\_common\components\header\site-meta.styl添加如下代码

.brand {
color: #a40000 !important; //头部标志颜色
//color: $brand-color;
position: relative;
display: inline-block;
padding: 0 40px; .logo-line-before i,.logo-line-after i{ //头部双横线颜色
background: #a40000 !important;;
}

内容居中

内容居中

见:http://wellliu.com/2016/12/29/Blog居中调整-基于Next主题/

回到顶部按钮添加百分比

修改主题配置文件如下代码:

# Scroll percent label in b2t button.
# 在回到顶部按钮里显示阅读百分比
scrollpercent: true

加载条

方法一(推荐)

打开主题配置文件搜索pace,将pace的值修改为你喜欢的一个代码示例如下

# Progress bar in the top during page loading.
pace: pace-theme-flash #集成的加载条
# Themes list:
#pace-theme-big-counter 大数字
#pace-theme-bounce 弹球
#pace-theme-barber-shop 全屏覆盖遮罩
#pace-theme-center-atom 中心数字
#pace-theme-center-circle
#pace-theme-center-radar
#pace-theme-center-simple 中心读条
#pace-theme-corner-indicator右上旋转
#pace-theme-fill-left 半透明遮罩
#pace-theme-flash 上读条右上角旋转
#pace-theme-loading-bar
#pace-theme-mac-osx 上读条粗
#pace-theme-minimal 上读条
# For example
# pace_theme: pace-theme-center-simple
#pace_theme: pace-theme-flash
方法二(自定义颜色)

集成的加载条我不知道怎么改变颜色所以使用的shenzekun给出的方案

实现步骤:

打开/themes/next/layout/_partials/head.swig文件

添加如下代码


<script src="//cdn.bootcss.com/pace/1.0.2/pace.min.js"></script>
<link href="//cdn.bootcss.com/pace/1.0.2/themes/pink/pace-theme-flash.css" rel="stylesheet"> <style>
.pace .pace-progress {
background: #1E92FB; /*进度条颜色*/
height: 3px;
}
.pace .pace-progress-inner {
box-shadow: 0 0 10px #1E92FB, 0 0 5px #1E92FB; /*阴影颜色*/
}
.pace .pace-activity {
border-top-color: #1E92FB; /*上边框颜色*/
border-left-color: #1E92FB; /*左边框颜色*/
}
</style>

你可以参照代码示例自由修改颜色

注意:这样使用有小bug,如果你之前配置过主题集成的加载条请确保已经完全关闭

打开主题配置文件搜索pace,将pace值改为false,并且用“#”将 所有pace_theme:注释掉

主题添加背景图片

见:http://www.cnblogs.com/tiansha/p/6458894.html

文字背景色以及半透明的设置(包含边距)

theme/next/source/css/_custom文件夹下打开custom.styl文件,往里面添加以下代码:

.content {
border-radius: 10px;
margin-top: 60px;
background:rgba(颜色rgb,透明度) none repeat scroll !important;
}

由于修改后显示文字贴着边缘所以我又给上面的类.content添加了padding值如下:

.content {
border-radius: 10px;
margin-top: 60px;
background: rgba(颜色rgb,透明度) none repeat scroll !important;
padding: 60px;
}

添加鼠标飘字特效

新建一个js:

*/themes/next/source/js/src/jiazhiguan.js

在js内添加如下代码

/* 鼠标飘字*/
var a_idx = 0;
jQuery(document).ready(function($) {
$("body").click(function(e) {
var a = new Array("富强", "民主", "文明", "和谐", "自由", "平等", "公正" ,"法治", "爱国", "敬业", "诚信", "友善");
var $i = $("<span/>").text(a[a_idx]);
a_idx = (a_idx + 1) % a.length;
var x = e.pageX,
y = e.pageY;
$i.css({
"z-index": 999999999999999999999999999999999999999999999999999999999999999999999,
"top": y - 20,
"left": x,
"position": "absolute",
"font-weight": "bold",
"color": "#a40000"
});
$("body").append($i);
$i.animate({
"top": y - 180,
"opacity": 0
},
1500,
function() {
$i.remove();
});
});
});

然后在Blog\themes\next\layout\_layout.swig文件的最下方,</body>前面添加<script type="text/javascript" src="/js/src/jiazhiguan.js"></script>

本条内容来自:https://newdee.cf/posts/

修改突出显示修改我样式

进入目录: \themes\next\source\css_custom

添加代码

//``小代码块样式
code{
color: #A40000; // 字体颜色
background: #bf7f8; //背景颜色
margin: 2px;
}

结尾

还会随着使用更新

Githun&HEXO建站小记的更多相关文章

  1. Docker 建站小记

    一,前言 Docker 建站小记,我使用了四个镜像来搭建:nginx,certbot,mysql,gradle.欢迎访问:https://www.zzk0.top 这个网页是从 github 上找的个 ...

  2. hexo 建站参考

    1. hexo 官网 2. 主题 AD:https://godbmw.com/ 前期尝试了两天都是看主题,还有编辑主题,最终选择这个主题是因为两点 主题layout是 ejs 学习node时候了解过  ...

  3. Hexo建站过程总结

    Hexo 是一个基于 Node.js 快速.简洁且高效的博客框架,可以将 Markdown 文件快速的生成静态网页,托管在 GitHub Pages 上. 由于原来博客的主机费用问题,我没有办法再在那 ...

  4. 使用HEXO建站

    使用Hexo模板 按以下指导进行本地预览和上传到你的github. 环境安装 安装node.js node.js官方下载地址https://nodejs.org/en/ 设置npm淘宝镜像站(npm默 ...

  5. hexo建站报错解决记录

    安装某主题依赖 nodejieba 库,该库又依赖 windows-build-tools 和 node-gyp git bash shell 下 cnpm install -g windows-bu ...

  6. 个人建站&mac下安装hexo

    title: 个人建站&mac下安装hexo date: 2018-04-18 16:34:02 tags: [mac,blog,个人建站,markdown] --- 这两天使用了markdo ...

  7. 开发小白也毫无压力的hexo静态博客建站全攻略 - 躺坑后亲诉心路历程

    目录 基本原理 方法1 - 本机Windows下建站 (力荐) 下载安装node.js 用管理员权限打开命令行,安装hexo-cli和hexo 下载安装git 初始化hexo 使用hexo gener ...

  8. 一文详解Hexo+Github小白建站

    作者:玩世不恭的Coder时间:2020-03-08说明:本文为原创文章,未经允许不可转载,转载前请联系作者 一文详解Hexo+Github小白建站 前言 GitHub是一个面向开源及私有软件项目的托 ...

  9. Hexo建博小结

    本来只写在自己的github pages中的,想一想万一有人看呢,虽然同类的文章有不少了,但有些新坑他们没填啊,姑且放出来啦... 拥有自己的博客是一个很酷的事情,但自己建站总是太麻烦了,步骤繁多,管 ...

随机推荐

  1. 一般处理程序aspx

    public bool IsReusable { get { return false; } }属性,将该属性的值改为true,为什么不起作用?按照MSDN的解释,该属性的意思是: “获取一个值,该值 ...

  2. Java运算符、引用数据类型、流程控制语句

    1运算符 1.1算术运算符 运算符是用来计算数据的符号. 数据可以是常量,也可以是变量. 被运算符操作的数我们称为操作数. 算术运算符最常见的操作就是将操作数参与数学计算: 运算符 运算规则 范例 结 ...

  3. 解决Chrome浏览器自动记录用户名和密码的黄色背景问题和该解决方法与tab切换至下一个input冲突的问题。

    哈哈哈,是不是标题很长呀,不逗你们了.其实这么长的标题主要就说了两件事: 第一件:解决Chrome浏览器自动记录用户名和密码的黄色背景问题. 第二件:输入完用户名后按下tab键切换至下一个输入密码in ...

  4. event——事件对象详解

    PS:转自https://www.cnblogs.com/songyaqi/p/5204143.html 1. 事件对象 Event 对象代表事件的状态,比如事件在其中发生的元素.键盘按键的状态.鼠标 ...

  5. There is much opportunity for anyone willing to dedicate himself to his labors.

    There is much opportunity for anyone willing to dedicate himself to his labors.付出努力的人才有机会出人头地.

  6. Git入门学习总结

    用了两天时间看完廖雪峰老师的git教程(http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b0 ...

  7. ios uilabel 根据文字 计算宽度 高度

    //根据宽度求高度        + (CGFloat)getLabelHeightWithText:(NSString *)text width:(CGFloat)width font: (CGFl ...

  8. hdu 3466 Proud Merchants 自豪的商人(01背包,微变形)

    题意: 要买一些东西,每件东西有价格和价值,但是买得到的前提是身上的钱要比该东西价格多出一定的量,否则不卖.给出身上的钱和所有东西的3个属性,求最大总价值. 思路: 1)WA思路:与01背包差不多,d ...

  9. 第011课_串口(UART)的使用

    from: 第011课_串口(UART)的使用 第001节_辅线1_硬件知识_UART硬件介绍 1. 串口的硬件介绍 UART的全称是 Universal Asynchronous Receiver ...

  10. xshell5 上传下载命令

    借助XShell,使用linux命令sz可以很方便的将服务器上的文件下载到本地,使用rz命令则是把本地文件上传到服务器. yum -y install lrzsz 其中,对于sz和rz的理解与记忆我用 ...