美文网首页
hexo+next教程(一)

hexo+next教程(一)

作者: valex | 来源:发表于2019-01-04 13:49 被阅读0次

前言

怎么说呢,之前曾经用过一段 时间的wordpress,后来沉迷于markdown,wordpress的markdown支持不好,又觉得再租个服务器太贵,所以上网查了查,发现了coding非常的不错(我知道github,考虑网速我选coding). 大概介绍下我的经历吧。

搭建环境准备

大概可以分为以下三步

  • Node.js 的安装和准备

  • git的安装和准备

  • gitHub账户的配置

配置Node.js环境

  1. 下载Node.js安装文件: nodejs中国官网 nodejs官网 根据自己的Windows版本选择相应的安装文件。 如图所示:

    image 保持默认设置即可,一路Next,安装很快就结束了。 然后我们检查一下是不是要求的组件都安装好了,同时按下Win和R,打开运行窗口: Windows的运行界面 image

    在新打开的窗口中输入cmd,敲击回车,打开命令行界面。(下文将直接用打开命令行来表示以上操作,记住哦~) 在打开的命令行界面中,输入

node -v
npm -v

如果结果如下图所示,则说明安装正确,可以进行下一步了,如果不正确,则需要回头检查自己的安装过程。 [图片上传失败...(image-aae4c5-1546580871476)]

配置Git环境

下载Git安装文件: GIt官网下载地址: Git-2.16.2-64-bit.exe 然后就进入了Git的安装界面,如图:

image

和Node.js一样,大部分设置都只需要保持默认. 一样的,我们来检查一下Git是不是安装正确了,打开命令行,输入:

git --version

如果结果如下图所示,则说明安装正确,可以进行下一步了,如果不正确,则需要回头检查自己的安装过程。 [图片上传失败...(image-8ad417-1546580871476)]

coding账户的注册和配置

国内的网站,绝大部分都是中文的,注册什么的就不说了,进入Coding 滚键盘就是了= =

创建项目(Coding Pages)

注册之后进入主页,点击项目,点击 +,项目名为你的用户名 查看Pages 服务是否开启:点击项目 -> 代码 -> Pages 服务,若没有开启则点开启

配置SSH与Git

那么我们有了免费的服务器之后,就要绑定个人电脑与它们联系,那就是SSHGit 绑定之后我们每次部署项目就不用输入帐号和密码

生成SSH Key

ssh-keygen -t rsa -C your_email@youremail.com

后面的 your_email@youremail.com 改为你的邮箱,之后会要求确认路径和输入密码,我们这使用默认的一路回车就行。成功的话会在~/下生成 .ssh 文件夹,进去,打开 id_rsa.pub,复制里面的key,粗暴点就是 Ctrl+a 然后 Ctrl+c

添加SSH Key

Coding,登录进入主页,点击 账户 —> SSH公钥 —> 输入key再点击 添加

验证成功与否

验证coding

ssh -T git@git.coding.net
如果是第一次的会提示是否continue,输入yes就会看到:You’ve successfully authenticated, but coding does not provide shell access 。这就表示已成功连上coding! 接下来我们要做的就是把本地仓库传到coding上去,在此之前还需要设置username和email,因为coding每次commit都会记录他们

git config --global user.name your name
git config --global user.email your_email@youremail.com

安装Hexo

在自己认为合适的地方创建一个文件夹,这里我以E:/hexo 为例子讲解,首先在E盘目录下创建Hexo文件夹,并在命令行的窗口进入到该目录 image

在命令行中输入:

npm install hexo-cli -g

然后你将会看到: image

可能你会看到一个WARN,但是不用担心,这不会影响你的正常使用。 下面我们来看一看Hexo是不是已经安装好了。 在命令行中输入:
hexo -v

如果你看到了如图文字,则说明已经安装成功了。 image

hexo的相关配置

初始化Hexo 我们使用cd命令换到你喜欢的地址,接着上面的操作,输入:

hexo init

然后输入:

npm install

之后npm将会自动安装你需要的组件,只需要等待npm操作即可。 首次体验Hexo 继续操作,同样是在命令行中,输入:

