• Hugo 框架指引


    Hugo是由Go语言实现的静态网站生成器。简单、易用、高效、易扩展、快速部署。

    Quick start

    Hugo的安装使用便捷简单,参考官网Hugo quick start。以下主要介绍其基本概念和本项目开发流程。

    目录结构

        ├── archetypes
        ├── config.toml
        ├── content
        │   └── docs
        │       └── xx-doc
        │           └── x-doc
        ├── data
        ├── layouts
        ├── static
        └── themes
    

    archetypes

    在通过hugo new xxx 创建内容页面的时候,默认情况下hugo会创建date、title等front matter,可以通过在archetypes目录下创建文件,设置自定义的front matter。

    config.toml

    所有的hugo站点都有一个全局配置文件,用来配置整个站点的信息,hugo默认提供了跟多配置指令。

    content

    站点下所有的内容页面,也就是我们创建的md文件都在这个content目录下面。

    data

    data目录用来存储网站用到一些配置、数据文件。文件类型可以是yaml|toml|json等格式。

    layouts

    存放用来渲染content目录下面内容的模版文件,模版.html格式结尾,layouts可以同时存储在项目目录和themes//layouts目录下。

    static

    用来存储图片、css、js等静态资源文件。

    themes

    用来存储主题,主题可以方便的帮助我们快速建立站点,也可以方便的切换网站的风格样式。

    public

    hugo编译后生成网站的所有文件都存储在这里面,把这个目录放到任意web服务器就可以发布网站成功。

    Hugo 常用命令

    部署

    假设你需要部署在 GitHub Pages 上,首先在GitHub上创建一个Repository,命名为:coderzh.github.io (coderzh替换为你的github用户名)。

    在站点根目录执行 Hugo 命令生成最终页面:

    $ hugo --theme=hyde --baseUrl="http://coderzh.github.io/"
    

    (注意,以上命令并不会生成草稿页面,如果未生成任何文章,请去掉文章头部的 draft=true 再重新生成。)

    如果一切顺利,所有静态页面都会生成到 public 目录,将pubilc目录里所有文件 push 到刚创建的Repository的 master 分支。

    $ cd public
    $ git init
    $ git remote add origin https://github.com/coderzh/coderzh.github.io.git
    $ git add -A
    $ git commit -m "first commit"
    $ git push -u origin master
    

    浏览器里访问:http://coderzh.github.io/

    页面配置

    front matter

    用来配置文章的标题、时间、链接、分类等元信息,提供给模板调用

    +++
    title = "post title"
    description = "description."
    date = "2018-08-20"
    tags = [ "tag1", "tag2", "tag3"]
    categories = ["cat1","cat2"]
    weight = 20
    +++
    

    本文档项目开发流程及注意项