Magento 2: кнопка «Добавить в корзину» на странице категории с предварительно выбранными атрибутами настраиваемого дочернего элемента - PullRequest
0 голосов
/ 26 июня 2019

Я хочу создать кнопку добавления в корзину для дочернего элемента настраиваемого продукта на странице категории.

Я пытаюсь использовать этот код, где добавляю скрытые поля super_attribute со значениями атрибутов.

<?php $postParams = $block->getAddToCartPostParams($_product); ?>

<form data-role="tocart-form" action="<?php echo $postParams['action']; ?>" method="post">
    <input type="hidden" name="product" value="<?php echo $_product->getId(); ?>">
    <input type="hidden" name="<?php echo Action::PARAM_NAME_URL_ENCODED; ?>" value="<?php echo $postParams['data'][Action::PARAM_NAME_URL_ENCODED]; ?>">
    <?php foreach ($attributeOptions as $attr){ ?>
        <input type="hidden" name="super_attribute[<?php echo $_child->getResource()->getAttribute($attr)->getData("attribute_id")?>]" value="<?php echo $super_attr[$attr] ?>">
    <?php } ?>
    <?php echo $block->getBlockHtml('formkey')?>
    <div class="fieldset">
        <div class="actions">
            <button type="submit" title="<?php echo $block->escapeHtml(__('Add to Cart')); ?>" class="action tocart primary">
                <span><?php echo __('Add to Cart') ?></span>
            </button>
        </div>
    </div>
</form>

Результат (например)

<form data-role="tocart-form" action="baseurl/product-name?options=cart" method="post">
    <input type="hidden" name="product" value="5858">
    <input type="hidden" name="uenc" value="abcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcd">
    <input type="hidden" name="super_attribute[185]" value="10">
    <input type="hidden" name="super_attribute[186]" value="12">
    <input name="form_key" type="hidden" value="DDAAkjkkkkkkj">
    <div class="fieldset">
        <div class="actions">
            <button type="submit" title="Add to Cart" class="action tocart primary">
                <span>Add to Cart</span>
            </button>
        </div>
    </div>
</form>

Но когда я пытаюсь добавить в корзину, я перенаправляется на страницу продукта с ошибкой "Вам нужно выбрать параметрыдля вашего товара. "

Я работаю над версией 2.3.3.

У вас есть предложения о том, как указать параметры для добавления в корзину в кнопке добавления в корзину?Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...