magento批量导入推荐商品、交叉商品related、upsell、crossell的商品语法

在magento官网,可以下载到多图倒入的插件,这个插件可支持选项的倒入,具体可看我之前的文单
关于magento商品批量多图导入的文件结构说明

如果需要导入推荐商品、交叉商品related、upsell、crossell,如何做呢?代码如下:



		if (isset($importData['related'])) {
            $linkIds = $this->skusToIds($importData['related'], $product);
         	if ( !empty( $linkIds ) ) {
                $product->setRelatedLinkData( $linkIds );
				$product->save();
                } 
				
            } 
			if (isset($importData['upsell'])) {
            $linkIds = $this->skusToIds($importData['upsell'], $product);
         	if ( !empty( $linkIds ) ) {
                $product->setUpSellLinkData( $linkIds );
				$product->save();
                } 
				
            }
			if (isset($importData['crossell'])) {
            $linkIds = $this->skusToIds($importData['crossell'], $product);
         	if ( !empty( $linkIds ) ) {
                $product->setCrossSellLinkData( $linkIds );
				$product->save();
                } 
				
            } 

插入到saveRow函数中,即可
位置在  $this->setProductTypeInstance($product); 的上方

用到的两个功能定义如下:

 protected function skusToIds( $userData, $product )
    {
        $productIds = array();
        foreach ( $this->userCSVDataAsArray( $userData ) as $oneSku ) {
            if ( ( $a_sku = ( int )$product->getIdBySku( $oneSku ) ) > 0 ) {
                parse_str( "position=", $productIds[$a_sku] );
                } 
            } 
        return $productIds;
        } 

 protected function userCSVDataAsArray( $data )
    {
        return explode( ',', str_replace( " ", "", $data ) );
    } 

csv的字段分别是related、upsell、crossell的商品语法。
多个用 , 分隔。

大家可以试试自己组装代码。

《magento批量导入推荐商品、交叉商品related、upsell、crossell的商品语法》有1个想法

  1. 我按照你的例子改了我的文件,但是系统并没有将ralated这一栏的id从csv里读进去。不知还有什么是我需要注意的吗?

评论已关闭。