hexo能“个性化”html模板页面吗?

如题详述:我们知道hexo+github搭建的博客网站,里面的文章页面,应该都是由统一的.html模板生成的。但问题是,因为个性洁癖,我想修改这个模板文件,比如说:加一段js html css,让其能在所有的博客网站文章页生效。请问应该在哪里修改?

如果可以的话:我也更希望能理解一点hexo+github的整套流程,比如:

  • 静态页面的.html模板文件是谁?

  • _posts下的.md文件怎么生成public文件夹下的.html文件?

  • 经过hexo d怎么在.deploy_git下生成和public文件夹里一样的文件?

  • 以及整个博客网站怎么运行上面这一切的?

注:纯文字描述,可能不太好懂,但希望懂我的的朋友来个回复,静候您的佳音、、、

阅读 4.4k
2 个回答

是想改全局的设置是么?以默认的 landscape 主题为例,全局的 HTML 模板是
hexo-theme-landscape/layout/layout.ejs
把引用的 CSS, JS 文件通过 hexo 提供的 css(), js() 函数放到这里就好。
CSS 的全局文件是:
hexo-theme-landscape/source/css/style.styl
在这里写你的全局 CSS 就好(其实 hexo 的 CSS 是没有局部作用域的,写到别的地方也可以,不过不推荐)
JS 的文件在:
hexo-theme-landscape/source/js/
这个文件夹下,你可以新建一个 script.js 编写,至于
hexo-theme-landscape/scripts/
这个文件夹下面是放钩子函数的


请你看看你的题目和你的描述相符么?

不管怎么说,我先把你的问题回答了:

  • 静态页面的 .html 模板文件是谁?我不知道你指的是不是 public 文件夹下的,如果是的话,是 theme 主题的那一套模板,根据情况选择相应的模板

  • _posts 下的 .md 文件怎么生成 public 文件夹下的 .html 文件?会有一个 markdown 的解析过程,生成相应的 HTML 片段,然后应用到主题的模板上

  • 经过 hexo d 怎么在 .deploy_git 下生成和 public 文件夹里一样的文件?这相当于 hexo 对 Git 加了语法糖,hexo d 会把生成的静态网站提交到本地仓库并 push 到远端

  • 以及整个博客网站怎么运行上面这一切的? 整个博客就像我说的那样运行

我不知道是你的表达能力有问题还是我的理解能力有问题,一开始说要改模板,现在又要了解 hexo 的渲染流程,模板渲染这种东西本身就不是三言两语能说清的,更何况 hexo 又支持那么多功能,看你的问题我不认为你现在能接受这些知识,我建议你还是先去打好基础吧

一般情况:
如果修改主题样式可以去themes文件夹中所用主题处修改,比如默认的landscape是
themes/landscape/source/css, themes/landscape/source/js

一般都是用了css预处理器,然后按模块分的样式文件,比如archive.styl可以在对应的文件中修改

另外你可以结合chorme控制台进行查看。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题