Skip to content

Instantly share code, notes, and snippets.

@crswll
Last active December 14, 2015 00:39
Show Gist options
  • Save crswll/5000214 to your computer and use it in GitHub Desktop.
Save crswll/5000214 to your computer and use it in GitHub Desktop.
Quick script for Sean to get those remote images...
<?php
function get_product_images($url, $product_number, $sku)
{
if( empty($product_number) || empty($sku) || empty($url) ) return false;
$return = array(
'MediaItem1' => '',
'MediaItem2' => '',
'MediaItem3' => '',
'MediaItem4' => ''
);
$get = array(
'count' => 5,
'keyword' => $sku,
'category' => 'all',
'echo' => array(
'productNumber',
'sku',
'images[0].storeMediaItem.small',
'images[0].storeMediaItem.medium',
'images[0].storeMediaItem.large',
'images[1].storeMediaItem.small',
'images[1].storeMediaItem.medium',
'images[1].storeMediaItem.large',
'images[2].storeMediaItem.small',
'images[2].storeMediaItem.medium',
'images[2].storeMediaItem.large',
'images[3].storeMediaItem.small',
'images[3].storeMediaItem.medium',
'images[3].storeMediaItem.large',
)
);
$request = $url . '?' . preg_replace('/echo%5B\d+%5D/', 'echo', http_build_query($get));
$response = json_decode(str_replace('/* no-timeout */', '', file_get_contents($request)), true);
$results = $response['echo']['results'];
if( ! empty($results))
{
foreach($results as $result)
{
if( $result['productNumber'] == $product_number )
{
$images = array();
for( $i = 0; $i < 3; $i++ )
{
$small = $result["images[{$i}].storeMediaItem.small"];
$medium = $result["images[{$i}].storeMediaItem.medium"];
$large = $result["images[{$i}].storeMediaItem.large"];
if( ! empty($large))
{
$image = $large;
}
else if ( ! empty($medium))
{
$image = $medium;
}
else if ( ! empty($small))
{
$image = $small;
}
else
{
$image = false;
}
if($image) $return['MediaItem' . ($i + 1) ] = $image;
}
}
}
}
return $return;
}
$images = get_product_images('http://www.thealleychicago.com/servlet/Products', '344','ALLEY 17');
$product_row = array(
'ProductNumber' => 344,
'SKU' => 'ALLEY 17'
);
$merge = array_merge($product_row, get_product_images('http://www.thealleychicago.com/servlet/Products', '344','ALLEY 17'));
echo '<pre>';
print_r($merge);
echo '</pre>';
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment