szeidler / pageplanner-php-sdk
Pageplanner PHP SDK
1.0.0
2019-05-16 10:58 UTC
Requires
- php: >=7.0
- guzzlehttp/guzzle: ^6.3
- guzzlehttp/guzzle-services: ^1.1
- kamermans/guzzle-oauth2-subscriber: ^1.0
- psr/http-message: ^1.0
Requires (Dev)
- phpunit/phpunit: ^5.7
This package is auto-updated.
Last update: 2025-02-17 01:22:29 UTC
README
Pagelanner PHP SDK utilizes guzzle-services for an easy integration with Pageplanner's API.
Requirements
- PHP 7.0 or greater
- Composer
- Guzzle
Installation
Add Pageplanner PHP SDK as a composer dependency.
composer require szeidler/pageplanner-php-sdk:^1.0
Usage
Returns the asset representation based on the resource url of the asset.
use szeidler\Pageplanner\PageplannerClient; $client = new PageplannerClient([ 'baseUrl' => 'https://preportal.pageplanner.no/api-demo/api/', 'access_token_url' => 'https://login.microsoftonline.com/pageplannersolutions.com/oauth2/token', 'client_id' => 'xxxxxx-xxxxxxxxxxxx', 'client_secret' => '123456', ]); // Get all issues. $issues = $client->getIssues(); foreach ($issues->getIterator() as $issue) { print $issue['name']; } // Get a issue by id. $issue = $client->getIssue(['id' => 2]); print $issue->offsetGet('name'); // Get all publications. $publications = $client->getPublications(); foreach ($publications->getIterator() as $publication) { print $publication['name']; } // Get a single publication by id. $publications = $client->getPublications(['id' => 2]); print $publication->offsetGet('name'); print $publication->offsetGet('publicationCode'); // Get all stories for an issue. $stories = $client->getStories(['issueId' => 5]); foreach ($stories->getIterator() as $story) { print $story['name']; } // Get a single story by id. $story = $client->getStory(['id' => 123]); print $story->offsetGet('name'); print $story->offsetGet('author'); // Create a story for an issue. $data = [ 'id' => 'abcd', 'title' => [ 'value' => 'My new title', 'isHtml' => FALSE, ], 'abstract' => [ 'value' => 'Put your abstract here', 'isHtml' => FALSE, ], 'body' => [ 'value' => '<strong>Your body could include HTML</strong>', 'isHtml' => TRUE, ], 'tags' => ['News', 'Culture'], ]; $story = $client->createStory($data); print $story->offsetGet['name'];
Testing
This SDK includes PHPUnit as a composer require-dev
. Copy the phpunit.xml.dist
to phpunit.xml
and fill in with
your API testing credentials.
./vendor/bin/phpunit -c phpunit.xml
Credits
Stephan Zeidler for Ramsalt Lab AS
License
The MIT License (MIT)