尝试从外部php文件访问magento购物车,我已经加载了Mage并且能够访问产品&类别,但由于某种原因,我无法访问购物车信息。
商店位于www.domain.com/shop/ PHP文件位于www.domain.com/file.php Magento cookie设置设置为' /'
我已经查看并尝试了许多如何获取信息的示例,但没有一个有效,我现在的代码是:
<?php
require_once '/home/admin/public_html/shop/appMage.php';
Mage::app();
Mage::getSingleton('checkout/cart', array('name' => 'frontend'));
$cartItemsCount = Mage::getSingleton('checkout/cart')->getItemsCount();
$cartTotal = Mage::helper('checkout')->formatPrice(Mage::getSingleton('checkout/cart')->getQuote()->getGrandTotal());
echo 'You have '. $cartItemsCount . ' item(s) in your cart. <a class="cartgo" href="'.Mage::helper('checkout/cart')->getCartUrl().'">Checkout</a>';
if($cartTotal > 0){ echo '<span>[£'.$cartTotal.']</span>'; }
echo '</a>';
?>
它在magento站点内工作得非常好,但由于某种原因,它不能从这个外部文件中运行。即使购物车中有产品,它也会返回0.
任何指针?
答案 0 :(得分:1)
尝试
// Mage init
require_once '../../app/Mage.php';
umask(0);
Mage::init('default');
Mage::getSingleton('core/session', array('name' => 'frontend'));
// Get customer session
$session = Mage::getSingleton('customer/session');
// Get cart instance
$cart = Mage::getSingleton('checkout/cart');
$cart->init();
$cartItemsCount = $cart->getItemsCount();