Schema 结构化数据
自动为 1CMS 网站前台页面注入 Schema.org 结构化数据(JSON-LD),提升搜索引擎对网站内容的理解,改善 SEO 与搜索结果富摘要展示。
功能特性
- ✅ 16 种 Schema 类型:文章/新闻、产品、博客、网页、活动、食谱、课程、图书、电影、餐厅、招聘、FAQ、软件、视频、组织机构等
- ✅ WebSite Schema:首页站点信息,含搜索框 Schema(SearchAction)
- ✅ Organization Schema:组织/机构信息,含联系方式、地址、社交媒体
- ✅ 字段映射:为每个栏目单独配置 Schema 类型与字段对应关系
- ✅ Open Graph 标签:社媒分享卡片(微信/微博/Facebook/Twitter 等)
- ✅ 时间因子标签:百度/谷歌/头条/360/搜狗时间因子
- ✅ 面包屑 Schema:BreadcrumbList 结构化数据
- ✅ 可视化配置:全部在后台图形化配置,无需写代码
安装与启用
- 将
schema目录放入网站app/目录(即app/schema/) - 登录后台,进入「应用管理」
- 找到「Schema结构化数据」应用,点击「安装」
- 安装完成后点击「启用」
- 启用后点击应用「设置」按钮配置网站信息
使用指南
第一步:配置全局网站信息
进入「应用管理 → Schema结构化数据 → 设置」,分四个 Tab 配置:
| Tab | 配置内容 |
|---|---|
| 基础设置 | 启用插件、语言标识、OG标签开关、时间因子开关、面包屑开关、JSON格式化 |
| WebSite Schema | 网站名称、描述、URL、Logo、搜索框 Schema |
| Organization Schema | 组织名称、描述、URL、Logo、电话、邮箱、地址信息 |
| 社交媒体 | 8 个社交平台链接(LinkedIn/Facebook/Instagram/Twitter/YouTube/微博/微信/GitHub) |
说明:网站名称、URL、Logo 留空时,系统自动从首页栏目获取。
第二步:为栏目配置 Schema 类型
进入「Schema结构化数据 → 模型映射」:
- 在栏目列表中找到目标栏目(如「文章」「产品」)
- 点击「字段映射」
- 在「Schema类型」下拉中选择对应类型(如文章栏目选
文章/新闻 (Article)) - 点击「应用预设字段」自动填入推荐映射
- 根据实际情况调整「对应栏目字段」与「回调函数」
- 点击「保存配置」
字段映射说明
每个 Schema 字段可配置:
- 对应栏目字段:从该栏目文章字段中选择(如标题字段
title、内容字段content) - 回调函数:对字段值做转换处理(留空表示不处理),如:
date:时间戳转 ISO8601- 其他 PHP 内置函数
- 启用:开关某字段的映射
工作原理
插件通过 1CMS 的 cms:ob_content 钩子拦截整页输出:
- 检测当前页面类型(首页/栏目页/文章页)
- 根据页面类型与配置生成对应的 JSON-LD
- 在页面
</head>标签前注入:<script type="application/ld+json">结构化数据<meta property="og:*">Open Graph 标签(可选)<meta>时间因子标签(可选)
后台与 Ajax 请求自动跳过,不影响后台性能。
Schema 类型对照表
| 标识 | 名称 | 适用栏目 |
|---|---|---|
| article | 文章/新闻 (Article) | 文章、新闻、资讯栏目 |
| product | 产品 (Product) | 产品展示栏目 |
| blog | 博客 (BlogPosting) | 博客文章 |
| webpage | 网页 (WebPage) | 单页、自定义页 |
| event | 活动/事件 (Event) | 活动栏目 |
| organization | 组织/机构 (Organization) | 公司介绍 |
| recipe | 食谱 (Recipe) | 菜谱栏目 |
| course | 课程 (Course) | 教育培训 |
| book | 图书 (Book) | 图书栏目 |
| movie | 电影 (Movie) | 影视频道 |
| restaurant | 餐厅 (Restaurant) | 餐饮商家 |
| jobposting | 招聘 (JobPosting) | 招聘信息 |
| faq | 常见问题 (FAQPage) | FAQ 问答 |
| software | 软件 (SoftwareApplication) | 软件下载 |
| video | 视频 (VideoObject) | 视频栏目 |
页面类型与输出
| 页面类型 | 检测方式 | 输出内容 |
|---|---|---|
| 首页 | 栏目 fid=0 且路由为 channel | WebSite + Organization Schema |
| 文章详情页 | 命中文章(存在 article 数据) | 按栏目配置的 Schema 类型 |
| 栏目/列表页 | 其他前台页面 | WebPage 或 CollectionPage Schema |
常见问题
安装后前台没有输出 Schema?
- 检查「基础设置 → 启用插件」是否开启
- 检查网站是否已安装并启用模板应用(前台需可访问)
- 用浏览器查看页面源码,搜索
application/ld+json
文章页 Schema 字段为空?
在「模型映射」中为该栏目配置字段映射,确保「对应栏目字段」选择了正确的文章字段。
如何验证 Schema 是否正确?
使用 Google Rich Results Test 工具验证:
https://search.google.com/test/rich-results
输入页面地址即可检测 Schema 结构化数据是否符合规范。
数据表
插件创建以下数据表(卸载时自动删除):
schema_mapping:栏目/模型的 Schema 类型与字段映射配置schema_presets:Schema 类型预设字段定义(安装时自动写入)
钩子
| 钩子 | 方法 | 作用 |
|---|---|---|
cms:ob_content |
schema:injectSchema |
拦截页面输出,注入 Schema 与 meta 标签 |
技术支持
- 1CMS 官网:https://1cms.com/
- 应用详情:https://1cms.com/app/schema/