Magento导入多图,自定义选项(3)

magento批量导入
magento批量导入

现在已经有视频教程,详见:http://www.hellokeykey.com/magento-chinese-tutorial-video/

如果你没有看前两篇介绍批量导入的文章,请先阅读前两篇文章。
Magento导入多图,自定义选项
Magento导入多图,自定义选项 (2)

在使用这个插件导入自定义选项的时候,我们发现导入的自定义选项的顺序,是按照字母顺序排列的。

比如,我们导入颜色下拉菜单,我们csv文件中的属性顺序是:  red,blue,white。但是导入后我们发现他们的顺序已经变成了:blue,red,white。也就是会按照字母的顺序来排列。

我们需要修改其插件代码,来fix这个问题。

需要修改的插件文件路径: app\code\community\CapacityWebSolutions\ImportProduct\Model\Convert\Adapter\product.php

代码片段说明:在大概132行的位置,添加 $i 变量,在大概210行位置,将sort_order的值换为$i++,这样就会按照导入顺序给导入值设置排序的权重。

	$i = 0;
        foreach ($importData as $field => $value) {
            if (in_array($field, $this->_inventoryFields)) {
                continue;
            }
            if (in_array($field, $this->_imageFields)) {
                continue;
            }
            $attribute = $this->getAttribute($field);
          	if (!$attribute) {

				if(strpos($field,':')!==FALSE && strlen($value)) {
				   $values=explode('|',$value);
				   if(count($values)>0) {
					  @list($title,$type,$is_required,$sort_order) = explode(':',$field);
					  $title = ucfirst(str_replace('_',' ',$title));
					  $custom_options[] = array(
						 'is_delete'=>0,
						 'title'=>$title,
						 'previous_group'=>'',
						 'previous_type'=>'',
						 'type'=>$type,
						 'is_require'=>$is_required,
						 'sort_order'=>$sort_order,
						 'values'=>array()
					  );
					  foreach($values as $v) {
						 $parts = explode(':',$v);
						 $title = $parts[0];
						 if(count($parts)>1) {
							$price_type = $parts[1];
						 } else {
							$price_type = 'fixed';
						 }
						 if(count($parts)>2) {
							$price = $parts[2];
						 } else {
							$price =0;
						 }
						 if(count($parts)>3) {
							$sku = $parts[3];
						 } else {
							$sku='';
						 }
						 if(count($parts)>4) {
							$sort_order = $parts[4];
						 } else {
							$sort_order = 0;
						 }
						 switch($type) {
							case 'file':
							     break;

							case 'field':
							case 'area':
							   $custom_options[count($custom_options) - 1]['max_characters'] = $sort_order;

							case 'date':
							case 'date_time':
							case 'time':
							   $custom_options[count($custom_options) - 1]['price_type'] = $price_type;
							   $custom_options[count($custom_options) - 1]['price'] = $price;
							   $custom_options[count($custom_options) - 1]['sku'] = $sku;
							   break;

							case 'drop_down':
							case 'radio':
							case 'checkbox':
							case 'multiple':
							default:
							   $custom_options[count($custom_options) - 1]['values'][]=array(
								  'is_delete'=>0,
								  'title'=>$title,
								  'option_type_id'=>-1,
								  'price_type'=>$price_type,
								  'price'=>$price,
								  'sku'=>$sku,
								  'sort_order'=>$i++,
							   );
							   break;
						 }
					  }
				   }
				}

                continue;
            }

 

 

继续阅读“Magento导入多图,自定义选项(3)”

Magento导入多图,自定义选项

magento批量导入
magento批量导入

现在已经有视频教程,详见:http://www.hellokeykey.com/magento-chinese-tutorial-video/

Magento批量导入是很多人关心的问题,因为面对成千上万件商品需要管理,还是批量操作方便些。

对于magento自带的批量导入功能,只能算是基础的导入功能,不包含多张图片与自定义选项(例如:尺码,颜色的选择)的功能。

现在有个插件可以帮助大家完成多张图片与自定义选项的批量导入。

插件地址:http://www.magentocommerce.com/magento-connect/import-products-categories-multiple-images-and-custom-options.html

此插件在插件说明部分详细说明了如何操作并且给出了CSV的示例文件,大家正好可以使用此CSV文件了解批量导入表有哪些属性,如何书写。

CSV文件编辑是要保持文件编码和分号逗号使用规律,建议试验没有问题后再批量的编辑商品,并可以时不时的在测试站测试下。CSV编辑器推荐:http://csved.sjfrancke.nl/ 用着感觉很不错

网上批量导入文章很多,详细操作大家可以google下,有时间我出个视频。

导入的自定义属性,比如导入尺码,存在尺码按照字母顺序排的问题,这是这个插件需要fix的地方。

继续阅读“Magento导入多图,自定义选项”