hexo g

image

然后输入:

hexo s

然后会提示: INFO Hexo is running at https://0.0.0.0:4000/. Press Ctrl+C to stop. 在浏览器中打开https://localhost:4000/,你将会看到:

image

目前为止,Hexo在本地的配置已经全都结束了。 执行hexo server提示找不到该指令 解决办法:在Hexo 3.0 后server被单独出来了,需要安装server,安装的命令如下:

sudo npm install hexo-server
或者
npm install hexo -server --save</pre>

怎样将Hexo与coding page 联系起来

配置Deployment 在此之前,先安装Git部署插件

npm install hexo-deployer-git --save

在你博客文件夹下_config.yml文件中,找到Deploy,然后按照如下修改:

deploy:
type: git
repo: git@coding.net:yourname/yourname.coding.me.git
branch: master</pre>

比如我的仓库的地址是git@coding.net:valex/valext.coding.me.git,master,所以配置如下

Deployment
Docs: https://hexo.io/docs/deployment.html
deploy:
type: git
repo: git@coding.net:valex/valext.coding.me.git,master</pre>

写博客、发布文章

新建一篇博客,执行下面的命令:

hexo new post "article title"

image

这时候在你的电脑的目录下:\hexo\source\ _posts将会看到article title.md文件 用MarDown编辑器打开就可以编辑文章了。文章编辑好之后,运行生成、部署命令:

hexo g // 生成
hexo d // 部署

当然你也可以执行下面的命令,相当于上面两条命令的效果

hexo g -d #在部署前先生成

image

部署成功后访问 你的地址,httpss://yourName.coding.me,将可以看到生成的文章。 踩坑提醒

  • 1)注意需要提前安装一个扩展:

npm install hexo-deployer-git --save

如果没有执行者行命令,将会提醒

deloyer not found:git

  • 2)如果出现下面这样的错误,

    Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.

则是因为没有设置好public key所致。

主题推荐

每个不同的主题会需要不同的配置,主题配置文件在主题目录下的_config.yml。有几个比较好的主题推荐给大家。Yilia 是为 hexo 2.4+制作的主题。 崇尚简约优雅,以及极致的性能。 image

Yilia地址 NexT 我的网站就是采用这个主题,简洁美观。 目前Github上Star最高的Hexo主题,支持几种不同的风格。 作者提供了非常完善的配置说明。

image

next地址 Pacman是一款为Hexo打造的一款扁平化,有着响应式设计的主题。 [图片上传失败...(image-5179ff-1546580871471)]

pacman地址

主题使用教程

Hexo 是高效的静态站点生成框架,她基于 Node.js。 通过 Hexo 你可以轻松地使用 Markdown 编写文章,除了 Markdown 本身的语法之外,还可以使用 Hexo 提供的 标签插件 来快速的插入特定形式的内容。在这篇文章中,假定你已经成功安装了 Hexo,并使用 Hexo 提供的命令创建了一个站点。 你可以访问 Hexo 的文档 了解如何安装 Hexo 在 Hexo 中有两份主要的配置文件,其名称都是 _config.yml。 其中,一份位于站点根目录下,主要包含 Hexo 本身的配置;另一份位于主题目录下,这份配置由主题作者提供,主要用于配置主题相关的选项。 为了描述方便,在以下说明中,将前者称为站点配置文件, 后者称为主题配置文件。

安装 NexT

Hexo 安装主题的方式非常简单,只需要将主题文件拷贝至站点目录的 themes 目录下, 然后修改下配置文件即可。具体到 NexT 来说,安装步骤如下。

下载主题

如果你熟悉 Git, 建议你使用 克隆最新版本 的方式,之后的更新可以通过 git pull 来快速更新, 而不用再次下载压缩包替换。

cd your-hexo-site git clone https://github.com/iissnan/hexo-theme-next themes/next</pre>

启用主题

与所有 Hexo 主题启用的模式一样。 当 克隆/下载 完成后,打开 站点配置文件, 找到 theme 字段,并将其值更改为 next。 启用 NexT 主题

