grav
Grav 介绍
Grav 是一个支持多主题和多插件的 Markdown CMS。可应用于个人博客、小型内容发布平台、帮助文档平台、单页产品展示。
Grav 商业模式
http://getgrav.org 免费提供 CMS 和各类插件主题,培养生态;http://trilby.media 负责提供 Grav 咨询、功能定制、主题定制、插件定制、数据迁移等收费服务。这里值得注意的是,两个站完全分开,getgrav 免费开源,trilby.media 收费服务,清清楚楚,用户也不会有被欺骗的感觉。试想一下,如果两个站融为一个,给用户的感觉要尴尬得多。
Grav 架构特点
Grav 的初心是做一个不依赖数据库的 Flat CMS,所以选择 Markdown 作为内容载体。
但 Markdown 原生用途是写文档, Grav 的野心却超越了文档/博客(几乎所有 CMS 都有这个倾向),它还可以支持单页站、全文搜索、shortcode,甚至购物车。为了达到这个目的,它必须通过某种方式实现功能的组合。 Grav 通过下面几个途径达成这个目标:
- markdown 文档的 header (又称 frontmatter)中记录格式化的元数据
- grav core 提供自动解析 header 的功能
- theme 渲染 header 数据
- plugin 提供动态功能组件,如搜索、发短信、留言等等,供 theme 调用
Grav 适用范围
Grav 特别适用于个人博客、单页站,文档帮助系统只能说勉强还可以,知识管理系统很不合适。
如果你准备用 Grav 做知识管理系统,需要留个心。Grav 组织文件的方式比较特别,和普通的 Markdown 系统不同。每个页面并不是一个 markdown 文本文件,而是由一个目录和里面的 markdown 文件组成,且 markdown 文件的名字不能随意命名,而是要命名成主题里面规定的名字。 例如,假设你有一个 load_balance.md 文件,把它迁移到 Grav 后,会长成这样:
03.load_balance/docs.md
03 是表示这篇文章在目录中的顺序,docs 表示使用 docs.twig.html 模板来渲染 docs.md 里的文本内容。
显然,这种方式对于知识管理(KM)系统来说很不合适。作为对比,不妨看看 gitbook 定义的组织方式,对 KM 系统更友好。
相关阅读
安卓布局——layout_gravity和gravity的用法
原文链接:http://www.cnblogs.com/xiaoran1129/archive/2013/03/26/2982733.html相信对于Android的初学者来说,大家都曾经被layout
前天“小宇博客”也建议我取消Gravatar头像,他认为这个功能的实际应用意义已经不大了,一篇文章三百多评论,头像加载起来太