我考虑使用GitHub Pages来实现一个博客,我有点重新发明轮子。我从头开始构建我的网站,我不想使用Jekyll,因为它看起来似乎无法集成到具有您自己主题的现有网站中(如果我'我错了)。我想要以下功能:
我正在考虑静态和动态解决方案。静态解决方案是编写一个python脚本,以文本格式读取我的博客,并通过向博客html页面添加更多html来更新博客页面以包含这篇新文章。动态解决方案将让我的博客页面从github存储库中获取文章并将它们集成到我的博客中。这也允许按需获取更多文章(例如,当用户向下滚动我的页面时)。这是一个荒谬的过度复杂还是作为一个小项目做这个有意义吗?任何意见将不胜感激!
答案 0 :(得分:1)
几年前我写了一个静态网站生成器作为Grunt插件,所以我可以在这里提供一些好的建议。
静态站点生成器会将源文件(通常是Markdown或类似的帖子以及您选择的模板语言中的页面和模板的格式)转换为平面HTML,然后可以将其推送到服务器。它还可能包含用于将其推送到托管站点的位置的脚本。如果你想在Python中做到这一点,那么有很多适当的模块 - Jinja将是一个很好的例子,一个合适的模板系统,有几个Markdown实现,如果你需要语法高亮,Pygments是一个可靠的选择
实际上可以在客户端进行搜索。我的网站使用Lunr.js - 在构建过程中它为搜索生成一个索引文件,然后使用jQuery与页面的其余部分一起加载。
在没有服务器端脚本的情况下也应该可以进行无限滚动,因为它只是使用Javascript获取相同的内容。保罗爱尔兰的无限滚动插件已不再维护,但从理论上说它能够做到这一点并且可能存在替代方案。
您可能想查看article I wrote about it的想法。静态解决方案对我来说效果很好 - 托管起来便宜且易于部署。如果需要,您可以使用Disqus或Facebook评论。
一个简单的静态站点生成器是一个实用的周末项目,它应该是实现你想要的一个好方法。