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

私にとって、これらのattribute_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) ごとに 1 回実行します。

私はそれがうまくいくはずだと思います!

于 2013-12-15T02:00:28.837 に答える