我的名字是 Shazma Siddiqui。我是 Raipur 国家信息技术学院的计算机应用硕士二年级学生。我是 GSoC’22 的学生贡献者,我正在从事 “Schema.org” 项目。
关于项目
在当今时代,数据对于搜索引擎来说是一个新的大事情,但是网页爬虫可能难以有效地解释数据的上下文。为了提供更好的搜索结果,网页爬虫需要了解数据的上下文,并且为了更好地理解数据,使用了结构化数据。结构化数据是符合数据模型、具有明确定义的结构、遵循一致顺序并且可以轻松被个人或计算机程序访问和使用的数据。搜索引擎使用结构化数据生成丰富的片段,这些是将在搜索结果中显示的小块信息,使搜索结果更加相关。
目前 Joomla! 已经实现了丰富的片段,但它使用内联微数据来实现丰富的片段,这从后端修改起来很困难,因为它被硬编码到 html 中。在这个项目中,我将致力于使用户能够从后端动态集成结构化数据变得更加容易。
项目计划
为了动态集成结构化数据,我将使用 schema.org,它提供了一个在 Web 上构建数据的通用识别格式。实现 schema 标记的方法有很多,但在这个项目中,我将使用 JSON-LD,因为它可以插入到网页中而不会干扰其他内容或 HTML,并且易于在数据库中存储。这个项目将帮助用户在文章的后端添加、更新或删除 schema 标记。它将使用户有一个选项,从可用的 schema 类型中选择类型,然后在表单中插入 schema 属性的属性值。
进度
PR 草稿: https://github.com/joomla-projects/gsoc22_schema.org/pull/2
截至目前,我已经创建了一个基本的com_schemaorg组件。在未来,可以通过com_schemaorg插件组的插件来添加不同类型的schema。我创建了一个系统插件,它将在文章编辑视图中添加一个Schema表单,该表单包含一个表单项‘Schema类型’。默认情况下,Schema类型被选为无。这个系统插件将导入其他plg_schemaorg_xxx插件,并将表单数据以JSON格式存储,以创建schema标记。然后,这个schema标记将被注入到文章前端头部元素中。
文章编辑视图中的Schema表单
使用plg_system_schema插件将Schema表单添加到文章编辑视图中。
Schema类型被选为‘无’。
选择schema类型后显示的子表单
为了添加schema类型,我创建了一个com_schemaorg插件,plg_schemaorg_recipe。这个插件将在现有的schema类型列表中添加一个选项。
选择‘Recipe’为schema类型后,Recipe schema类型的所有其他属性都将显示。
导师
- Rishabh Ranjan Jha
- Anurag Kumar
- Benjamin Trenkle
- Tushar Malik
项目目标
与plg_schemaorg_recipe插件类似,我将创建多个插件来处理不同类型的schemas。这些插件将通过系统插件导入。从现有的表单字段中获取数据,创建JSON LD格式的schema标记,并将其最终注入到文章的头部标签中。