nordsoftware / lumen-contentful
A Lumen service provider for Contentful
Installs: 38 971
Dependents: 1
Suggesters: 0
Security: 0
Stars: 1
Watchers: 7
Forks: 2
Open Issues: 0
Requires
- php: >= 7.0
- contentful/contentful: ^4.1
- illuminate/support: ^5.0|^6.0
Requires (Dev)
- laravel/lumen-framework: ^5.4|^6.0
- phpunit/phpunit: ^6.1
README
This is a basic Lumen service provider for the Contentful PHP SDK. Version 1.x of this library is compatible with version 2.x of the SDK, while version 2.x of this library is compatible with version 3.x of the SDK. Starting from version 4.x the library version follows the SDK version, so version 4.x of this library is compatible with version 4.x of the SDK.
Requirements
- PHP >= 7.0
- Lumen 5.x
Installation
Install the library:
composer require nordsoftware/lumen-contentful
Register the service provider:
$app->register(Nord\Lumen\Contentful\ContentfulServiceProvider::class);
Finally, copy config/contentful.php
to your application's config/
directory, then define the environment variables
in your .env
file. Certain more esoteric options cannot be configured through the configuration file, see the Usage
section for more information.
Usage
Inject Nord\Lumen\Contentful\ContentfulServiceContract
into your classes, then you'll be able to access the
Contentful client by using the getClient()
method:
<?php use Nord\Lumen\Contentful\ContentfulServiceContract; class TestService { public function __construct(ContentfulServiceContract $contentfulService) { $client = $contentfulService->getClient(); } }
Advanced usage
The Contentful SDK client takes a ClientOption
parameter that controls various behavior such as which API to use,
caching and so on. If you need to deviate from the default options you will have to extend ContentfulServiceProvider
and override the createClientOptions
method. Make sure to also register your custom service provider instead of the
one from the library.
If you need need to use a custom client completely, override createClient
.