/** * Prepare options * * @param FixtureInterface $product * @return array */ protected function prepareOptions(FixtureInterface $product) { /** @var BundleProduct $product */ $productOptions = parent::prepareOptions($product); $checkoutData = $product->getCheckoutData()['options']; if (!empty($checkoutData['bundle_options'])) { foreach ($checkoutData['bundle_options'] as $optionData) { $productOptions[] = ['option_name' => $optionData['title'], 'value' => $optionData['value']['name']]; } } return $productOptions; }
/** * Prepare options * * @param FixtureInterface $product * @return array */ protected function prepareOptions(FixtureInterface $product) { /** @var DownloadableProduct $product */ $productOptions = parent::prepareOptions($product); $checkoutData = $product->getCheckoutData()['options']; if (!empty($checkoutData['links'])) { $downloadableLinks = $product->getDownloadableLinks(); foreach ($checkoutData['links'] as $optionData) { $linkKey = str_replace('link_', '', $optionData['label']); $productOptions[] = ['option_name' => 'Links', 'value' => $downloadableLinks['downloadable']['link'][$linkKey]['title']]; } } return $productOptions; }
/** * Prepare options * * @param FixtureInterface $product * @return array */ protected function prepareOptions(FixtureInterface $product) { /** @var ConfigurableProduct $product */ $productOptions = parent::prepareOptions($product); $checkoutData = $product->getCheckoutData()['options']; if (!empty($checkoutData['configurable_options'])) { $configurableAttributesData = $product->getConfigurableAttributesData()['attributes_data']; foreach ($checkoutData['configurable_options'] as $optionData) { $attribute = $configurableAttributesData[$optionData['title']]; $productOptions[] = ['option_name' => $attribute['label'], 'value' => $attribute['options'][$optionData['value']]['label']]; } } return $productOptions; }