hexo教程

文章目录
  1. 1. 安装hexo(CentOS)
  2. 2. 插入图片
  3. 3. 修正搜索结果路径
  4. 4. 修改主页
  5. 5. 多个tags设置

安装hexo(CentOS)

  1. 安装git:sudo yum install git-core
  2. 安装 Node.js:
  3. 安装 Hexo:npm install -g hexo-cli

安装 Hexo 完成后,请执行下列命令,Hexo 将会在指定文件夹中新建所需要的文件。

1
2
3
hexo init <folder>
cd <folder>
npm install

生成静态网站命令

1
2
hexo clean
hexo g

插入图片

图片网址 http://hdfz.xyz/img/jpzmg/

配置文件 _config.yml

1
2
post_asset_folder: true
{% asset_img 强制下线.png 强制下线设置 %}

修正搜索结果路径

themes\Wikitten\layout\search\insight.ejs 里面加入变量 _URL: ‘<%= config.url %>’

1
2
3
4
5
6
7
8
9
10
11
12
var INSIGHT_CONFIG = {
TRANSLATION: {
POSTS: '<%= __("insight.posts") %>',
PAGES: '<%= __("insight.pages") %>',
CATEGORIES: '<%= __("insight.categories") %>',
TAGS: '<%= __("insight.tags") %>',
UNTITLED: '<%= __("insight.untitled") %>',
},
ROOT_URL: '<%= config.root %>',
_URL: '<%= config.url %>',
CONTENT_URL: '<%- url_for("/content.json")%>',
};

themes\Wikitten\source\js\insight.js 里修正url地址

1
2
3
4
5
6
function searchItem(icon, title, slug, preview, url) {
if (url.slice(0, 3) != "http") {
url = CONFIG._URL + url.replace("//", "/")
}
return $('<div>').addClass('ins-selectable').addClass('ins-search-item').append($('<header>').append($('<i>').addClass('fa').addClass('fa-' + icon)).append(title != null && title != '' ? title: CONFIG.TRANSLATION['UNTITLED']).append(slug ? $('<span>').addClass('ins-slug').text(slug) : null)).append(preview ? $('<p>').addClass('ins-search-preview').html(preview) : null).attr('data-url', url);
}

修改主页

主页代码:themes\Wikitten\layout\index.ejs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<% 
var indexArticle;
var index_file = theme.customize.default_index_file;
if(index_file) {
var query = {"source": `_posts/${index_file}`};
indexArticle = site.posts.find(query).first();
}
if(indexArticle) { %>
<%- partial('common/article', { post: indexArticle, index: false }) %>
<% } else {
page.posts.each(function(post) { %>
<%- partial('common/article', { post: post, index: false }) %>
<% });

} %>

修改主题配置文件 themes/Wikitten_config.yml里的default_index_file

相当于在 default_index_file 前面加上 _posts/

1
2
default_index_file: index.md              # index.md前面不要加斜杠,相当于:  _posts/index.md
default_index_file: 01.功能简介/功能简介.md #前面不要加斜杠,相当于: _posts/01.功能简介/功能简介.md

多个tags设置

这块配置都是使用yaml格式语法书写,yaml可以参考这篇完整YAML 语言教程 - 阮一峰的网络日志

总结下有两种格式都适用:

第一种:

1
2
3
tags: [ Ruby, Perl, Python ]

tags: [ 'Ruby', 'Perl', 'Python' ]

第二种:

1
2
3
tags:
-hexo
-disqus