1

我遇到了以下代码,我认为可以解决我的问题,但它似乎没有做任何事情(查询成功但应用于零行):

UPDATE catalog_product_entity_media_gallery AS mg,
       catalog_product_entity_media_gallery_value AS mgv,
       catalog_product_entity_varchar AS ev
SET    ev.value = mg.value
WHERE  mg.value_id = mgv.value_id
AND    mg.entity_id = ev.entity_id
AND    ev.attribute_id IN (86,87,88)
AND    mgv.position = 1

对我来说,这些属性 ID 对应于查看 eav_attribute 表的小图像、缩略图和媒体库。

图像显示在后端,媒体库图像可以在前端看到,但小图像和缩略图不会显示在前端。

查看 catalog_product_entity_media_gallery 表,它只包含媒体库属性 (88)。我是否需要复制这些,将属性更改为 86,使其显示在前端?如果是这样,我该怎么做?

SQL 对我来说是新的,虽然我知道如何复制和粘贴 ;)

提前干杯!

4

1 回答 1

0

我和你在同一条船上。我确实找到了这个问题和答案: Magento,我需要将第一个产品图像定义为缩略图

但我也在寻找如何找到正确的值来设置。

我相信如果您使用每个 ev.attribute_id 运行此代码 3 次,它应该可以工作。

    UPDATE catalog_product_entity_media_gallery AS mg,
    catalog_product_entity_media_gallery_value AS mgv,
    catalog_product_entity_varchar AS ev
SET ev.value = mg.value
    WHERE  mg.value_id = mgv.value_id
    AND mg.entity_id = ev.entity_id
    AND ev.attribute_ID = '76'
    AND mgv.position = 1;

为每个属性 ID(86、87、88)运行一次。

我认为这应该有效!

于 2013-12-15T02:00:28.837 回答