Diventa prestatore e investi con Prestiamoci!

sabato 23 agosto 2014

Eliminazione delle immagini dal Database MySql e struttura EAV del database di Magento

Eliminazione delle immagini dal Database MySql di Magento

Su Magento può capitare di voler eliminare le immagini dei prodotti direttamente dal database. Per farlo occorre modificare i dati delle seguenti tabelle coinvolte sono:
  • catalog_product_entity_varchar
  • catalog_product_entity_media_gallery
  • catalog_product_entity_media_gallery_value

Le tabelle della galleria

Le seguenti tabelle:
  • catalog_product_entity_media_gallery
  • catalog_product_entity_media_gallery_value
contengono le immagini della galleria, per eliminare tutti i record è quindi sufficiente eseguire le seguenti query:
DELETE FROM catalog_product_entity_media_gallery_value
DELETE FROM catalog_product_entity_media_gallery
A causa delle Foreign Key un comando TRUNCATE non funzionerebbe.

Infine si possono eliminare le immagini dalla tabella:


  • catalog_product_entity_varchar

E' possibile utilizzare la seguente istruzione SQL:
DELETE FROM `catalog_product_entity_varchar` WHERE `attribute_id`=85 OR `attribute_id`=86 OR `attribute_id`=87
I valori 85 - 86 - 87 della clausola WHERE rappresentano i vari formati di immagine disponibili per il prodotto su Magento (image, thumb, small).

Osservazioni sulla struttura della tabella catalog_product_entity_varchar e sul database EAV di Magento 

Questa tabella contiene gli attributi di tipo VARCHAR dei prodotti inseriti. In Magento la maggior parte delle informazioni relative ai prodotti sono gestite come attributi. Quindi un'istruzione DELETE senza nessuna WHERE specificata come nel caso delle tabelle relative alla galleria delle immagini cancellerebbe, non solo i riferimenti ai file delle immagini dei prodotti ma anche altre informazioni.

I campi della tabella sono i seguenti:

* value_id, la chiave primaria della tabella
* entity_type_id, il tipo di entità, nel caso dei prodotti del catalogo il valore è sempre 4
* attribute_id, il tipo di attributo da cancellare
* store_id, l'id del negozio (sarà sempre 1 se non gestite un sito multilingua o un multistore)
* entity_id, l'id del recordprodotto
* value, il valore effettivamente inserito

Se volete verificare quali informazioni sono disponibili per un singolo prodotto (supponiamo quello con id 363) potete quindi eseguire la seguente query:
SELECT * FROM  `catalog_product_entity_varchar` WHERE  `entity_id` =363;
troverete tutti gli attributi assegnati a quel prodotto. Per conoscere a cosa corrisponde il valore dell'attribute_id, è sufficiente andare nel pannello di controllo su CATALOGO->ATTRIBUTI->GESTIONE ATTRIBUTI e  verificare il valore dell'attributo.

Se filtrerete i nomi degli attributi con i seguenti codici attributo:

* thumbnail
* image
* small_image

troverete appunto gli id 85, 86 e 87.

Per saperne di più sulla struttura EAV del database di Magento:

martedì 17 aprile 2012

La SEO influenza i Social Media? I Social Media influenzano la SEO?

Social media e SEO sono talvolta contrapposti  come possibilità di portare traffico al nostro sito web, a volte per motivi di budget (non abbiamo i soldi per fare tutte e due) altre volte per motivi di tempo (non abbiamo tempo di seguire entrambi i progetti) molto spesso perchè i webmaster sono più orientati verso una delle due soluzioni e detestano l'altra.In tutti e tre i casi è evidente la mancanza di un approccio professionale al problema, in queste slides un metodo ragionato basato sull'esperienza di anni di SEO della M.C. Marketing e Comunicazione, web agency anconetana che dal 1997 si occupa di curare la visibilità dei propri clienti sul web, ci aiuta a orientarci verso la strada giusta per una strategia di vincente di visibilità sul web.Social Media & SEO
Guarda altre interessanti presentazioni sul canale Slideshare di Gruppo M.C. Ancona dal 1979 / Consulenti aziendali e Web agency