Размещение кнопки "Добавить в корзину" на домашней странице в Magento

Я пытаюсь создать торговый портал в Magento. На главной странице я хочу показать кнопку "добавить в корзину" рядом с каждым товаром, показанным там. Домашняя страница - это простая статическая CMS-страница. Когда я попробовал этот код,

<button class="button btn-cart" title="Add to Cart" onclick="setLocation('/n/magento/checkout/cart/add/product/644/qty/1')" type="button"><span><span>Add to Cart</span></span></button>

где 644 - идентификатор продукта, страница была перенаправлена ​​на страницу корзины, но продукт не добавляется в корзину. Я попробовал это в Firefox, Chrome и IE, но ни с чем. Я искал много сайтов для этого, но не смог найти ничего полезного. Если кто-то может помочь в этом, это будет очень полезно. Заранее спасибо.

7 ответов

Решение

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

Я не могу получить кнопку "Добавить в корзину" изнутри редактора wysiwyg администратора, так как для этого требуется вызов классов Magento через PHP, что невозможно из редактора администратора (это не для кода PHP).

То, что я сделал, называлось шаблоном в админке так:

<block type="core/template" name="home_products" template="home/product.phtml">

И затем, внутри этого файла, я использовал функции PHP, чтобы получить форму, которая требуется Magento для правильной кнопки "Добавить в корзину". Я просто загрузил продукт через каталог / модель продукта, а затем создал форму так же, как то, что внутри catalog/product/view/addtocart.phtml файл. Кроме того, в последних версиях Magento, форма должна также присутствовать внутри формы, чтобы она работала правильно.

Попробуйте эту ссылку:

Добавить в корзину Надеюсь, это поможет.

Или попробуйте это:

<?php if($_product->isSaleable()): ?>
    <button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button>
<?php else: ?>
    <p class="availability out-of-stock"><span><?php echo $this->__('Out of stock') ?></span></p>
<?php endif; ?>

Очистите кеш и перезагрузите страницу.

Это работает, попробуйте это:

$product = Mage::getModel('catalog/product')->load(1);


echo '<a href=' . Mage::helper('checkout/cart')->getAddUrl($product) .'>CONFIRM AND PROCEED TO CHECKOUT </a>';

Будет отлично работать
передать ваш продукт как $_product

<?php if($_product->isSaleable()): ?>
<button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="setLocation('<?php echo $this->getAddToCartUrl($_product) ?>')"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button>
<?php else: ?>
<p class="availability out-of-stock"><span><?php echo $this->__('Out of stock') ?></span></p>

Попробуй это

<button type="button" title="<?php echo $this->__('Add to Cart') ?>"
class="button btn-cart" 
onclick="setLocation('<?php echo Mage::getUrl('checkout/cart/add/').'product/'.$_product->getId().'/'; ?>')"><span><span><?php echo $this->__('Add to Cart') ?></span></span></button>

Поместите код ниже в ваш файл.phtml.

$productId = '168';   // Your Product Id
$_product = Mage::getModel('catalog/product')->load($productId);

<button type="button" title="<?php echo $this->__('Add to Cart') ?>" class="button btn-cart" onclick="setLocation('<?php echo Mage::helper('checkout/cart')->getAddUrl($_product); ?>')"><span><span><img src="<?php echo $this->getSkinUrl('images/buy.jpg') ?>" alt="" /></span></span></button>

Код взят здесь: http://chandreshrana.blogspot.in/2016/03/adding-custom-add-to-cart-button-in.html

Добавить ссылку в корзину для вашего продукта в любом месте на сайте Magento:

Следующий код может быть полезным:

$ product = Mage:: getModel ('catalog / product') -> load ($ YourProductID);

echo Mage:: helper ('checkout / cart') -> getAddUrl ($ product);

Другие вопросы по тегам