从Magento数据库中提取SKU,制造商和自定义属性

时间:2016-04-19 22:29:58

标签: mysql magento

我尝试使用SKU,制造商和名为' GTIN'的自定义属性从数据库中提取完整的产品列表。

我真的很挣扎于自定义属性部分。

此声明适用于拉制造商和SKU

SELECT cpe.sku, m1.manufacturer, 
FROM catalog_product_entity AS cpe
INNER JOIN exportview_manufacturer AS m1 ON cpe.entity_id = m1.entity_id

我的MySQL非常差,我似乎无法获得此自定义属性。我已经在网上找到了以下声明,我知道我需要完成这项工作所需的所有细节,但到目前为止,我一直在试图实现它的一团糟

SELECT e.entity_id AS product_id, var.value AS product_name
FROM catalog_product_entity e, eav_attribute eav, catalog_product_entity_varchar var
WHERE
e.entity_type_id = eav.entity_type_id
AND eav.attribute_code = 'gtin'
AND eav.attribute_id = var.attribute_id
AND var.entity_id = e.entity_id

我只需要第一个声明也要包含' gtin'专栏,但加入是我不足的地方。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

您需要创建一个PHP脚本来获取所有产品及其属性。因此,首先在Magento根目录上创建all_product.php文件并添加以下代码。

error_reporting(E_ALL);
ini_set("display_errors", 1);    

require_once '../app/Mage.php';
Mage::app(); 

 $collection = Mage::getModel('catalog/product')->getCollection()
->addAttributeToSelect('*') // select all attributes
->setPageSize(5000) // limit number of results returned
->setCurPage(1); // set the offset (useful for pagination)

foreach ($collection as $product) {
 echo $product->getName(); //get name
/*you can get any attribue you want like name above. Even you can get all custom attribule for product for that you need to use print_r($collection->getData()) above foreach*/
}

希望它能奏效。