Bundle product generated using options type like dropdown, radio, checkbox, multi-select. You can get all native system option types for bundle products programmatically.
If you want to know about all the available options type in the system, You can use a native interface.
Magento\Bundle\Api\ProductOptionTypeListInterface
Interface contains the getItems() method to display list of options for the bundle product.
<?php namespace Jesadiya\BundleOptions\Model; use Magento\Bundle\Api\Data\OptionTypeInterface; use Magento\Bundle\Api\ProductOptionTypeListInterface; class BundleOptions { /** * @var ProductOptionTypeListInterface */ private $productOptionType; public function __construct( ProductOptionTypeListInterface $productOptionType ) { $this->productOptionType = $productOptionType; } /** * option type of bundle products * * @return OptionTypeInterface[] */ public function getOptionsType() { $items = $this->productOptionType->getItems(); return $items; } }
Call from the template or any PHP class,
$items = $this->getOptionsType(); foreach ($items as $item) { echo $item->getLabel(). '=>' .$item->getCode(); }
-
Output:
Drop-down => select
Radio Buttons => radio
Checkbox => checkbox
Multiple Select => multi