Query SQL per un aggiornamento individuale del sito Web del negozio online
Le query SQL consentono di aggiornare il sito Web del negozio online in base alle proprie esigenze individuali. Ogni CMS ha bisogno delle proprie query SQL, quindi in questa sezione ci saranno query separate per ogni CMS. Le query sono scritte nella sezione "Configurazione delle query SQL"
CMS OpenCart
Gli esempi sono forniti con il prefisso della tabella "oc_", se hai un prefisso diverso, cambialo nella query.
Aggiornamento del meta tag del titolo per il produttore del prodotto OpenCart in base al tag del titolo dalla directory dei produttori di Elbuz
UPDATE oc_manufacturer_description md INNER JOIN etrade_manufacturer_temp t2 ON md. manufacturer_id = t2. manufacturer_id SET md. meta_title = t2. meta_title;;;
Aggiornamento del modello di prodotto OpenCart in base all'ID prodotto Elbuz
UPDATE oc_product t1, etrade_product_temp t2 SET t1. model = t2. product_id_jumper WHERE t2. product_id>0 AND t2. product_id = t1. product_id;;;
Aggiornamento della descrizione del prodotto OpenCart basato sulla breve descrizione di Elbuz
UPDATE oc_product_description t1, etrade_product_temp t2 SET t1. description = t2. description_short WHERE t1. product_id = t2. product_id AND t1. language_id = t2. language_id;;;
Aggiornamento URL SEO OpenCart basato su jumper SEO Elbuz
Quando si aggiorna il sito OpenCart, i SEO vengono registrati solo per le nuove voci (nuove categorie, prodotti), per aggiornare i SEO attuali sul sito, utilizzare queste query SQL.
OpenCart versione 2. X
# Categorie
UPDATE oc_url_alias ua INNER JOIN etrade_category_temp e ON e. category_id = CAST(SUBSTRING(ua. query FROM 13) as UNSIGNED) SET ua. keyword = e. seo_url WHERE e. row_exist = 1 AND e. seo_url!='' AND ua. query LIKE 'category_id=%';;
# Prodotti
UPDATE oc_url_alias ua INNER JOIN etrade_product_temp e ON e. product_id = CAST(SUBSTRING(ua. query FROM 12) as UNSIGNED) SET ua. keyword = e. seo_url WHERE e. row_exist = 1 AND e. seo_url!='' AND ua. query LIKE 'product_id=%';;
# Produttori
UPDATE oc_url_alias ua
INNER JOIN etrade_manufacturer_temp e ON e. manufacturer_id = CAST(SUBSTRING(ua. query FROM 17) as UNSIGNED)
SET ua. keyword = e. seo_url
WHERE e. row_exist = 1 AND e. seo_url!='' AND ua. query LIKE 'manufacturer_id=%';;
OpenCart versione 3. X
# Categorie
UPDATE oc_seo_url su INNER JOIN etrade_category_temp e ON e. category_id = CAST(SUBSTRING(su. query FROM 13) as UNSIGNED) SET su. keyword = e. seo_url WHERE e. row_exist = 1 AND e. seo_url!='' AND su. query LIKE 'category_id=%';;
# Prodotti
UPDATE oc_seo_url su INNER JOIN etrade_product_temp e ON e. product_id = CAST(SUBSTRING(su. query FROM 12) as UNSIGNED) SET su. keyword = e. seo_url WHERE e. row_exist = 1 AND e. seo_url!='' AND su. query LIKE 'product_id=%';;
# Produttori
UPDATE oc_seo_url su INNER JOIN etrade_manufacturer_temp e ON e. manufacturer_id = CAST(SUBSTRING(su. query FROM 17) as UNSIGNED) SET su. keyword = e. seo_url WHERE e. row_exist = 1 AND e. seo_url!='' AND su. query LIKE 'manufacturer_id=%';;
Aggiornamento sul sito OpenCart del numero minimo di prodotti da ordinare
UPDATE etrade_product_temp t1, oc_product t2 SET t2. minimum = t1. order_minimum WHERE t1. uuid = t2. uuid;;;
Aggiornamento dei prezzi per le opzioni dei prodotti OpenCart in base ai prodotti opzionali creati nel catalogo di base di Elbuz
Per aggiornare i prezzi delle opzioni sul sito è necessario attivare il flag "Aggiorna i valori delle opzioni in base ai prodotti delle opzioni"
Aggiornamento del prezzo, prefisso prezzo, articolo per un prodotto opzionale
UPDATE oc_product_option_value pov INNER JOIN etrade_product_attribute_temp pa ON pa. product_id = pov. product_id AND pov. product_option_id = pa. product_option_id AND pov. option_id = pa. option_id AND pov. product_option_value_id = pa. product_option_value_id INNER JOIN etrade_product_temp p ON p. uuid = pa. product_uuid AND p. type_id=2 SET pov. price = p. price, pov. price_prefix = '=', pov. sku = p. mpn;;;
È possibile aggiornare la differenza di prezzo tra il prodotto principale e il prodotto opzionale per i prodotti opzionali, se ciascuna opzione ha il proprio prezzo
UPDATE oc_product_option_value pov INNER JOIN etrade_product_attribute_temp pa ON pa. product_id = pov. product_id AND pov. product_option_id = pa. product_option_id AND pov. option_id = pa. option_id AND pov. option_value_id = pa. product_option_value_id INNER JOIN (SELECT uuid, price FROM etrade_product_temp WHERE type_id=1) p ON p. uuid = pa. product_uuid INNER JOIN (SELECT uuid_parent, price FROM etrade_product_temp WHERE type_id=2) p_option ON p_option. uuid_parent = p. uuid SET pov. price = p_option. price - p. price;;;
CMS 1C-Bitrix
Aggiornamento delle proprietà di Bitrix basato sul consueto campo Elbuz.
Ad esempio, per aggiornare la proprietà Bitrix con il codice FORNITORE per l'infoblock ID = 2 in base al campo "Nome account", è necessario utilizzare queste query SQL
SET @iblock_id = 2;;; SET @property_code = 'SUPPLIER';; SET @property_id = (SELECT b_iblock_property. id FROM b_iblock_property WHERE b_iblock_property. code = @property_code AND b_iblock_property. IBLOCK_ID = @iblock_id LIMIT 1);;; INSERT INTO b_iblock_element_property (iblock_property_id, iblock_element_id, value) SELECT @property_id, b_iblock_element. id, etrade_product_temp. contractor_name FROM b_iblock_element, etrade_product_temp WHERE b_iblock_element.xml_id = etrade_product_temp. uuid AND b_iblock_element. iblock_id = @iblock_id AND b_iblock_element. id NOT IN (SELECT iblock_element_id FROM b_iblock_element_property WHERE iblock_property_id = @property_id GROUP BY iblock_element_id);;; UPDATE b_iblock_element_property, b_iblock_element, etrade_product_temp SET b_iblock_element_property. value = etrade_product_temp. contractor_name WHERE b_iblock_element. id = b_iblock_element_property. iblock_element_id AND b_iblock_element.xml_id = etrade_product_temp. uuid AND b_iblock_element. iblock_id = @iblock_id AND b_iblock_element_property. iblock_property_id = @property_id;;;