1. Go to this page and download the library: Download pobo-builder/php-sdk library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
pobo-builder / php-sdk example snippets
use Pobo\Sdk\PoboClient;
$client = new PoboClient(apiToken: 'your-api-token');
use Pobo\Sdk\DTO\Parameter;
use Pobo\Sdk\DTO\ParameterValue;
$result = $client->importParameters([
new Parameter(id: 1, name: 'Color', values: [
new ParameterValue(id: 1, value: 'Red'),
new ParameterValue(id: 2, value: 'Blue'),
]),
]);
use Pobo\Sdk\DTO\Category;
use Pobo\Sdk\DTO\LocalizedString;
$result = $client->importCategories([
new Category(
id: 'CAT-001',
isVisible: true,
name: LocalizedString::create('Electronics'),
url: LocalizedString::create('https://example.com/electronics'),
),
]);
use Pobo\Sdk\DTO\Brand;
use Pobo\Sdk\DTO\LocalizedString;
$result = $client->importBrands([
new Brand(
id: 'BRAND-001',
isVisible: true,
name: LocalizedString::create('Apple'),
url: LocalizedString::create('https://example.com/znacky/apple'),
imagePreview: 'https://example.com/brands/apple-logo.png',
),
]);
use Pobo\Sdk\DTO\Product;
use Pobo\Sdk\DTO\LocalizedString;
$result = $client->importProducts([
new Product(
id: 'PROD-001',
isVisible: true,
name: LocalizedString::create('iPhone 15'),
url: LocalizedString::create('https://example.com/iphone-15'),
categoriesIds: ['CAT-001'],
parametersIds: [1, 2],
brandId: 'BRAND-001',
),
]);
if ($result->hasErrors()) {
foreach ($result->errors as $error) {
echo implode(', ', $error['errors']);
}
}
use Pobo\Sdk\DTO\Blog;
use Pobo\Sdk\DTO\LocalizedString;
$result = $client->importBlogs([
new Blog(
id: 'BLOG-001',
isVisible: true,
name: LocalizedString::create('New Product Launch'),
url: LocalizedString::create('https://example.com/blog/new-product'),
category: 'news',
),
]);
use Pobo\Sdk\DTO\Product;
use Pobo\Sdk\DTO\LocalizedString;
use Pobo\Sdk\Enum\Language;
new Product(
id: 'PROD-001',
isVisible: true,
name: LocalizedString::create('iPhone 15')
->withTranslation(Language::CS, 'iPhone 15 CZ')
->withTranslation(Language::SK, 'iPhone 15 SK'),
url: LocalizedString::create('https://example.com/iphone-15')
->withTranslation(Language::CS, 'https://example.com/cs/iphone-15')
->withTranslation(Language::SK, 'https://example.com/sk/iphone-15'),
shortDescription: LocalizedString::create('Latest iPhone model')
->withTranslation(Language::CS, 'Nejnovější model iPhone')
->withTranslation(Language::SK, 'Najnovší model iPhone'),
description: LocalizedString::create('<p>The best iPhone ever.</p>')
->withTranslation(Language::CS, '<p>Nejlepší iPhone vůbec.</p>')
->withTranslation(Language::SK, '<p>Najlepší iPhone vôbec.</p>'),
);
use Pobo\Sdk\Enum\Language;
// All 7 languages
$response = $client->getProducts(lang: [Language::ALL]);
// Specific languages
$response = $client->getProducts(lang: [Language::DEFAULT, Language::CS, Language::SK]);
foreach ($client->iterateProducts(lang: [Language::ALL]) as $product) {
echo $product->name->get(Language::CS);
echo $product->content?->getHtml(Language::CS);
}
use Pobo\Sdk\Enum\Language;
foreach ($client->iterateProducts(lang: [Language::ALL]) as $product) {
$product->name->getDefault(); // default value
$product->name->get(Language::CS); // Czech variant (or null)
$product->name->toArray(); // ['default' => '...', 'cs' => '...', ...]
// Same accessors on content / site_link / rich_snippet:
$product->content?->getHtml(Language::CS);
$product->content?->getMarketplace(Language::CS);
$product->siteLink?->getList(Language::CS);
$product->richSnippet?->getJson(Language::CS);
}