我能够从magento商店获取名称,图片URL,描述等属性。但是获取产品URL非常繁琐。任何帮助?感谢。
include_once 'app/Mage.php';
umask(0);
Mage::app();
$products = Mage::getModel('catalog/product')->getCollection();
$products->addAttributeToSelect('*');
$products->load();
$baseUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB);
foreach ($products as $id => $product):
$output .= '
<product>
<name><![CDATA['. $product['name'] .']]></name>
<description><![CDATA['. $product['description'] .']]></description>
<url>'. $product['url_key'] .'</url>
<image>'. $baseUrl ."media/catalog/product". $product['image'] .'</image>';
</product>
答案 0 :(得分:1)
产品网址只是:
$product->getProductUrl()
事实上,如果在Magento对象上使用getter和setter而不是数组访问会更好,因为它允许其他开发人员以传统方式提供覆盖。因此,请使用$product['description']
而不是$product->getDescription()
。这将避免将来出现问题。
答案 1 :(得分:0)
您可以简单地使用:
,而不是自己计算基本网址'<image'>.Mage::helper('catalog/image')->init($product).'</image>'
帮助程序内置了__toString()
函数,因此在用作字符串时会自动生成URL。它还会处理水印,调整大小,裁剪以及您通常看到的所有其他事情,但理所当然。