Hexo 搭建个人博客

Hexo

1、hexo是什么?

Hexo是一个快速、简洁且高效的博客框架。可以把用户的markdown文件,按照指定的主题解析成静态网页。

作用:可以快递搭建个人博客。配置着github 可以免费搭建个人博客。

2、安装hexo

1、前提:安装使用 hexo之前需要先安装 Node.js

node.js安装 https://blog.csdn.net/m0_47759019/article/details/121874564

查询node 版本
node -v

2、安装hexo

npm install -g hexo-cli

3、查看已安装好的版本

hexo version

我这里输出的版本是: hexo-cli: 4.3.0

3、创建项目

1、进到自己项目存放的位置,例如: D:/hexo

初始化项目 hexo-project项目名,可自行更换
hexo init hexo-project
进行项目内
cd hexo-project
更新依赖
npm install

新建完成后,查看项目目录下有:

.
├── _config.yml:博客的配置文件
├── package.json:相关依赖信息
├── scaffolds:文章模板
├── source
|   └── _posts :默认创建文件存放位置
└── themes:主题

2、启动项目

生成静态文件,简写hexo g
hexo generate
启动项目,默认4000端口
hexo server
如果端口被占用,如果 -p 指定其它端口
hexo server -p 8080

访问

Hexo 搭建个人博客

4、创建一篇新文章

4.1、添加文章

可以执行下面的命令创建一篇新文章

创建文件名为 使用hexo的第一天
hexo new 使用hexo的第一天

默认会在 source\_posts创建文件(这个默认位置可以修改)

Hexo 搭建个人博客

4.2、文档格式

我们使用文件编辑器打开刚刚新建的文件,会发现其中已经存在内容:

这些内容是干嘛的呢?事实上,他们就是用于设置 MarkDown 文档在被解析为静态网页文件时的相关配置,这些配置参数一般位于文件中最上方以 --- 分隔的区域。

其中, title 的值是当前文档名,也是将来在网页中显示的文章标题。

date 值是我们新建文档时的当地时区时间。

tags 值是文档的标签,我们可以随意赋值为文档贴标签。其用法如下:

4.3、文章分类

categories 是用来给文章分类的,它跟 tags 不同的是其具有顺序性和层次性。

例如,我们写一篇关于 CSS3 动画的文章,我们可能会为其打标签 “CSS3″、”动画”等,但是我们却会将其分在 CSS/CSS3 类别下,这个是有一定的相关性、顺序性和层次性。简单来说, categories 有点儿像新建文件夹对文档进行分门别类的归置。

categories 的用法同 tags 一样,只不过斗个 categories 值是分先后顺序的。

可以在文件内写内容, 用Markdown语法。

4.4、文章摘要

有的时候,主题模板配置的不够好的话,Hexo 最终生成的静态站点是不会自动生成文章摘要的。

所以,为了保险起见,我们也自己手动设置文章摘要,这样也方便避免自动生成的摘要不优雅的情况。

设置文章摘要,我们只需在想显示为摘要的内容之后添 <!-- more --> 即可。

在文章中使用 <!-- more -->,那么 <!-- more --> 之前的文字将会被视为摘要。

<!-- more --> 截断前的文字,首页中将只出现这部分文字。

像下面这样:


 感觉还不错,挺好的

他的官网是:https://hexo.io/zh-cn/

感觉有很多主题,速度快,上手速度

写完之后,可以在页面刷新即可访问到。

Hexo 搭建个人博客

创建文件,其实是从 scaffolds中的 post.md复制过来的。

模板内容可以自行修改。

4.2、添加草稿

除了直接添加文章之外,还可以添加草稿

hexo publish 创建一篇草稿

5、更换主题

5.1、自己创建一个主题

官方文档:https://hexo.io/zh-cn/docs/themes

创建 Hexo 主题非常容易,您只要在 themes 文件夹内,新增一个任意名称的文件夹,并修改 _config.yml 内的 theme 设定,即可切换主题。一个主题可能会有以下的结构:

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

5.2、使用别人上传的主题

官方主题:https://hexo.io/themes/

这里推荐两个NexT 或者 butterfly

这里以 butterfly 为例,更换主题操作

官方指导文档:https://butterfly.js.org/posts/21cfbf15/

1、通过 npm加载依赖(也可以下载源码)

npm i hexo-theme-butterfly

2、更换主题
修改 Hexo 根目录下的 _config.yml,把主题改为butterfly

3、安裝插件
如果你没有 pug 以及 stylus 的渲染器,请下载安裝:

npm install hexo-renderer-pug hexo-renderer-stylus --save

6、插件

7、发布

发布有多个方式,这里主要讲两种方式:

1、将hexo部署到GITHUB/GITEE(免费搭建博客)

Hexo 部署到 Gitee(需要实名认证):https://blog.csdn.net/qq_38157825/article/details/112783631

2、编译后将静态文件放在自己服务器上

将\public目录的文件,放在服务器上即可。

8、扩展

