Problemi attributo tirando in vista negozio specifico
-
16-10-2019 - |
Domanda
Ho un Magento con una sola vista del negozio. Tuttavia questo negozio non è predefinito. La vista notizia negozio è stato creato (ID: 2). E quello di default cancellato
Poi ho prodotti e immagini importate con qualche strumento. In amministrazione tutto è sparky. La miniatura corretta, piccola immagine e immagine di base sono selezionati e immagine non è esclusa. Nella parte anteriore mostra immagine finale correttamente alla pagina dei prodotti informazioni, ma non è presentandosi alla messa in vendita di prodotti.
Se stampo l'oggetto prodotto alla categoria messa vedo che non ci sono immagini ancora caricate. Nessuna proprietà a tutti. Tuttavia etichette immagini sono caricate bene.
Questa è la fila esempio del mio catalog_product_entity_varchar
:
value_id entity_type_id attribute_id store_id entity_id value
--------------------------------------------------------------------------------------------
1004 4 86 2 101 /2/7/271074_2.jpg
Dove coresponds 86
attribuire small_image
.
E ora l'ultima cosa. Se cambio l'ID negozio immagine 0
a viene mostrato correttamente. Posso facilmente impostare per 0
per tutti i prodotti il ??tempo che ho solo una vista negozio, ma non dovrei anche essere visualizzati con 2
? Perchè con 2
da visualizzarla con la pagina prodotti particolari e non nella lista?
PS:. Guarda negozio di default, estensioni
Soluzione
Hai un valore predefinito per quell'elemento, o semplicemente il valore storeview specifico?
SELECT
`t_d`.`entity_id`,
`t_d`.`attribute_id`,
`t_d`.`value` AS `default_value`,
`t_s`.`value` AS `store_value`,
IF(t_s.value_id IS NULL, t_d.value, t_s.value) AS `value`
FROM `catalog_product_entity_varchar` AS `t_d`
LEFT JOIN `catalog_product_entity_varchar` AS `t_s`
ON t_s.attribute_id = t_d.attribute_id AND t_s.entity_id = t_d.entity_id AND t_s.store_id = 2
...
Ecco un frammento dalle query che attribuisce carico in elenchi di prodotti. Come si può vedere, se si dispone di alcun valore di default per tale attributo, la prima parte restituirà alcun risultato, e il LEFT JOIN non funziona correttamente. Questo significa che è sempre necessario il valore di default e il valore storeview; Magento deciderà il valore corretto nel IF(...) as value
campo calcolato.