渲染目标

  • 实现SEO优化的需要
  • 静态文件提升页面访问性能

渲染理念:动静结合

  • 静态部分:首页、所有文章、站点地图文件
  • 动态部分:目录分类清单、标签清单、搜索、评论、点赞、文章阅读量统计,等等

通过动静结合,达到SEO优化系统灵活性之间的有机平衡

渲染时机

为了平衡渲染性能,提供了两个渲染时机:整站构建文章单独渲染

整站构建

CMS配置页面,点击构建按钮,一次性渲染并输出站点所有文件

什么情况需要整站构建?

  • 可能会影响整体页面的所有变动:如目录变更配置变更

文章单独渲染

当发布文章时,即时渲染文章和首页

为什么要渲染首页?

  • 为了SEO优化的需要,一般而言,首页也要渲染成html静态文件。又因为首页往往会包含最新发表的文章信息,所以,在渲染文章的同时也要渲染首页,从而始终保证首页处于最新状态

SEO相关

SEO文件有三个:robots.txtsitemapindex.xmlsitemap.xml

SEO文件均会在整站构建时一次性输出,并且在文章单独渲染时自动更新

目录、标签、搜索

由于静态部分完成了SEO优化的所有使命。所以,目录标签搜索等场景下的文章清单,没必要提前渲染,只需在页面打开时通过ajax调用后端API获取清单并动态显示

CMS、主题、插件

模块a-cms只提供了基本的渲染机制和渲染骨架,具体的页面布局、元素、功能,都通过主题插件的组合实现。这种模式,既可以快速开发部署,也可以充分释放CMS的可扩展性和灵活性

Cabloy-CMS目前提供了主题模块cms-themeblogcms-themeawscms-themedocs和插件模块cms-pluginbasecms-pluginarticlecms-pluginsidebarcms-pluginmarkdowngithubcms-plugintrack,实现了全功能的博客站点,后续也会持续推出一系列主题插件

您可以自由组合主题插件,甚至实现自己的主题插件,呈现完全不同的站点效果

生态与贡献

也希望您能分享您的智慧与成果,加入到CabloyJS的生态中来