magento - 访问外部PHP文件中的购物车

时间:2014-10-08 14:56:02

标签: magento magento-1.7

尝试从外部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>[&pound;'.$cartTotal.']</span>'; }
echo '</a>';
?>

它在magento站点内工作得非常好,但由于某种原因,它不能从这个外部文件中运行。即使购物车中有产品,它也会返回0.

任何指针?

1 个答案:

答案 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();

请参阅magento 1.8 add product to cart using php