获取产品magento 2的自定义选项值

时间:2016-07-20 10:33:53

标签: magento magento2 magento-2.0

我有一个产品的两个自定义选项。颜色和大小都是下拉列表。在产品详细信息页面中,我必须显示该产品的所有可用颜色。

我尝试了以下代码,但它确实有效。但它返回颜色和大小的所有值。但我只需要颜色值。那就是我想按颜色选择自定义选项。

$_product = $block->getProduct();

foreach($_product->getOptions() as $o){
  foreach($o->getValues() as $value){
    print_r($value->getData());
  }
}

1 个答案:

答案 0 :(得分:2)

我不知道你是否仍然需要它,但我找到了解决方案。

foreach($product->getProductOptionsCollection() as $o){
     foreach($o->getValues() as $ov){
        // do whatever you want to it;
        var_dump($ov->getData());
    }
}

转储将返回类似这样的内容,没有所有NULL(这是导入的产品)

array(13) {
  ["option_type_id"]=>
  string(5) "23122"
  ["option_id"]=>
  string(4) "6045"
  ["sku"]=>
  string(1) "2"
  ["sort_order"]=>
  string(1) "2"
  ["default_title"]=>
  string(33) "Test Option"
  ["store_title"]=>
  NULL
  ["title"]=>
  string(33) "Test Option"
  ["default_price"]=>
  NULL
  ["default_price_type"]=>
  NULL
  ["store_price"]=>
  NULL
  ["store_price_type"]=>
  NULL
  ["price"]=>
  NULL
  ["price_type"]=>
  NULL
}