devoux Posted November 8, 2014 Share Posted November 8, 2014 Hi!I want insert a new product with unique ID to my shop (example 99999), but the webservice doesn't care about it what I send to it.The code what I use: <?php ini_set('display_errors', 'on'); define('DEBUG', true); define('PS_SHOP_PATH', 'XXXXXXX'); define('PS_WS_AUTH_KEY', 'XXXXXXXXX'); require_once('PSWebServiceLibrary.php'); $webService = new PrestaShopWebservice(PS_SHOP_PATH, PS_WS_AUTH_KEY, DEBUG); function PS_new_product($n_id_category_default, $n_id_category, $n_price, $n_active,$n_avail4order,$n_show_price, $n_id_stock_availables ,$n_id_id_product_attribute, $n_l_id, $n_name, $n_desc, $n_desc_short, $n_link_rewrite, $n_meta_title, $n_meta_description, $n_meta_keywords,$n_available_now,$n_available_later) { global $webService; $xml = $webService -> get(array('url' => PS_SHOP_PATH . '/api/products?schema=blank')); $resources = $xml -> children() -> children(); //unset($resources -> id); unset($resources -> position); unset($resources -> id_shop_default); unset($resources -> date_add); unset($resources -> date_upd); unset($resources->associations->combinations); unset($resources->associations->product_options_values); unset($resources->associations->product_features); unset($resources->associations->stock_availables->stock_available->id_product_attribute); //unset($resources->associations->categories->category->id); //unset($resources-> id_category_default); //$resources->position_in_category = '0'; //unset($resources->position_in_category); //$resources -> position = '0'; $resources-> id = 999999; $resources-> id_manufacturer = '1'; $resources-> id_supplier = '1'; $resources-> id_category_default = $n_id_category_default; $resources-> new = '0'; ; //condition, new is also a php keyword!! $resources-> cache_default_attribute; $resources-> id_default_image; $resources-> id_default_combination = '0'; $resources-> id_tax_rules_group ='1'; //$resources-> id_shop_default; $resources-> reference; $resources-> supplier_reference; $resources-> location; $resources-> width; $resources-> height; $resources-> depth; $resources-> weight; $resources-> quantity_discount; $resources-> ean13; $resources-> upc; $resources-> cache_is_pack; $resources-> cache_has_attachments; $resources-> is_virtual; $resources-> on_sale; $resources-> online_only; $resources-> ecotax; $resources-> minimal_quantity = 1; $resources-> price = $n_price; $resources-> wholesale_price = $n_price-10; $resources-> wholesale_price; $resources-> unity; $resources-> unit_price_ratio; $resources-> additional_shipping_cost; $resources-> customizable; $resources-> text_fields; $resources-> uploadable_files; $resources-> active = $n_active; $resources-> available_for_order = $n_avail4order; $resources-> available_date; $resources-> condition; $resources-> show_price = $n_show_price; $resources-> indexed = '1'; $resources-> visibility = 'both'; $resources-> advanced_stock_management='0'; $resources-> date_add; $resources-> date_upd; $resources->associations->categories->addChild('category')->addChild('id', $n_id_category); $node = dom_import_simplexml($resources -> name -> language[0][0]); $no = $node -> ownerDocument; $node -> appendChild($no -> createCDATASection($n_name)); $resources -> name -> language[0][0] = $n_name; $resources -> name -> language[0][0]['id'] = $n_l_id; $resources -> name -> language[0][0]['xlink:href'] = PS_SHOP_PATH . '/api/languages/' . $n_l_id; $node = dom_import_simplexml($resources -> description -> language[0][0]); $no = $node -> ownerDocument; $node -> appendChild($no -> createCDATASection($n_desc)); $resources -> description -> language[0][0] = $n_desc; $resources -> description -> language[0][0]['id'] = $n_l_id; $resources -> description -> language[0][0]['xlink:href'] = PS_SHOP_PATH . '/api/languages/' . $n_l_id; $node = dom_import_simplexml($resources -> description_short -> language[0][0]); $no = $node -> ownerDocument; $node -> appendChild($no -> createCDATASection($n_desc_short)); $resources -> description_short -> language[0][0] = $n_desc_short; $resources -> description_short -> language[0][0]['id'] = $n_l_id; $resources -> description_short -> language[0][0]['xlink:href'] = PS_SHOP_PATH . '/api/languages/' . $n_l_id; $node = dom_import_simplexml($resources -> link_rewrite -> language[0][0]); $no = $node -> ownerDocument; $node -> appendChild($no -> createCDATASection($n_link_rewrite)); $resources -> link_rewrite -> language[0][0] = $n_link_rewrite; $resources -> link_rewrite -> language[0][0]['id'] = $n_l_id; $resources -> link_rewrite -> language[0][0]['xlink:href'] = PS_SHOP_PATH . '/api/languages/' . $n_l_id; $node = dom_import_simplexml($resources -> meta_title -> language[0][0]); $no = $node -> ownerDocument; $node -> appendChild($no -> createCDATASection($n_meta_title)); $resources -> meta_title -> language[0][0] = $n_meta_title; $resources -> meta_title -> language[0][0]['id'] = $n_l_id; $resources -> meta_title -> language[0][0]['xlink:href'] = PS_SHOP_PATH . '/api/languages/' . $n_l_id; $node = dom_import_simplexml($resources -> meta_description -> language[0][0]); $no = $node -> ownerDocument; $node -> appendChild($no -> createCDATASection($n_meta_description)); $resources -> meta_description -> language[0][0] = $n_meta_description; $resources -> meta_description -> language[0][0]['id'] = $n_l_id; $resources -> meta_description -> language[0][0]['xlink:href'] = PS_SHOP_PATH . '/api/languages/' . $n_l_id; $node = dom_import_simplexml($resources -> meta_keywords -> language[0][0]); $no = $node -> ownerDocument; $node -> appendChild($no -> createCDATASection($n_meta_keywords)); $resources -> meta_keywords -> language[0][0] = $n_meta_keywords; $resources -> meta_keywords -> language[0][0]['id'] = $n_l_id; $resources -> meta_keywords -> language[0][0]['xlink:href'] = PS_SHOP_PATH . '/api/languages/' . $n_l_id; $node = dom_import_simplexml($resources -> available_now -> language[0][0]); $no = $node -> ownerDocument; $node -> appendChild($no -> createCDATASection($n_available_now)); $resources -> available_now -> language[0][0] = $n_available_now; $resources -> available_now -> language[0][0]['id'] = $n_l_id; $resources -> available_now -> language[0][0]['xlink:href'] = PS_SHOP_PATH . '/api/languages/' . $n_l_id; $node = dom_import_simplexml($resources -> available_later -> language[0][0]); $no = $node -> ownerDocument; $node -> appendChild($no -> createCDATASection($n_available_later)); $resources -> available_later -> language[0][0] = $n_available_later; $resources -> available_later -> language[0][0]['id'] = $n_l_id; $resources -> available_later -> language[0][0]['xlink:href'] = PS_SHOP_PATH . '/api/languages/' . $n_l_id; try { $opt = array('resource' => 'products'); $opt['postXml'] = $xml -> asXML(); $xml = $webService -> add($opt); } catch (PrestaShopWebserviceException $ex) { echo '<b>Error : '.$ex->getMessage().'</b>'; // my log function } } // simple use $n_name = 'New product name3'; $n_desc = 'New product description LONG'; $n_desc_short = 'New product description SHORT'; $n_link_rewrite = 'someone_rewrite'; $n_meta_title = 'meta-title'; $n_meta_description = 'meta desc'; $n_meta_keywords = 'some,one,keywords'; $n_available_now = 'Available for order'; $n_available_later = 'Available from gg/mm/yy'; $n_id_category_default = '9'; $n_id_category = '9'; $n_price = '144.65'; $n_active = '1'; $n_avail4order = '1'; $n_show_price ='1'; $n_l_id = '1'; $n_id_stock_availables = '22'; $n_id_id_product_attribute = '0'; // run PS_new_product($n_id_category_default, $n_id_category, $n_price, $n_active,$n_avail4order,$n_show_price, $n_id_stock_availables ,$n_id_id_product_attribute, $n_l_id, $n_name, $n_desc, $n_desc_short, $n_link_rewrite, $n_meta_title, $n_meta_description, $n_meta_keywords,$n_available_now,$n_available_later); ?> Anyone can help to me? Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now