【问题标题】:Trouble with getting magento attributes while checkout结帐时获取magento属性的问题
【发布时间】:2011-08-05 11:46:19
【问题描述】:

请帮助在结帐时获取 magento 属性。我有“only_registered”属性。我试图通过此代码获取属性:

$cart = Mage::getSingleton('checkout/session')->getQuote()->getAllVisibleItems();
foreach ($cart as $_item){
  $_product = Mage::getModel('catalog/product')->load($_item->getProduct());
  $registeredonly = $_product->getRegisteredOnly();
}

但此代码会产生 magento 错误。

Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1";i:1;s:4723:"#0 /work/www/topps.loc/lib/Zend/Db/Statement.php(300): Zend_Db_Statement_Pdo->_execute(Array)

【问题讨论】:

    标签: magento attributes checkout


    【解决方案1】:

    我可以在代码中看到以下错误:

    $_product = Mage::getModel('catalog/product')->load($_item->getProduct());
    

    应该是:

    $_product = Mage::getModel('catalog/product')->load($_item->getProductId());
    

    我看到你说变量名是“only_registered”,所以你应该通过以下方式访问它:

    $registeredonly = $_product->getOnlyRegistered();
    

    如果这不起作用,只需这样做:

    $registeredonly = $_product->getData('only_registered');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-26
      • 1970-01-01
      • 1970-01-01
      • 2011-08-02
      • 2013-06-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多