2016-07-20 21 views
5

Tôi có hai tùy chọn tùy chỉnh cho một sản phẩm. Màu sắc và Kích thước và cả hai đều là danh sách thả xuống. Trong các trang chi tiết sản phẩm, tôi phải hiển thị tất cả các màu có sẵn của sản phẩm đó.Nhận giá trị tùy chọn tùy chỉnh của sản phẩm magento 2

Tôi đã thử mã sau và mã hoạt động. Nhưng nó trả về tất cả các giá trị của Màu sắc và Kích thước. Nhưng tôi chỉ cần các giá trị màu sắc. Đó là tôi muốn chọn tùy chọn tùy chỉnh theo màu.

$_product = $block->getProduct(); 

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

Trả lời

1

Tôi không biết bạn có cần hay không, nhưng tôi đã tìm được giải pháp.

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

Các bãi sẽ trở lại một cái gì đó như thế này, mà không cần tất cả các NULLs (đây là một sản phẩm nhập khẩu)

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 
} 
Các vấn đề liên quan