function product_imager_set_images() { check_ajax_referer('product_imager_nonce', 'security'); $product_id = isset($_POST['product_id']) ? intval($_POST['product_id']) : 0; $image_urls = isset($_POST['image_urls']) ? (array) $_POST['image_urls'] : []; if (empty($product_id)) { wp_send_json_error(['message' => __('Error: Product ID is missing.', 'product-imager')]); } if (empty($image_urls)) { wp_send_json_error(['message' => __('Error: No images were selected.', 'product-imager')]); } // Define the uploads directory for downloaded images $upload_dir = wp_upload_dir(); $product_images_dir = $upload_dir['basedir'] . '/productimages'; // Ensure the directory exists if (!file_exists($product_images_dir)) { if (!wp_mkdir_p($product_images_dir)) { error_log('Failed to create directory: ' . $product_images_dir); wp_send_json_error(['message' => __('Error: Failed to create the product images directory.', 'product-imager')]); } } $attachment_ids = []; foreach ($image_urls as $image_url) { // Validate URL if (!filter_var($image_url, FILTER_VALIDATE_URL)) { error_log('Invalid image URL: ' . $image_url); continue; // Skip invalid URLs } // Fetch the image content $response = wp_remote_get($image_url, ['timeout' => 30]); if (is_wp_error($response)) { error_log('Failed to fetch image: ' . $image_url . ' - ' . $response->get_error_message()); continue; } $image_body = wp_remote_retrieve_body($response); if (empty($image_body)) { error_log('Empty image body for URL: ' . $image_url); continue; } // Save the image locally $image_name = sanitize_file_name(basename(parse_url($image_url, PHP_URL_PATH))); $file_path = $product_images_dir . '/' . $image_name; if (file_put_contents($file_path, $image_body) === false) { error_log('Failed to save image: ' . $file_path); continue; } else { error_log('Image successfully saved to: ' . $file_path); } // Add the image to the WordPress Media Library $attachment_id = media_handle_sideload([ 'name' => $image_name, 'tmp_name' => $file_path, ], 0); if (is_wp_error($attachment_id)) { unlink($file_path); // Clean up on failure error_log('Failed to add image to media library: ' . $image_name . ' - ' . $attachment_id->get_error_message()); continue; } else { error_log('Image successfully added to media library with ID: ' . $attachment_id); } $attachment_ids[] = $attachment_id; } if (empty($attachment_ids)) { wp_send_json_error(['message' => __('Error: No images were successfully uploaded.', 'product-imager')]); } // Set the first image as the featured image set_post_thumbnail($product_id, $attachment_ids[0]); // Add additional images to the product gallery if (count($attachment_ids) > 1) { update_post_meta($product_id, '_product_image_gallery', implode(',', array_slice($attachment_ids, 1))); } wp_send_json_success(['message' => __('Product images updated successfully!', 'product-imager')]); } Heinz Relish Sweet Pickle Packets 200/Case – Horizon Foods – Wholesale Food Distributor
et-loader

Needing Assistance? Call Us: 443-402-1728

Heinz Relish Sweet Pickle Packets 200/Case

SKU:

$26.24

Available: 1
🔥 8 items sold in last 3 months
30 people are viewing this product in the last 3 months.
or
Secured Checkout: Pay safely with Visa Pay safely with Master Card Pay safely with PayPal Pay safely with American Express Pay safely with Maestro Pay safely with Bitcoin
Cash Discount on Pickup Eligible

Reviews

There are no reviews yet.

Only logged in customers who have purchased this product may leave a review.

Placeholder Heinz Relish Sweet Pickle Pack...

$26.24

1 in stock

Recent Products

Cash Discounting Available
Secure Payments
100% Satisfaction Guarantee!
Top-Notch Shopping

Recent Products

Account Menu
Account Menu
Address

704 Pulaski Hwy, Joppatowne, MD 21085

Information

Hotline: 443-402-1728
jennifer@horizonfoodstore.com

Follow Us

Cart