nypl / schemabuilder
SchemaBuilder
0.1.1
2016-06-09 18:50 UTC
Requires
- danielstjules/stringy: 2.3.2
Requires (Dev)
- phpunit/phpunit: 4.8.9
This package is not auto-updated.
Last update: 2024-09-14 19:25:59 UTC
README
一个简单的库,用于生成 Schema.org。
质量
安装
此库需要 PHP 5.4 或更高版本。
建议您使用 Composer 安装此库。
依赖项
SchemaBuilder 依赖于并需要以下依赖项
danielstjules/stringy- 一个 PHP 字符串操作库。
入门指南
构建 Schema.org 对象
首先,使用对象的 类型 实例化您的 Schema.org 主对象。
例如,要创建一个 Book
<?php $book = new NYPL\SchemaBuilder\Schema('Book');
然后,使用属性 名称 和 值 设置对象的属性
<?php $book->addProperty('name', 'Le concerto'); $book->addProperty('author', 'Ferchault, Guy');
属性也可以包含其他 Schema.org 对象
<?php // First, build the Offer object $offer = new Schema('Offer'); $offer->addProperty('availability', 'http://schema.org/InStock'); $offer->addProperty('serialNumber', 'CONC91000937'); // Then, set the "offers" property on the Book object with the Offer object $book->addProperty('offers', $offer);
以 JSON-LD 格式输出 Schema.org
当您完成 Schema.org 对象的构建后,以 JSON-LD 格式输出它
<head>
...
<?php $book->outputJsonLd();
以 Microdata 格式输出 Schema.org
当您完成 Schema.org 对象的构建后,您可以通过两种方式输出
1. 仅属性
要输出不带 HTML 包装的内容,请使用带有或不带有属性名称的 outputMicrodata 方法。
// Output an Object
<div <?php $book->outputMicrodata(); ?> itemid="#record">
// Output an Object's property
<h1 <?php $book->outputMicrodata('name'); ?>><?php $book->outputProperty('name'); ?></h1>
如果您没有指定属性名称,将生成描述主对象的微数据。
输出
<div itemscope itemtype="http://schema.org/Book" itemid="#record"> <h1 itemprop="name">Le concerto</h1>
2. 包装属性
要带有一个带有 HTML 包装的属性输出,请指定属性名称和您想要使用的包装器。
<?php $book->outputMicrodata('additionalType', 'link'); ?>
<?php $book->outputMicrodata('name', 'h3'); ?>
输出
<link itemprop="additionalType" href="http://schema.org/Product"> <h3 itemprop="name">Le concerto</h3>
测试
从项目目录中,可以使用 phpunit 运行测试。