Jump to content

[SOLUCIONADO]productos creados por WS se activan en distintas categorias


fred1roca

Recommended Posts

en la tabla ps_category_product     es donde los productos se pueden vincular con distintas categorias

si creo un producto (POST) este se me distribuye en  muchas categorías  pero si después lo edito (PUT)  este se borra de las demás categorías y solo se queda en la default 

pero  alguien me podrian ayudar, como controlo que desde  el post solo este en la categoría default

<?php
                            $resources->id;
                            $resources->id_manufacturer;
                            $resources->id_supplier;

                            $id_cat = $consultaSql

                            if ($id_cat == null) {
                                $id_cat = 1;
                            }
                            $resources->id_category_default = $id_cat;
                            $resources->new;
                            $resources->cache_default_attribute;
                            $resources->id_default_image = 1; 
                            $resources->id_default_combination;
                            $resources->id_tax_rules_group;
                            $resources->position_in_category;
                            $resources->type;
                            $resources->id_shop_default;
                            $refe = $key['articulo']['categoria']['departamento']['nombre'];
                            if ($refe == "") {
                                $refe = "Sin Referencia";
                            }
                            $resources->reference = $refe;
                            $resources->supplier_reference;
                            $resources->location;
                            $resources->width;
                            $resources->height;
                            $resources->depth;
                            $we = $key['articulo']['peso'];
                            if ($we == '') {
                                $we = 0;
                            }
                            $resources->weight = $we;
                            $resources->quantity_discount;
                            $resources->ean13;
                            $resources->upc;
                            $resources->cache_is_pack;
                            $resources->cache_has_attachments;
                            $resources->is_virtual;
                            $resources->state = 1;
                            $resources->on_sale;
                            $resources->online_only;
                            $resources->ecotax;
                            $resources->minimal_quantity = 1;
                            $prices = $key['articulo']['precio1'];
                            $impuesto = $key['articulo']['impuestoList'][0]['impuesto'];
                         
                            $price = $prices * (($impuesto / 100) + 1);
                            $resources->price = $price;
                            $resources->wholesale_price;
                            $resources->unity;
                            $resources->unit_price_ratio;
                            $resources->additional_shipping_cost;
                            $resources->customizable;
                            $resources->text_fields;
                            $resources->uploadable_files;
                            $resources->active = 1;
                            $resources->redirect_type;
                            $resources->id_product_redirected;
                            $resources->available_for_order = 1;
                            $resources->available_date;
                            $resources->condition;
                            $resources->show_price = 1;
                            $resources->indexed;
                            $resources->visibility;
                            $resources->advanced_stock_management;
                            $resources->date_add = $date['year'] . '-' . $date['mon'] . '-' . $date['mday'] . ' ' . $date['hours'] . ':' . $date['minutes'] . ':' . $date['seconds'];
                            $resources->date_upd = $date['year'] . '-' . $date['mon'] . '-' . $date['mday'] . ' ' . $date['hours'] . ':' . $date['minutes'] . ':' . $date['seconds'];
                            $resources->pack_stock_type = 3;
                            $node = dom_import_simplexml($resources->meta_description->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata meta description"));
                            $resources->meta_description->language[0][0] = "meta description";
                            $resources->meta_description->language[0][0]['id'] = 1;
                            $resources->meta_description->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $node = dom_import_simplexml($resources->meta_keywords->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata meta keywords"));
                            $resources->meta_keywords->language[0][0] = "meta keywords1, keywords2, keywords3";
                            $resources->meta_keywords->language[0][0]['id'] = 1;
                            $resources->meta_keywords->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $node = dom_import_simplexml($resources->meta_title->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata meta title"));
                            $resources->meta_title->language[0][0] = "meta title";
                            $resources->meta_title->language[0][0]['id'] = 1;
                            $resources->meta_title->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $node = dom_import_simplexml($resources->link_rewrite->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata link_rewrite"));
                            $resources->link_rewrite->language[0][0] = "link-rewrite";
                            $resources->link_rewrite->language[0][0]['id'] = 1;
                            $resources->link_rewrite->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $node = dom_import_simplexml($resources->name->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata name"));
                            $names = (string)$key['articulo']['descripcion'];
                            $resources->name->language[0][0] = $names;
                            $resources->name->language[0][0]['id'] = 1;
                            $resources->name->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $descrip = '' . "<p><span style=\"font-size:10pt;font-family:Arial;font-style:normal;\"> " . $key['articulo']['caracteristicas'] . " </span></p>";
                            $node = dom_import_simplexml($resources->description->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata description"));
                            $resources->description->language[0][0] = $descrip;
                            $resources->description->language[0][0]['id'] = 1;
                            $resources->description->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $descrip_sh = '' . "<p><span style=\"font-size:10pt;font-family:Arial;font-style:normal;\"> " . $key['articulo']['clave'] . " </span></p>";
                            $node = dom_import_simplexml($resources->description_short->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata description_short"));
                            $resources->description_short->language[0][0] = $descrip_sh;
                            $resources->description_short->language[0][0]['id'] = 1;
                            $resources->description_short->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $node = dom_import_simplexml($resources->available_now->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata In stock"));
                            $resources->available_now->language[0][0] = "In stock";
                            $resources->available_now->language[0][0]['id'] = 1;
                            $resources->available_now->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $node = dom_import_simplexml($resources->available_later->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata available_later"));
                            $resources->available_later->language[0][0] = "available_later";
                            $resources->available_later->language[0][0]['id'] = 1;
                            $resources->available_later->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';
                            $resources->associations->categories->addChild('category')->addChild('id', 2);
                            $resources->associations->categories->addChild('category')->addChild('id', $id_cat);

                            $opt = array('resource' => 'products');
                            $opt['postXml'] = $xml->asXML();
                            $xml_request = $webService->add($opt);

en si mi código es el mismo tanto en  la función put y post no encuentro cambio alguno en el código solo los métodos de ejecución 

Edited by fred1roca (see edit history)
Link to comment
Share on other sites

On 2/20/2019 at 5:21 PM, fred1roca said:

en la tabla ps_category_product     es donde los productos se pueden vincular con distintas categorias

si creo un producto (POST) este se me distribuye en  muchas categorías  pero si después lo edito (PUT)  este se borra de las demás categorías y solo se queda en la default 

pero  alguien me podrian ayudar, como controlo que desde  el post solo este en la categoría default


<?php
                            $resources->id;
                            $resources->id_manufacturer;
                            $resources->id_supplier;

                            $id_cat = $consultaSql

                            if ($id_cat == null) {
                                $id_cat = 1;
                            }
                            $resources->id_category_default = $id_cat;
                            $resources->new;
                            $resources->cache_default_attribute;
                            $resources->id_default_image = 1; 
                            $resources->id_default_combination;
                            $resources->id_tax_rules_group;
                            $resources->position_in_category;
                            $resources->type;
                            $resources->id_shop_default;
                            $refe = $key['articulo']['categoria']['departamento']['nombre'];
                            if ($refe == "") {
                                $refe = "Sin Referencia";
                            }
                            $resources->reference = $refe;
                            $resources->supplier_reference;
                            $resources->location;
                            $resources->width;
                            $resources->height;
                            $resources->depth;
                            $we = $key['articulo']['peso'];
                            if ($we == '') {
                                $we = 0;
                            }
                            $resources->weight = $we;
                            $resources->quantity_discount;
                            $resources->ean13;
                            $resources->upc;
                            $resources->cache_is_pack;
                            $resources->cache_has_attachments;
                            $resources->is_virtual;
                            $resources->state = 1;
                            $resources->on_sale;
                            $resources->online_only;
                            $resources->ecotax;
                            $resources->minimal_quantity = 1;
                            $prices = $key['articulo']['precio1'];
                            $impuesto = $key['articulo']['impuestoList'][0]['impuesto'];
                         
                            $price = $prices * (($impuesto / 100) + 1);
                            $resources->price = $price;
                            $resources->wholesale_price;
                            $resources->unity;
                            $resources->unit_price_ratio;
                            $resources->additional_shipping_cost;
                            $resources->customizable;
                            $resources->text_fields;
                            $resources->uploadable_files;
                            $resources->active = 1;
                            $resources->redirect_type;
                            $resources->id_product_redirected;
                            $resources->available_for_order = 1;
                            $resources->available_date;
                            $resources->condition;
                            $resources->show_price = 1;
                            $resources->indexed;
                            $resources->visibility;
                            $resources->advanced_stock_management;
                            $resources->date_add = $date['year'] . '-' . $date['mon'] . '-' . $date['mday'] . ' ' . $date['hours'] . ':' . $date['minutes'] . ':' . $date['seconds'];
                            $resources->date_upd = $date['year'] . '-' . $date['mon'] . '-' . $date['mday'] . ' ' . $date['hours'] . ':' . $date['minutes'] . ':' . $date['seconds'];
                            $resources->pack_stock_type = 3;
                            $node = dom_import_simplexml($resources->meta_description->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata meta description"));
                            $resources->meta_description->language[0][0] = "meta description";
                            $resources->meta_description->language[0][0]['id'] = 1;
                            $resources->meta_description->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $node = dom_import_simplexml($resources->meta_keywords->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata meta keywords"));
                            $resources->meta_keywords->language[0][0] = "meta keywords1, keywords2, keywords3";
                            $resources->meta_keywords->language[0][0]['id'] = 1;
                            $resources->meta_keywords->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $node = dom_import_simplexml($resources->meta_title->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata meta title"));
                            $resources->meta_title->language[0][0] = "meta title";
                            $resources->meta_title->language[0][0]['id'] = 1;
                            $resources->meta_title->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $node = dom_import_simplexml($resources->link_rewrite->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata link_rewrite"));
                            $resources->link_rewrite->language[0][0] = "link-rewrite";
                            $resources->link_rewrite->language[0][0]['id'] = 1;
                            $resources->link_rewrite->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $node = dom_import_simplexml($resources->name->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata name"));
                            $names = (string)$key['articulo']['descripcion'];
                            $resources->name->language[0][0] = $names;
                            $resources->name->language[0][0]['id'] = 1;
                            $resources->name->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $descrip = '' . "<p><span style=\"font-size:10pt;font-family:Arial;font-style:normal;\"> " . $key['articulo']['caracteristicas'] . " </span></p>";
                            $node = dom_import_simplexml($resources->description->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata description"));
                            $resources->description->language[0][0] = $descrip;
                            $resources->description->language[0][0]['id'] = 1;
                            $resources->description->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $descrip_sh = '' . "<p><span style=\"font-size:10pt;font-family:Arial;font-style:normal;\"> " . $key['articulo']['clave'] . " </span></p>";
                            $node = dom_import_simplexml($resources->description_short->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata description_short"));
                            $resources->description_short->language[0][0] = $descrip_sh;
                            $resources->description_short->language[0][0]['id'] = 1;
                            $resources->description_short->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $node = dom_import_simplexml($resources->available_now->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata In stock"));
                            $resources->available_now->language[0][0] = "In stock";
                            $resources->available_now->language[0][0]['id'] = 1;
                            $resources->available_now->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';

                            $node = dom_import_simplexml($resources->available_later->language[0][0]);
                            $no = $node->ownerDocument;
                            $node->appendChild($no->createCDATASection("cdata available_later"));
                            $resources->available_later->language[0][0] = "available_later";
                            $resources->available_later->language[0][0]['id'] = 1;
                            $resources->available_later->language[0][0]['xlink:href'] = $dominio . '/api/languages/1';
                            $resources->associations->categories->addChild('category')->addChild('id', 2);
                            $resources->associations->categories->addChild('category')->addChild('id', $id_cat);

                            $opt = array('resource' => 'products');
                            $opt['postXml'] = $xml->asXML();
                            $xml_request = $webService->add($opt);

en si mi código es el mismo tanto en  la función put y post no encuentro cambio alguno en el código solo los métodos de ejecución 

Este código es parte de un foreach que  es parte de una función el problema era que las variables contenían basura que no se alcanzaba a limpiar en el siguiente siclo   pase  a crear instancia en cada siclo para solucionarlo 

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...