Как вывести значения атрибута множественного выбора в Magento 2.3.x? - PullRequest
0 голосов
/ 15 февраля 2020

В магазине Magento 2.3.3 я пытаюсь вывести значения настраиваемого атрибута множественного выбора на странице категории, но безуспешно. Я установил атрибут, который будет использоваться в списке товаров, и попытался вывести его на страницу шаблона catalog / product / list.p html в моей пользовательской теме. Я использую следующий код: <?php /* @escapeNotVerified */ echo $_product->getResource()->getAttribute('custom_attribute')->getFrontend()->getValue($_product); ?> Это работает для выпадающих атрибутов, но не для атрибутов с множественным выбором. Вид застрял на этом ...

1 Ответ

0 голосов
/ 17 февраля 2020

Вы можете использовать приведенный ниже код для получения значения атрибута MultiSelect

создать блок в "catalog_product_view. xml"

<referenceBlock name="product.info.main">
    <block class="Magento\Catalog\Block\Product\View" name="attribue.name" template="Magento_Catalog::product/view/attribute_name.phtml" after="-"  /> 
</referenceBlock>

создать файл "p html" в разделе "Magento_Catalog" :: product / view / attribute_name.p html "

<?php $product = $block->getProduct(); ?> 
<div>
  <?php 
    $data = explode(',',$product->getData('attribute_code'));
    foreach($data as $value):            
  ?>
  <?php 
    $attr = $product->getResource()->getAttribute('attribute_code');
    if ($attr->usesSource()): 
  ?>
        <?php 
            $option_value = $attr->getSource()->getOptionText($value);
        ?>
        <p><?php echo $option_value; ?></p>
    <?php endif;?>
 <?php endforeach;?>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...