当前位置: 首页 > 面试题库 >

使所有商店图像都成为Magento中的基础图像,小图像和缩略图图像?

司徒俊良
2023-03-14
问题内容

我的Magento商店有大约3,000种产品。几乎所有这些产品都附有单个图像。

出于某种原因,即使我将小图像和缩略图图像设置为与导入CSV文件中的基本图像相同,也仅为每个产品设置了基本图像。这意味着当您搜索产品时,您会获得一个占位符-
但是进入产品页面后,您将获得正确的图像。可以通过进入产品管理页面并选择小图像和缩略图的框来轻松解决此问题。

问题是,使用3,000张图像,这将需要很长时间才能手动完成。我找到了一条SQL命令,该命令
使所有基本图像,小图像和缩略图图像映射到每个产品的第一幅图像。因为我每个产品只有一张图片,所以应该是完美的。但是,它什么也没做。它说0行已更改。

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 (70, 71, 72)
AND mgv.position = 1

有人知道为什么这行不通吗?

谢谢,

丹尼


问题答案:

对数据库进行类似的更改后,即使成功,也需要在“高速缓存管理”中重建图像高速缓存

您也许可以使用这样的脚本来执行此操作,而不必担心缓存或索引编制。

<?php

require 'app/Mage.php';
Mage::app();

$products = Mage::getModel('catalog/product')->getCollection()->addAttributeToSelect('*');
foreach ($products as $product) {
    if (!$product->hasImage()) continue;
    if (!$product->hasSmallImage()) $product->setSmallImage($product->getImage());
    if (!$product->hasThumbnail()) $product->setThumbnail($product->getImage());
    $product->save();
}

?>Done!

将其保存在您的Magento目录中,然后通过在浏览器的地址栏中键入URL进行访问。我尚未测试此脚本。



 类似资料:
  • 我的Wordpress站点显示所有的帖子,堆叠在文章中,使用行(Bootstrap 3)跨越index.php的整个宽度。 index.php-HTML php显示每篇文章中的文章(文章堆叠在一起,全宽,向下) 我有标题和类别显示在每一行正确。我希望每个帖子的帖子缩略图(我在functions.php中添加了它的用法)成为每一行的背景图像。填充整个空间(背景尺寸:封面) 基本上很大,100%宽

  • 问题内容: 我想创建一个带有缩略图的图像文件视图,所以我将FileView子类化,并在创建方法中进行了一些缩放,以便显示缩略图图像。 但是,总体效果是,该小部件在打开目录并显示缩略图之前需要花费一些时间。在下面的createImageIcon()中,我需要两次调用new ImageIcon()两次,分别使用图像文件路径和下一次调整大小的图像作为构造函数参数。我认为这是使小部件变慢的原因。 有没有更

  • 我有一个jfilechooser,它帮助搜索和选择图像上传到项目数据库。还有一个缩略图类可以将上传的图像压缩成所需的大小。运行文件选择器的按钮action_performed的代码如下:

  • 出于某种原因,当我使用WordPress 3.6.1媒体库GUI功能裁剪缩略图时,它似乎不会影响公文包页面上显示的缩略图?即使缩略图在后端显示为裁剪,但在公文包页面上仍然显示不正确? 下面是公文包页面的代码摘录。正如您所看到的,它使用中等大小的缩略图。 functions.php我有以下几点: 为什么我不能通过WordPress GUI将上传到媒体库的肖像图像裁剪成横向格式?

  • 我正在尝试创建以下图库: -一个大图像 -下面图库图像的缩略图 -大图像应在lightbox图库中单击后打开所有图像 我让lightbox画廊使用PhotoSwipe工作,当我点击大图像时,它就会触发。我也有缩略图在大图像下面的地方。我现在的问题是,当我单击其中一个缩略图时,我如何改变大图像?我见过很多例子(也是相当简单的例子),但在我的案例中似乎没有一个行得通。 下面是我为缩略图准备的代码: 我

  • 当一张新照片添加到应用程序的照片“集合”中时,就会调用该方法。当已知是本地图像时(即:如果照片是从应用程序内部拍摄的,或者OnActivityResult的数据参数为空),则本地参数设置为true,我尝试从媒体内容提供商获取content://uri,以便获得有效的图像id传递给Thumbnails.getThumbnail。该代码对于从相机应用程序(通过startActivityForResul