Functionsby Zeeshan
Functionsby Zeeshan
$data = [];
foreach($attribute as $key => $att){
$data[] = [
'attributes' => ['pack' => $att->PackDesc],
'stock' => $att->quantity,
'price' => $att->price,
];
}
return $data;
}
global $wpdb;
$city = $_COOKIE['city'];
$area = $_COOKIE['area_name'];
$query = $wpdb->get_results("SELECT distinct p.item_id from product as p join price
as pp on p.item_id=pp.item_id join City as c on c.CityCode=pp.CityCode
join pack as pa on pp.PackDesc=pa.id join inventory as i on
i.PackDesc=pa.id AND i.item_id=p.item_id where pp.CityCode='" . $city . "' AND
i.area_id = '".$area."'");
$variation = [];
$items = [];
// $available_attributes = [];
$attributes = [];
foreach($query as $key => $_data){
$item_id = $_data->item_id;
$attributes = attributes_test($query_pack) ;
$items[] = [
'item_name' => $query_pack[0]->item_name,
'sku'=> $query_pack[0]->item_id,
'available_attributes' => 'Pack',
'variations' => $attributes
];
// }
// $product = wc_get_product($item_id);
//var_dump($query);
}
$json = json_encode($items);
$products_data = json_decode($json, true);
$_COOKIE["attributes"] = $attributes;
//var_dump($products_data);
/**
* Create a product variation for a defined variable product ID.
*
* @since 3.0.0
* @param int $product_id | Post ID of the product parent variable product.
* @param array $variation_data | The data to insert in the product.
*/
$variation_post = array(
'post_title' => $product->get_name(),
'post_name' => 'product-'.$product_id.'-variation',
'post_status' => 'publish',
'post_parent' => $product_id,
'post_type' => 'product_variation',
'guid' => $product->get_permalink()
);
// Get the post Terms names from the parent variable product.
$post_term_names = wp_get_post_terms( $product_id, $taxonomy,
array('fields' => 'names') );
// Check if the post term exist and if not we set it in the parent variable
product.
if( ! in_array( $term_name["attributes"]["pack"], $post_term_names ) )
wp_set_post_terms( $product_id, $term_name["attributes"]["pack"],
$taxonomy, true );
// SKU
if( ! empty( $variation_data['sku'] ) )
$variation->set_sku( $variation_data['sku'] );
// Prices
if( empty( $variation_data['sale_price'] ) ){
$variation->set_price( $variation_data['regular_price'] );
} else {
$variation->set_price( $variation_data['sale_price'] );
$variation->set_sale_price( $variation_data['sale_price'] );
}
$variation->set_regular_price( $variation_data['regular_price'] );
// Stock
if( ! empty($variation_data['stock_qty']) ){
$variation->set_stock_quantity( $variation_data['stock_qty'] );
$variation->set_manage_stock(true);
$variation->set_stock_status('');
} else {
$variation->set_manage_stock(false);
}
$variation->set_weight('');
$variation->save();
}
// insert_products($products_data);
function insert_product($product_data)
{
$post = array( // Set up the basic post data to insert for our product
'post_author' => 1,
'post_content' => $product_data['item_name'],
'post_status' => 'publish',
'post_title' => $product_data['item_name'],
'post_parent' => '',
'post_type' => 'product'
);
// var_dump($post);
$post_id = wp_insert_post($post);
// var_dump($post_id);
if (!$post_id)
{
return false;
}
create_product_variation($post_id,$products_data);
//insert_product_attributes($post_id, $product_data['available_attributes'],
$product_data['variations']);
//insert_product_variations($post_id, $product_data['variations']);
}
// // var_dump($available_attributes);
// foreach ($available_attributes as $attribute)
// {
// // var_dump($variations);
// $values = array();
// // var_dump($values);
// }
// }
// }
// $values = array_unique($values);
// // var_dump($values);
// wp_set_object_terms($post_id, $values, 'pa_' . $attribute);
// }
// $product_attributes_data = array();
// );
// }
// }
// $variation_post_id = wp_insert_post($variation_post);
// }