kylewlawrence / gravity-forms-laravel

Laravel 对 kylewlawrence/gravity-forms-api-client-php 包的封装

dev-main 2023-04-20 15:41 UTC

This package is auto-updated.

Last update: 2024-09-20 18:42:09 UTC


README

此包提供了与 GForms API 的集成。它支持创建表单、检索和更新条目、发送通知等。

该包仅提供了一个 GForms 门面,该门面作为 kylewlawrence/gravity-forms-api-client-php 包的包装器。

注意:当前仅支持基于 bearer token 的身份验证。

安装

您可以通过 Composer 使用以下命令安装此包:

composer require kylewlawrence/gravity-forms-laravel

门面会自动安装,别名是 GForms

配置

要发布配置文件到 app/config/gravity-forms-laravel.php,请运行:

php artisan vendor:publish --provider="KyleWLawrence\GForms\Providers\GFormsServiceProvider"

使用 环境变量 设置您的配置,可以在您的 .env 文件或服务器的控制面板中设置

  • GF_USERNAME

API 用户名。您可以在 Gravity Forms 设置中创建一个

  • GF_PASSWORD

API 密码。

  • GF_DOMAIN

带有 Gravity Forms 的网站域名和路径。只需传递域名和路径,而不是协议。对于 https://forms.example.com,应传递 forms.example.com

  • GF_DRIVER (可选)

将其设置为 nulllog 以防止直接从您的环境中调用 GForms API。

贡献

如果您对 SDK(GFormsService 类)有任何问题/问题/请求,请访问 GForms PHP SDK 存储库 并提出这些请求。Laravel 封装器的 Pull Requests 总是受欢迎。我很快就会跟进并制定贡献指南。在此期间,只需打开问题或创建 pull request。

使用方法

门面

GForms 门面作为 GForms\API\Client 类的实例的包装器。此类上可用的任何方法(此处有文档)都可通过门面访问。例如

// Get all forms
$forms = $client->forms()->getAll();
print_r($forms);

// Create a new form
$newForm = $client->forms()->create([
    'title' => 'Blah Blah',                          
    'fields' => [
        {
            'id' : '1',
            'label' : 'My Text',
            'type' : 'text'
        },
        {
            'id' : '2',
            'label' : 'More Text',
            'type' : 'text'
        }
    ],
]);
print_r($newForm);

// Delete a form
$client->forms()->delete(12345);

依赖注入

如果您不想使用门面,您可以直接在 config/app.php 中添加别名,而不是注入 KyleWLawrence\GForms\Services\GFormsService 到您的类中。然后您可以使用与此对象相同的所有方法,就像使用门面一样。

<?php

use KyleWLawrence\GForms\Services\GFormsService;

class MyClass {

    public function __construct(GFormsService $gforms_service) {
        $this->gforms_service = $gforms_service;
    }

    public function getSite() {
        $this->gforms_service->site()->get(12345);
    }

}

版权和许可

版权 2023 年至今 KyleWLawrence

根据 Apache License 2.0(“许可”)许可;除非遵守许可,否则不得使用此文件。您可以在以下位置获得许可证副本:

https://apache.ac.cn/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则根据许可分发的软件按“原样”基础分发,不提供任何明示或暗示的保证或条件。有关许可的具体语言规定权限和限制,请参阅许可。