2016-02-11 2 views
0

Im в настоящее время пишет инструмент экспорта для Mage1, чтобы экспортировать продукты от Mage1 до Mage2.Как определить, является ли простой продукт частью настраиваемого продукта?

Таким образом, я хочу определить, является ли продукт в коллекции частью настраиваемого продукта.

Моя текущая коллекция устанавливается таким образом:

$_productCollection = Mage::getModel('catalog/product') 
         ->getCollection() 
         ->setPageSize(500) 
         ->setCurPage(1) 
         ->addAttributeToSort('sku', 'ASC') 
         ->addAttributeToFilter('type_id', array('eq' => 'simple')) 
         ->addAttributeToSelect('*') 
         ->load(); 

Первый, я прошу только простые продукты прямо сейчас. Если я удалю эту строку, я получаю все продукты в магазине в коллекции, но в коде каждый продукт обрабатывается как простой продукт в настоящее время.

Теперь, происходит следующее:

Я прошу сценарий и получить мою информацию для всех простых продуктов. В магазине, который я использую для тестирования, есть настраиваемые продукты и комплекты продуктов. Я знаю, хочу знать как Я могу определить, является ли продукт частью настраиваемого или расслоенного изделия и как я могу назначить эти «простые» продукты соответствующим конфигурируемым продуктам?

Я создаю CSV, который я могу загрузить в Mage2 успешно, но, как я уже сказал, он импортирует только простые продукты (по желанию до сих пор).

Я немного погуглил (https://www.google.de/search?q=get+assigned+simple+products+for+a+configurable+product&ie=utf-8&oe=utf-8&gws_rd=cr&ei=b3i8VuD6BIevswGWtbGACw), но я до сих пор не знаю. :/Надеюсь, кто-то здесь может помочь мне в этом вопросе.

Кроме того, я проверил эту тему: Checking if a Magento product is a child of a configurable product - но я не понимаю, что делать с соответствующим именем. Может быть, это уже правильная догадка?

Спасибо, Макс.

ответ

1

Да, есть способ сделать это. Посмотрите на класс модели Mage_Catalog_Model_Product_Type_Configurable, есть функция, называемая getParentIdsByChild.

Mage::getModel('catalog/product_type_configurable')->getParentIdsByChild($productId); 

Он вернет пустой массив, если идентификаторы родителей не найдены.

+0

Отлично! Любая идея, как я могу связать эти результаты с исходным настраиваемым продуктом? Фрагмент уже работает, как я и ожидал ... Теперь с ним происходит Babysteps. –

Смежные вопросы