facebook/facebook-instant-articles-sdk-php

此包已 弃用 并不再维护。未建议替代包。

Facebook Instant Articles SDK for PHP


README

CircleCI Latest Stable Version

🚨 重要提示

⚠️ 从2023年4月20日起,Instant Articles将不再可用

所有相关开发者工具将被存档。

Facebook Instant Articles SDK for PHP提供了创建和发布Instant Articles的本地接口。该SDK使开发人员能够更容易地将Instant Articles集成到内容管理系统,从而使得记者和出版商能够轻松发布Instant Articles。

SDK由三个组件组成

  • 元素:一种特定领域的语言,用于创建严格遵循规范的Instant Articles结构,可以自动序列化为Instant Articles格式中使用的HTML5标记子集。这种语言允许用户以编程方式创建符合格式的Instant Articles。
  • 转换器:一种将任何标记转换为DSL中Instant Articles结构的引擎。该引擎在标记上运行一系列规则,这些规则将指定从CMS输出的元素的选择和转换,以它们的Instant Articles对应元素。转换器包含一套用于常见元素(如基本段落或图像)的基规则,这些规则可以通过使用SDK的开发人员进行扩展和定制。
  • 客户端:围绕Instant Articles API的简单包装,可用于在Facebook上发布Instant Articles。客户端为Instant Articles提供了CRUD接口以及认证助手。客户端依赖于主要的Facebook SDK for PHP,作为Graph API和Facebook登录的接口。

快速入门

可以通过在项目根目录中运行此命令,使用Composer依赖关系管理器安装Facebook Instant Articles PHP SDK:

$ composer require facebook/facebook-instant-articles-sdk-php

安装后,您可以在源代码中包含自动加载脚本

require_once 'vendor/autoload.php';

官方文档

您可以在文档的入门部分找到如何使用此SDK的不同组件的示例,以将其集成到您的CMS中。

贡献

克隆存储库

$ git clone https://github.com/facebook/facebook-instant-articles-sdk-php.git

Composer是测试和开发的先决条件。 全局安装Composer,然后在项目的根目录中运行此命令以安装项目依赖项

$ composer install

运行测试

$ composer test

修复并检查编码风格问题

$ composer cs

更偷懒?运行

$ composer all

修复并检查编码风格问题,然后运行测试。

如果您更改结构、路径、命名空间等,请确保您运行了自动加载生成器

$ composer dump-autoload

为了接受您的贡献,您必须首先签署贡献者许可协议。请参阅CONTRIBUTING以获取详细信息。

使用Docker进行测试

我们提供了一个Docker环境,以确保测试和开发环境的一致性。

使用docker-compose run composer composer install开始。

故障排除

如果您遇到问题,以下提示可能有助于故障排除

  • 使用$transformer->getWarnings()方法可以查看Transformer的警告。

  • 如果您的转换文章中缺少内容,则很可能没有匹配您源标记中元素的转换器规则。请参阅转换器规则文档了解如何为您的内容配置适当的规则。

  • 将转换器Logger级别的threshold设置为DEBUG以显示Transformer处理的项的更多详细信息。TransformerLog::setLevel(TransformerLog::DEBUG);

  • 参考现有的Elements测试,了解每个元素的必要要求,并可能创建自己的测试(可以使用$ composer test运行)。

许可证

有关更多信息,请参阅许可证文件

法律