Описанные правки проверены для версии модуля Export Import Tool версии 3.7!
Поле, которое добавим будет называться main_product. Вы точно так же можете на свое изменить
После:
$location = $this->db->escape($product['location']);
$location = $this->db->escape($product['location']);
$store_ids = $product['store_ids'];
$layout = $product['layout'];
$related_ids = $product['related_ids'];
$subtract = $product['subtract'];
$subtract = ((strtoupper($subtract)=="TRUE") || (strtoupper($subtract)=="YES") || (strtoupper($subtract)=="ENABLED")) ? 1 : 0; $minimum = $product['minimum'];
Добавить:
$main_product = $product['main_product'];
------------------------------
Далее, изменить строку:
$sql .= "`tax_class_id`,`viewed`,`length`,`width`,`height`,`length_class_id`,`sort_order`,`subtract`,`minimum`) VALUES ";
На
$sql .= "`tax_class_id`,`viewed`,`length`,`width`,`height`,`length_class_id`,`sort_order`,`subtract`,`minimum`,`main_product`) VALUES ";
Обратите внимание на кавычки! Они должны быть именно такими, или код ошибку выдаст.
------------------------------
Строку:
$sql .= "$tax_class_id,$viewed,$length,$width,$height,'$length_class_id','$sort_order','$subtract','$minimum');";
Изменить на:
$sql .= "$tax_class_id,$viewed,$length,$width,$height,'$length_class_id','$sort_order','$subtract','$minimum','$main_product');";
------------------------------
После:
$sort_order = $this->getCell($data,$i,$j++,'0');
$sort_order = $this->getCell($data,$i,$j++,'0');
$subtract = $this->getCell($data,$i,$j++,'true');
$minimum = $this->getCell($data,$i,$j++,'1');
Добавить:
$main_product = $this->getCell($data,$i,$j++,'0');
------------------------------
После:
$product['subtract'] = $subtract;
$product['subtract'] = $subtract;
$product['minimum'] = $minimum;
Добавить:
$product['main_product'] = $main_product;
------------------------------
Строку:
$expected_heading = array_merge( $expected_heading, array( "meta_description", "meta_keywords", "stock_status_id", "store_ids", "layout", "related_ids", "tags", "sort_order", "subtract", "minimum") );
Изменить на:
$expected_heading = array_merge( $expected_heading, array( "meta_description", "meta_keywords", "stock_status_id", "store_ids", "layout", "related_ids", "tags", "sort_order", "subtract", "minimum", "main_product" ) );
------------------------------
После:
$sql .= " p.stock_status_id, ";
$sql .= " p.stock_status_id, ";
$sql .= " mc.unit AS length_unit, ";
$sql .= " p.subtract, "; $sql .= " p.minimum, ";
Добавить:
$sql .= " p.main_product, ";
Обратите внимание на пробел после p.main_product, это важно, не забудьте его поставить!
------------------------------
После:
$worksheet->getColumnDimensionByColumn($j++)->setWidth(max(strlen('sort_order'),8)+1);
$worksheet->getColumnDimensionByColumn($j++)->setWidth(max(strlen('sort_order'),8)+1);
$worksheet->getColumnDimensionByColumn($j++)->setWidth(max(strlen('subtract'),5)+1);
$worksheet->getColumnDimensionByColumn($j++)->setWidth(max(strlen('minimum'),8)+1);
Добавить:
$worksheet->getColumnDimensionByColumn($j++)->setWidth(max(strlen('main_product'),8)+1);
------------------------------
После:
$data[$j++] = 'sort_order';
$data[$j++] = 'sort_order';
$data[$j++] = 'subtract';
$data[$j++] = 'minimum';
Добавить:
$data[$j++] = 'main_product';
-------------------------------
ПОСЛЕДНИЕ ПРАВКИ! После:
$data[$j++] = $row['sort_order'];
$data[$j++] = $row['sort_order'];
$data[$j++] = ($row['subtract']==0) ? 'false' : 'true';
$data[$j++] = $row['minimum'];
Добавить:
$data[$j++] = $row['main_product'];