# 前言

在过去,Web 内容是简单的静态 HTML,CSS 和 JavaScript 页面,其中的内容是手动更改的。 随着网络的发展和普及,一些 CMS 需要普通用户轻松管理网站内容。 CMS 提供了一种实用的方法来创建和运行网站,而无需了解任何编码或技术细节。

CMS 是 Content Management System 的缩写,意为"内容管理系统"。内容管理系统(CMS)的基本思想是分离内容的管理和设计。页面设计存储在模板里,而内容存储在数据库或独立的文件中。

SiteServer CMS 是 .NET 平台下最强大的企业级开源免费 CMS 内容管理系统和网站群系统,能够以最低的成本、最少的人力投入在最短的时间内架设一个功能齐全、性能优异、规模庞大并易于维护的网站平台。

SiteServer CMS 支持管理员权限逐级分配,支持三种维度的分配方式,分别是按站点分配、按操作权限分配(删除,审核,修改,添加等)和按管理的栏目分配。实现了非常灵活的细粒度的、可扩展的、支持用户二次开发扩展的权限控制体系。

# 快速上手

建议第一步,看完 SiteServer 文档中心 V6 版本文档的产品介绍

建议第二步,通过下载在线模板,亲身体验下模板建站的魅力 新手入门

建议第三步,快速浏览《STL语言参考手册》。如有疑问,可在官方git主页的issues区 issues 或百度贴吧siteserver吧 、官方QQ群(186949124) 寻求答案

# SiteServer CMS常用术语

# 站点

通俗意义上的网站,包括网站栏目结构、网站内容数据、网站模板文件、CSS、JS以及最终生成的网站所有页面;

# 栏目

  • 存放站点内容的地方,站点内容必须发布在某个具体的栏目下;
  • 对于 SiteServer CMS 后台来说,相同分类的站点内容般来说会发布在一个栏目下,所以栏目还可以叫做站点内容的分类;
  • 对于前台网页来说,栏目也可以叫做网站的频道或者菜单。 栏目可以包含子栏目,SiteServer CMS 可以建立无限级栏目;

# 内容

  • SiteServer CMS后台管理的最终数据,通常来说指的就是网站文章;
  • SiteServer CMS不仅仅用于建网站,可以用来管理一切可结构化的数据,所以这里的内容是不固定的,可能是采购动态、通知公告、招聘信息等;

# STL语言

  • STL 语言全称称为 SiteServer 模版语言(SiteServer Template Language),是一种用来制作模版的服务器端语言;
  • STL 语言由百容千域创建,用于结合 STL 自有属性按需调取数据库表中数据的特殊标记代码,具有和 HTML 类似的语法和规则;

# 用户中心

  • 指的是网站普通用户在前台登录成功之后用户可以进行个性化资料设置以及投稿等其他功能的集合地,这也是属于前台的一部分;

# 页面生成

  • SiteServer CMS 解析引擎从数据库表里提取出相关内容,然后利用这些内容替换模板里的相应 STL 标签,最终生成静态页面文件的过程叫做页面生成;

# 模板

TIP

一种带 SiteServer CMS STL 标签的 html 文件,通过模板可以生成所有栏目及其内容的前台页面。 CMS 后台管理的内容按一定的表现形式组织起来形成前台页面的一种技术。模板决定后台内容显示到前台页面后的效果。页面一般分成网站首页、栏目页、内容页以及单页,同理模板也就对应分别有首页模板、栏目模板、内容模板以及单页模板。

# 模板作用

  • 决定前台页面显示哪些后台数据;
  • 决定前台页面的风格、样式等表现形式;
  • 多条内容采用相同的模板可以产生表现形式类似的多个静态页面,如果需要调整页面的表形形式,只需要统一调整模板即可。

以栏目模板为例,假设后台两个栏目下有内容,如下图所示: 栏目列表

两个不同的栏目匹配了同一个栏目模板,最后产生的两个网站页面分别如下图

协会动态

政策法规

# 模板嵌套

TIP

模板嵌套的过程其实就是把之前静态页面中的静态文本替换STL标签的过程。 替换成了 STL 标签,就意味着这个位置的内容是从数据库里读取数据的,从而实现了 SiteServer CMS 系统后台发布数据存储在数据库中,再通过标签调取显示到网站前台页面上的效果。 嵌套好的模板是一个 HTML 夹杂 STL 标签的页面。

如图: 模板嵌套

# 自定义字段

  • 系统提供的基础字段并不完全满足用户需求,因此需要额外新增字段,用户新增的字段就是自定义字段。
  • 不同类型的内容可以用不同的内容模型,每种内容模型可以有自己模型不同的字段
  • 可通过通过<stl:value>标签调用: <stl:value type="xxx"></stl:value>; 或者通过实体标签{stl.}调用: {stl.xxx}

# 数据字典

系统在不断进行更新的同时,系统数据字典可能会有所变化,《STL语言参考手册》也存在字段未及时更新的情况,为了更灵活地使用标签,查阅SiteServer CMS 数据机构参考手册可找到新的玩法和解决问题的思路 《数据结构参考手册》

# REST API

《SiteServer REST API参考手册》

  • SiteServer REST API 为 SiteServer CMS 提供了一个基于 HTTP 的 API 调用,允许开发者通过发送和接收 JSON 对象来远程与站点进行交互。
  • 当向 API 发送内容或请求时,响应将以 JSON 形式返回,这使开发人员能够从客户端 JavaScript 或外部应用程序创建、读取和更新 SiteServer CMS 内容,REST API 可以使用任何编程语言进行调用。