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

Aru*_* SS 5 magento magento2 magento-2.0

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

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

$_product = $block->getProduct();

foreach($_product->getOptions() as $o){
  foreach($o->getValues() as $value){
    print_r($value->getData());
  }
}
Run Code Online (Sandbox Code Playgroud)

小智 4

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

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

转储将返回类似这样的内容,没有所有 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
}
Run Code Online (Sandbox Code Playgroud)