WooCommerce Rest API: создание продукта с изображениями - PullRequest
0 голосов
/ 11 декабря 2018

Я пытаюсь добавить продукты, используя WooCommerce .Net Rest API.Все работает нормально, за исключением моих изображений.Я не уверен, как добавить их с помощью PHP.

Я получаю свои продукты из другого источника, который дает мне все изображения, разделенные запятой.Когда я получаю их, я делаю из них массив, подобный этому:

    $afbeeldingen = explode(",", $_POST['afbeeldingen']) ;

Для следующей части я потерян .. Я должен поместить URL-адреса изображений в массив 'images', какпоказано ниже.Я думал об использовании некоторого цикла foreach, но я не уверен, как заставить это работать.

$prod_data = [
    'name'              => $_POST['merk'] . ' ' . $_POST['model'] . ' ' . $_POST['type'],
    'type'              => 'simple',
    'sku'               => $_POST['voertuignr_hexon'],
    'regular_price'     => $_POST['verkoopprijs_particulier'],
    'description'       => $_POST['opmerkingen'],
    'images'            => [
        [
            'src' => image1
        ],
        [
            'src' => image2
        ]
    ]
];

Я был бы признателен за любую помощь, которую я могу получить с этим!

1 Ответ

0 голосов
/ 11 декабря 2018

Вам нужно перебрать каждый элемент afbeeldingen и создать массив для каждого с ключом src, а затем отправить их в другой массив, в котором хранятся все элементы src.Ниже код должен сделать это.

$images = array();
$size = count($afbeeldingen);
for ($i=0; $i < $size; $i++) { 
    $img = array("src" => $afbeeldingen[$i]);
    array_push($images, $img);
}

Вот альтернативный способ.Выберите, какие из них выполняют одну и ту же работу.

$images = array();
foreach ($afbeeldingen as $img) {
    array_push($images, array("src" => $img));
}

Используйте это для создания массива изображений.Затем установите значение изображения в prod_data для созданного массива изображений.

'images'        =>  $images
...