theme: next</pre>

到此,NexT 主题安装完成。下一步我们将验证主题是否正确启用。在切换主题之后、验证之前, 我们最好使用 hexo clean 来清除 Hexo 的缓存。 注意 :这里以后的配置都需要在前面加上空格

验证主题

首先启动 Hexo 本地站点,并开启调试模式(即加上 --debug),整个命令是 hexo s --debug。 在服务启动的过程,注意观察命令行输出是否有任何异常信息,如果你碰到问题,这些信息将帮助他人更好的定位错误。 当命令行输出中提示出:

INFO Hexo is running at https://0.0.0.0:4000/. Press Ctrl+C to stop.

此时即可使用浏览器访问 https://localhost:4000,检查站点是否正确运行。 当你看到站点的外观与下图所示类似时即说明你已成功安装 NexT 主题。这是 NexT 默认的 Scheme —— Muse

image

现在,你已经成功安装并启用了 NexT 主题。下一步我们将要更改一些主题的设定,包括个性化以及集成第三方服务。

主题设定

选择 Scheme

Scheme 是 NexT 提供的一种特性,借助于 Scheme,NexT 为你提供多种不同的外观。同时,几乎所有的配置都可以 在 Scheme 之间共用。目前 NexT 支持三种 Scheme,他们是:

  • Muse - 默认 Scheme,这是 NexT 最初的版本,黑白主调,大量留白

  • Mist - Muse 的紧凑版本,整洁有序的单栏外观

  • Pisces - 双栏 Scheme,小家碧玉似的清新 Scheme 的切换通过更改 主题配置文件,搜索 scheme 关键字。 你会看到有三行 scheme 的配置,将你需用启用的 scheme 前面注释 # 去除即可。 选择 Pisces Scheme

scheme: Muse

scheme: Mist

scheme: Pisces</pre>

设置 语言

编辑 站点配置文件, 将 language 设置成你所需要的语言。建议明确设置你所需要的语言,例如选用简体中文,配置如下:

language: zh-Hans</pre>

目前 NexT 支持的语言如以下表格所示:

语言 代码 设定示例
English en language: en
简体中文 zh-Hans language: zh-Hans
Français fr-FR language: fr-FR
Português pt language: pt or language: pt-BR
繁體中文 zh-hk 或者 zh-tw language: zh-hk
Русский язык ru language: ru
Deutsch de language: de
日本語 ja language: ja
Indonesian id language: id
Korean ko language: ko
设置 菜单

菜单配置 包括三个部分,第一是菜单项(名称和链接),第二是菜单项的显示文本,第三是菜单项对应的图标。 NexT 使用的是 Font Awesome 提供的图标, Font Awesome 提供了 600+ 的图标,可以满足绝大的多数的场景,同时无须担心在 Retina 屏幕下 图标模糊的问题。 编辑 主题配置 文件,修改以下内容:

  1. 设定菜单内容,对应的字段是 menu。 菜单内容的设置格式是:item name: link。其中 item name是一个名称,这个名称并不直接显示在页面上,她将用于匹配图标以及翻译。 菜单示例配置

menu:
home: /
archives: /archives
#about: /about
#categories: /categories
tags: /tags
#commonweal: /404.html</pre>

若你的站点运行在子目录中,请将链接前缀的 `/` 去掉

NexT 默认的菜单项有(标注 的项表示需要手动创建这个页面):

