2014-10-08 56 views
0

试图从外部php文件访问magento购物车,我已加载Mage,并且能够访问产品&类别,但由于某种原因,我无法访问购物车信息。magento - 在外部PHP文件中访问购物车

店位于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

尝试

// 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

+0

不幸的是,我们仍然在1.7.2上这里来,没有工作! – user2355278 2014-10-08 15:40:35

+0

我只是测试v1.7.0的代码,它确实有效。你遇到了什么错误?你在最后添加了'echo $ cartItemsCount'吗? – 2014-10-08 15:51:15

+0

是的 - 一个0是我得到一些原因:(所有其他集成工作正常与产品/类别它只是购物车/会话位..让我的事情这是什么与cookie – user2355278 2014-10-08 15:55:03