在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:akeneo/api-php-client开源软件地址:https://github.com/akeneo/api-php-client开源编程语言:PHP 99.5%开源软件介绍:PHP Akeneo PIM APIA simple PHP client to use the Akeneo PIM API. Matrix compatibility:
Note that our PHP client is backward compatible. For example, if your PIM is currently a v2.3, you can still use a 1.0 version of the PHP client. The new endpoints available in v2.3 will not be available in the v1.0 of the PHP client. Requirements
InstallationWe use HTTPPlug as the HTTP client abstraction layer. In this example, we will use Guzzle v6 as the HTTP client implementation.
$ curl -s http://getcomposer.org/installer | php Then, run the following command to require the library: $ php composer.phar require akeneo/api-php-client php-http/guzzle6-adapter:^2.0 http-interop/http-factory-guzzle:^1.0 If you want to use another HTTP client implementation, you can check here the full list of HTTP client implementations. DocumentationFull documentation is available on the API website. Getting startedInitialise the clientYou first need to initialise the client with your credentials client id/secret and with your user/password. If you don't have any client id, let's take a look at this page to create it. <?php
require_once __DIR__ . '/vendor/autoload.php';
$clientBuilder = new \Akeneo\Pim\ApiClient\AkeneoPimClientBuilder('http://localhost/');
$client = $clientBuilder->buildAuthenticatedByPassword('client_id', 'secret', 'admin', 'admin'); You can authenticate to the client with your token/refresh token as well. $client = $clientBuilder->buildAuthenticatedByToken('client_id', 'secret', 'token', 'refresh_token'); Getting the token and refresh token is as simple as: $client->getToken();
$client->getRefreshToken(); If you are developing an App, authenticate with your app token. $client = $clientBuilder->buildAuthenticatedByAppToken('app_token'); Get a product$product = $client->getProductApi()->get('top');
echo $product['identifier']; // display "top" Get a list of productsBy getting pages$searchBuilder = new \Akeneo\Pim\ApiClient\Search\SearchBuilder();
$searchBuilder->addFilter('enabled', '=', true);
$searchFilters = $searchBuilder->getFilters();
$firstPage = $client->getProductApi()->listPerPage(50, true, ['search' => $searchFilters]);
echo $firstPage->getCount();
foreach ($firstPage->getItems() as $product) {
// do your stuff here
echo $product['identifier'];
}
$nextPage = $firstPage->getNextPage();
$firstPage = $nextPage->getPreviousPage(); By getting a cursor$searchBuilder = new \Akeneo\Pim\ApiClient\Search\SearchBuilder();
$searchBuilder->addFilter('enabled', '=', true);
$searchFilters = $searchBuilder->getFilters();
$products = $client->getProductApi()->all(50, ['search' => $searchFilters]);
foreach ($products as $product) {
// do your stuff here
echo $product['identifier'];
} Create a product$client->getProductApi()->create('top', ['enabled' => true]); Upsert a product$client->getProductApi()->upsert('top', ['family' => 'tshirt']); Upsert a list of of products$client->getProductApi()->upsertList([
[
'identifier' => 'top',
'family' => 'tshirt',
],
[
'identifier' => 'cap',
'categories' => ['hat'],
],
]); TestingDo note that you have to delete the # Build the project
make dependencies
# Run PHPUnit tests
make unit
# Run PHPSpec tests
make spec
# Run code style check
make cs
# ... or directly run all tests
make tests SupportThe support of this client is made in best effort by our Akeneo team. If you find a bug or want to submit an improvement, don't hesitate to raise an issue on Github. Also, you can ask questions and discuss about the PHP client with the community in the Slack User Group. ContributingAs this PHP client is an open-source project, all contributions are very welcome! For more information, please consult the contributing section |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论