【问题标题】:Magento - Adding multiple images with a product form csv file?Magento - 使用产品表单 csv 文件添加多个图像?
【发布时间】:2012-02-15 01:45:13
【问题描述】:

我需要在详细信息页面上显示多个产品图像,因此我在 csv 文件中添加了名为 gallery 的 i 列。并在一个框中添加一些这样的值

/hogan/gray1.jpg,/hogan/gray2.jpg,/hogan/gray3.jpg

我将图像放入import/hogan 文件中。然后导入 csv 文件。但是详情页没有显示多张商品图片,为什么??

【问题讨论】:

    标签: php magento magento-1.4


    【解决方案1】:

    我没有使用画廊图片,但我不确定那是你真正想要的。如果您想在产品详细信息页面中导入多张图片,您需要对 CSV 文件执行以下操作。

    1) Magento 中的 CSV 导入假定您的图像在媒体/导入中。因此,您的 CSV 文件中的所有引用都应从那里列出。例如,如果您要导入的图像是:

    媒体/导入/image1.jpg

    那么您的图片需要在 CSV 文件中作为 /image1.jpg 列出(需要前导斜杠)。

    2) 要添加“媒体图像”,请使用以下列: _media_attribute (似乎默认为 77,检查导出以确认) _media_image - 这是您的图像文件的名称(例如 /image1.jpg) _media_lable(注意拼写错误不是拼写错误) - 这是图像标签 _media_position - 图像的排序(例如 1、2、3、...) _media_is_disabled - 1 = 禁用,0 = 启用

    为一个产品输入多张图片,然后在多行中输入,例如:

     _media_attribute  _media_image  _media_lable  _media_position  _media_is_disabled
     77                /image1.jpg   Image 1 label     1            0
     77                /image2.jpg   Image 2 label     2            0
    

    如果您想将其中任何一个指定为默认图像、小图像或缩略图,则需要将这些相同的图像和标签放在 (image, image_label), (small_image, small_image_label), (thumbnail , thumbnail_label) 分别。

    希望对您有所帮助。

    【讨论】:

    • 我导出了一个 csv 文件,为什么没有 _media_attribute _media_image 列。谢谢
    【解决方案2】:

    这是使用 Magento 1.6.1 的 DataFlow 导入器的方法,从here得到它

    1. 所以你不要编辑核心文件,复制 app/code/local/Mage/Catalog/Model/Convert/Adapter/Product.phpapp/code/ local/Mage/Catalog/Model/Convert/Adapter/
    2. 编辑 app/code/local/Mage/Catalog/Model/Convert/Adapter/Product.php 并在第 799 行之后添加以下内容:
    if (isset($importData['media_gallery']) && !empty($importData['media_gallery'])) { $x = explode(',', $importData['media_gallery']); foreach ($x as $file) { $imagesToAdd[] = array('file' => trim($file)); } $mediaGalleryBackendModel->addImagesWithDifferentMediaAttributes( $产品, $imagesToAdd, Mage::getBaseDir('media') 。 DS 。 '进口', 错误的, 错误的 ); }

    ...所以你最终得到了这个:

    
    793         $addedFilesCorrespondence = $mediaGalleryBackendModel->addImagesWithDifferentMediaAttributes(
    794             $product,
    795             $arrayToMassAdd, Mage::getBaseDir('media') . DS . 'import',
    796             false,
    797             false
    798         );
    799 /* http://www.magentocommerce.com/boards/viewthread/224928/P30/#t403196 */
    800  if (isset($importData['media_gallery']) && !empty($importData['media_gallery'])) {
    801             $x = explode(',', $importData['media_gallery']);
    802             foreach ($x as $file) {
    803                 $imagesToAdd[] = array('file' => trim($file));
    804             }   
    805             
    806             $mediaGalleryBackendModel->addImagesWithDifferentMediaAttributes(
    807                 $product,
    808                 $imagesToAdd, Mage::getBaseDir('media') . DS . 'import',
    809                 false,
    810                 false
    811             );
    812         }       
    
    

    如果您的 CSV 文件,添加一个名为 *media_gallery* 的列,并将您的其他图像放入 /media/import:

    media_gallery
    -------------
    /s/e/second_image.png, /t/h/third_image.png,/f/o/fourth_image.png
    

    【讨论】:

      【解决方案3】:

      不确定这是否仍然正确,但根据Magento wiki entry,默认数据导入似乎无法正确处理导入画廊图像。

      您可以按照 wiki 页面上的建议在每次导入后运行 SQL 脚本,或者您可以使用 Magmi 之类的东西,我从经验中知道,它可以正确处理图库图像...并且比默认设置更快Magento 进口商

      【讨论】:

        【解决方案4】:

        无法评论,所以不得不发布解决方案...

        PCProffit 正在为他的解决方案使用导入扩展。更具体地说,这个: http://www.magentocommerce.com/magento-connect/amartinez-customimportexport.html

        从 Magento 1.7.0 开始,我遇到了这个问题。我有两个扩展(Groups2Customers 和高级自定义选项)。基本上问题是在导入产品时没有正确更新 media_gallery 表。 CCBlackburn 提供了一个指向将更新画廊表的 SQL 的链接(也不能用 0 投票)...

        如果您不使用任何需要导入额外字段的扩展,Magmi 会很好地处理这个问题。如果是,则需要在任何导入后执行 SQL,或修复导入代码。

        【讨论】:

          【解决方案5】:

          这是使用 Magento 1.6.1 的 DataFlow 导入器的方法,从这里获取

          所以你不要编辑核心文件,复制 app/code/local/Mage/Catalog/Model/Convert/Adapter/Product.php 到 app/code/local/Mage/Catalog/Model/Convert/适配器/ 编辑 app/code/local/Mage/Catalog/Model/Convert/Adapter/Product.php 并在第 799 行之后添加以下内容:

          这东西对我有用 magento 1.7.0.2 感谢分享这个答案。 非常感谢

          【讨论】:

            【解决方案6】:

            使用产品表单 csv 文件添加多个图像,您无需在任何文件中进行任何自定义,此功能已经在 magento 中,为此您需要在 magento 管理员中使用“导入/导出”来上传产品和多个图像更新,请查看我们如何添加多张图片,请参见以下几点:

            1. you need to create csv file for upload products, you will use this
            
            go to admin > system >import/export > export and download csv for using product import.
            
            2. then create you csv like this(Please see attached screen shot) for upload multiple image in one product.
            

            3. go to admin > system >import/export > import check your csv correct or not then import and check you will see in your product all images are add.
            
            if any issue please let me know.
            
            Thanks
            Ravi
            

            【讨论】:

              【解决方案7】:

              我认为你可以使用这个并且可以导入多个图像

              sku |图片 |小图片 |缩略图

              MAN-1 | /Man/3.jpg | /Man/3.jpg | /Man/3.jpg

              MAN-1 | /Man/2.jpg | /Man/2.jpg | /Man/2.jpg

              MAN-1 | /Man/1.jpg | /Man/1.jpg | /Man/1.jpg

              并且您将放在最后一行的图像将在管理和前端显示为已选择

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2016-12-19
                • 2016-12-14
                • 1970-01-01
                • 1970-01-01
                • 2015-07-12
                • 1970-01-01
                相关资源
                最近更新 更多