Anthony L.
Anthony L.

Reputation: 101

Parsing array values to WooCommerce REST API

I'm trying to create a new product with multiple images using WooCommerce REST API

Here is the REST API syntax for images src: https://woocommerce.github.io/woocommerce-rest-api-docs/#create-a-product

'images' => [
    [
        'src' => 'http://demo.woothemes.com/woocommerce/wp-content/uploads/sites/56/2013/06/T_2_front.jpg'
    ],
    [
        'src' => 'http://demo.woothemes.com/woocommerce/wp-content/uploads/sites/56/2013/06/T_2_back.jpg'
    ]
]

Now on PHP I have images URLs in an array $images like this:

Array
(
    [0] => https://images-na.ssl-images-amazon.com/images/I/61imqvdVv1L._SL1000_.jpg
    [1] => https://images-na.ssl-images-amazon.com/images/I/61CpVDq9iwL._SL1000_.jpg
    [2] => https://images-na.ssl-images-amazon.com/images/I/61IMXxbcfpL._SL1000_.jpg
    [3] => https://images-na.ssl-images-amazon.com/images/I/61HFUejnppL._SL1000_.jpg
    [4] => https://images-na.ssl-images-amazon.com/images/I/51whKF45l0L._SL1000_.jpg
    [5] => https://images-na.ssl-images-amazon.com/images/I/51uPvXbo3IL._SL1000_.jpg
    [6] => https://images-na.ssl-images-amazon.com/images/I/61sNz9zDalL._SL1000_.jpg
    [7] => https://images-na.ssl-images-amazon.com/images/I/51oytt8fP5L._SL1000_.jpg
    [8] => https://images-na.ssl-images-amazon.com/images/I/61Qarg%2BmjrL._SL1000_.jpg
)

I'm trying to figure out how to put $images array to the REST API but still stuck.

Any helps would be much appreciated!

Upvotes: 1

Views: 449

Answers (1)

devpro
devpro

Reputation: 16117

You can just create a new array with index images like:

$yourImageArray = array(
    'https://images-na.ssl-images-amazon.com/images/I/61imqvdVv1L._SL1000_.jpg',
    'https://images-na.ssl-images-amazon.com/images/I/61CpVDq9iwL._SL1000_.jpg',
    'https://images-na.ssl-images-amazon.com/images/I/61IMXxbcfpL._SL1000_.jpg',
    'https://images-na.ssl-images-amazon.com/images/I/61HFUejnppL._SL1000_.jpg',
    'https://images-na.ssl-images-amazon.com/images/I/51whKF45l0L._SL1000_.jpg',
    'https://images-na.ssl-images-amazon.com/images/I/51uPvXbo3IL._SL1000_.jpg',
    'https://images-na.ssl-images-amazon.com/images/I/61sNz9zDalL._SL1000_.jpg',
    'https://images-na.ssl-images-amazon.com/images/I/51oytt8fP5L._SL1000_.jpg',
    'https://images-na.ssl-images-amazon.com/images/I/61Qarg%2BmjrL._SL1000_.jpg'
);

$newArray = array();
foreach($yourImageArray as $key => $val){
    $newArray['images'][$key] = array('src'=>$val);
}

echo "<pre>";
print_r($newArray);

DEMO

Upvotes: 1

Related Questions