Magento - 自动设置基础,小和上传缩略图

时间:2014-09-05 08:35:25

标签: magento upload image-uploading

上午,

我们已经在Stackoverflow和Google上搜索了这个解决方案,但仍然没有正确的答案。

我们正在尝试自动设置Base, Small and Thumbnail上的first uploaded image, so when uploading multiple images the first image will always have all three options checked选项。

如果有人尝试并成功找到了这个答案和建议,谢谢。

Catalog Product

3 个答案:

答案 0 :(得分:2)

这很容易。示例here。在root/js/mage/adminhtml/product.js末尾替换handleUploadComplete大约120行代码

    this.container.setHasChanges();
    this.updateImages();
},
updateImages : function() {

    this.container.setHasChanges();
    this.updateImages();
    $$('tr#media_gallery_content-image-1 td.cell-image.a-center input')[0].setAttribute('checked','checked');
    $$('tr#media_gallery_content-image-1 td.cell-small_image.a-center input')[0].setAttribute('checked','checked');
    $$('tr#media_gallery_content-image-1 td.cell-thumbnail.a-center input')[0].setAttribute('checked','checked');
},
updateImages : function() {

上传后享受自动选择第一张图片

答案 1 :(得分:0)

如果您已经上传了图片并需要将第一个设置为thumb / base / small,请尝试this post中的sql命令:

只需按照stereo_world和nhahtdh提供的说明操作,然后刷新缓存。

答案 2 :(得分:0)

感谢Fabian and Doug for the groundwork。我刚刚发布了一个扩展程序,它正是以一种干净的方式完成您的目标:https://github.com/customgento/CustomGento_AutoSelectImages

它只是在管理产品编辑页面上添加了一个JS文件。在JS文件中,包含所提到的方法Product.Gallery.createImageRow,以便在上载第一张图像后可以选择单选按钮。这是JS“魔术”:

if (typeof Product.Gallery !== 'undefined') {
    Product.Gallery.prototype.createImageRow = Product.Gallery.prototype.createImageRow.wrap(function (parentMethod, image) {
        // first call the parent method
        parentMethod(image);

        // auto-select the radio buttons for the first uploaded image
        $H(this.imageTypes).each(function (pair) {
            if (this.images.length === 1) {
                this.getFileElement(image.file, 'cell-' + pair.key + ' input').checked = true;
            }
        }.bind(this));
        this.setProductImages(image.file);
    });
}