Hexo 有趣功能盘点:https://blog.csdn.net/weixin_34405332/article/details/88704754

butterfly主题配置:https://blog.csdn.net/YR_112233/article/details/122778691

参考文章:https://blog.csdn.net/sinat_37781304/article/details/82729029

Original: https://www.cnblogs.com/galenblog/p/16326249.html
Author: 黎华扬
Title: Hexo 搭建个人博客

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/569217/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Elasticsearch 入门实战(2)–安装

    本文主要介绍 Elasticsearch 的安装,使用到的环境及软件信息如下:CentOS 7.6.1810、Elasticsearch 8.2.2。 1、主机参数调整 安装 El…

    Java 2023年6月16日
    089
  • mysql

    一:什么情况下设置了索引但无法使用1.以%开头的like语句,模糊匹配2.or语句前后没有同时使用索引3.数据类型出现隐式转化 二:优化数据库的方法1.选取最适用的字段属性2.使用…

    Java 2023年6月5日
    0106
  • Spring Boot 通用对象列表比较和去重

    1、前言 在Excel批量导入数据时,常常需要与数据库中已存在数据的比较,并且需要考虑导入数据重复的可能性。 导入的行数据,一般有一个实体类(对象)与之对应,往往这个实体类在数据库…

    Java 2023年6月14日
    089
  • 使用Java Faker模拟测试数据

    当你需要为你的单元测试想出有用的测试数据时,你是否也经常没有灵感?不要担心,Java Faker来救你了!在这篇博客中,你将学习如何生成你的测试数据。在这篇博客中,你将学习如何生成…

    Java 2023年5月29日
    086
  • 基于Mybatis插件方式实现数据脱敏处理

    一、项目介绍 1、项目背景 有时候我们数据库中存储一些敏感的信息比如 手机号、 银行卡号,我们希望我们查询出来的的时候对一些敏感信息做一些脱敏处理。 当面项目是基于自定义Mybat…

    Java 2023年5月30日
    0107
  • 初次使用create-react-app

    最近玩了一下React,感觉还挺好玩的,说实话对后端的来说比vue好多了,记得刚学vue的时候是一头雾水; 基础知识暂时后面慢慢说,其实感觉还是挺容易的吧,今天就简单使用一下rea…

    Java 2023年6月6日
    089
  • 22.1.10 二叉树

    22.1.10 二叉树 code: public static void preOrder(TreeNode tree) {    if (tree == null)       …

    Java 2023年6月13日
    068
  • 常用命令

    移动文件:mv [源文件] [目标文件]删除文件或目录:rm –d删除目录 –f强制删除 –r递归删除 [文件或目录名]修改文件或目录群组:chgrp –r递归 [群组] [文件或…

    Java 2023年6月9日
    069
  • MySQL实现表之间的字段更新

    新功能写好之后,需要把以前表数据更新一下,字段数据从以前的表中获取,只更新两个字段 UPDATE TABLE1,TABLE2 SET TABLE1.COLUMN1 = TABLE2…

    Java 2023年6月8日
    073
  • Windows 常用的快捷键

    键盘功能键 键盘功能键:Tab 、Shift 、Ctrl 、Alt 、空格 、 Enter 、 Window 、 ↑ 、 ↓ 、 ← 、 → *键盘快捷键:全选 、 复制 、 粘贴…

    Java 2023年6月8日
    097
  • 461. Hamming Distance

    The Hamming distance between two integers is the number of positions at which the correspo…

    Java 2023年6月15日
    082
  • Spring事件监听机制源码解析

    Spring事件监听器使用 1.Spring事件监听体系包括三个组件:事件、事件监听器,事件广播器。 事件:定义事件类型和事件源,需要继承ApplicationEvent。 pac…

    Java 2023年6月13日
    077
  • 使用 jsDelivr 免费加速 GitHub Pages 博客的静态资源(二)

    继上一轮改造过后,比较拖页面加载速度的主要有三点: 第 1 点在页面仍然托管在 GitHub Pages 的前提下,似乎没有什么好办法能产生质的飞跃;本篇主要改善了第 2 点和第 …

    Java 2023年6月5日
    085
  • 删除无序链表中重复节点,保留第一次出现的节点

    面试题 02.01. 移除重复节点:https://leetcode-cn.com/problems/remove-duplicate-node-lcci/ 编写代码,移除未排序链…

    Java 2023年6月5日
    083
  • Halo 开源项目学习(七):缓存机制

    基本介绍 我们知道,频繁操作数据库会降低服务器的系统性能,因此通常需要将频繁访问、更新的数据存入到缓存。Halo 项目也引入了缓存机制,且设置了多种实现方式,如自定义缓存、Redi…

    Java 2023年6月9日
    081
  • 基于Spring+SpringMvc+MyBatis的简单图书管理系统的实现(SSM标准开发模板)

    最终页面效果 工程目录 具体代码实现 pom.xml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"…

    Java 2023年6月7日
    0104
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球