我需要能够从我通过 jQuery 的 post 函数发布到的自定义 PHP 文件中更新用户购物车中的产品数量。我正在尝试使用 Magento 的功能,但我只得到一个空白页。有人知道如何更新购物车数据吗?
这就是返回空白页的原因...
<?php
include_once '/app/Mage.php';
$test = Mage::getModel('checkout/cart')->getQuote()->getData();
var_dump($test);
?>
首先,在您的 magento 文件夹(index.php 所在的位置)中尝试这个脚本,以便包含路径是相对的,
第二:
<?php
require_once "app/Mage.php";
Mage::app('default'); // initialize -the- app so you could access the singletons (like sessions, quotes, etc);
$test = Mage::getSingleton('checkout/cart')->getQuote()->getData(); // load the cart singleton
var_dump($test);
// take note that there isn't a closing PHP tag.. just observing the Zend Coding standards
此外,在处理与会话相关的单例(购物车、报价单)时,您可能希望获取和恢复会话 ID(如果已知)。请记住,从您的自定义 PHP 文件进行测试和从实际的 magento 应用程序进行测试会产生不同的 SID。您必须提供一种以某种方式在两者之间“共享”它的方法。在 之后插入以下内容Mage:app();
:
$frontend = Mage::getSingleton('core/session', array('name' => 'frontend'));
$frontend->setSessionId($sid);