| 键值 | 设定值 | 显示文本(简体中文) |
| --- | --- | --- |
| home | `home: /` | 主页 |
| archives | `archives: /archives` | 归档页 |
| categories | `categories: /categories` | 分类页 |
| tags | `tags: /tags` | 标签页 |
| about | `about: /about` | 关于页面 |
| commonweal | `commonweal: /404.html` | 公益 404 |
  1. 设置菜单项的显示文本。在第一步中设置的菜单的名称并不直接用于界面上的展示。Hexo 在生成的时候将使用 这个名称查找对应的语言翻译,并提取显示文本。这些翻译文本放置在 NexT 主题目录下的 languages/{language}.yml{language} 为你所使用的语言)。

    以简体中文为例,若你需要添加一个菜单项,比如 something。那么就需要修改简体中文对应的翻译文件languages/zh-Hans.yml,在 menu 字段下添加一项:

    <pre spellcheck="false" class="md-fences md-end-block ty-contain-cm modeLoaded" lang="" contenteditable="true" cid="n206" mdtype="fences" style="box-sizing: border-box; overflow: visible; font-family: var(--monospace); font-size: 0.9em; display: block; break-inside: avoid; text-align: left; white-space: normal; background-image: inherit; background-position: inherit; background-size: inherit; background-repeat: inherit; background-attachment: inherit; background-origin: inherit; background-clip: inherit; background-color: rgb(248, 248, 248); position: relative !important; border: 1px solid rgb(231, 234, 237); border-radius: 3px; padding: 8px 1em 6px; margin-bottom: 15px; margin-top: 15px; width: inherit;">menu:
    home: 首页
    archives: 归档
    categories: 分类
    tags: 标签
    about: 关于
    search: 搜索
    commonweal: 公益404
    something: 有料</pre>

  2. 设定菜单项的图标,对应的字段是 menu_icons。 此设定格式是 item name: icon name,其中 item name 与上一步所配置的菜单名字对应,icon name 是 Font Awesome 图标的 名字。而 enable 可用于控制是否显示图标,你可以设置成 false 来去掉图标。

    菜单图标配置示例

menu_icons:
enable: true
# Icon Mapping.
home: home
about: user
categories: th
tags: tags
archives: archive
commonweal: heartbeat</pre>

在菜单图标开启的情况下,如果菜单项与菜单未匹配(没有设置或者无效的 Font Awesome 图标名字) 的情况下,NexT 将会使用 作为图标。

请注意键值(如 `home`)的大小写要严格匹配
设置 侧栏

默认情况下,侧栏仅在文章页面(拥有目录列表)时才显示,并放置于右侧位置。 可以通过修改 主题配置 文件 中的 sidebar 字段来控制侧栏的行为。侧栏的设置包括两个部分,其一是侧栏的位置, 其二是侧栏显示的时机。

  1. 设置侧栏的位置,修改 sidebar.position 的值,支持的选项有:

    • left - 靠左放置

    • right - 靠右放置

    目前仅 Pisces Scheme 支持 position 配置。影响版本5.0.0及更低版本。

sidebar:
position: left</pre>

  1. 设置侧栏显示的时机,修改 sidebar.display 的值,支持的选项有:

    • post - 默认行为,在文章页面(拥有目录列表)时显示

    • always - 在所有页面中都显示

    • hide - 在所有页面中都隐藏(可以手动展开)

    • remove - 完全移除

sidebar:
display: post</pre>

已知侧栏在 `use motion: false` 的情况下不会展示。 影响版本5.0.0及更低版本。
设置 头像

编辑 主题配置 文件, 修改字段 avatar, 值设置成头像的链接地址。其中,头像的链接地址可以是:

地址
完整的互联网 URI https://example.com/avatar.png
站点内的地址 将头像放置主题目录下的 source/uploads/ (新建 uploads 目录若不存在) 配置为:avatar: /uploads/avatar.png或者 放置在 source/images/ 目录下 配置为:avatar: /images/avatar.png

头像设置示例

avatar: https://example.com/avatar.png</pre>

设置 作者昵称

编辑 站点配置 文件, 设置 author 为你的昵称。

站点描述

编辑 站点配置文件, 设置 description 字段为你的站点描述。站点描述可以是你喜欢的一句签名:)

其他主题的使用参见其他主题github中的readme部分。

参考文献

https://yangbingdong.com/2017/build-blog-hexo-base/#GitHub https://blog.csdn.net/i_am_tomato/article/details/70177019 https://blog.csdn.net/summer_zmc/article/details/55049906 https://coding.net/help/doc/project/creating-project.html https://www.lovebxm.com/2017/05/30/buildBlog/

https://theme-next.iissnan.com/getting-started.html

相关文章

网友评论

      本文标题:hexo+next教程(一)

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