如何在“catalog_product”集合中获取产品属性(全部)?

时间:2013-06-12 15:01:54

标签: magento collections magento-1.7 magento-1.6 meta-key

我想获得产品系列中产品的所有属性。

我试试这个

$samp_pro = Mage::getModel('catalog/product')->load(1223)->getData();

它会加载属性元关键字

但是当我在收藏中加载它时,没有获得 meta关键字属性, 代码是

$products1 = Mage::getModel('catalog/product')->getCollection()
                 ->addAttributeToSelect('*')
                 ->addFieldToFilter('meta_keyword', array('like' => '%'.$metaData.'%'))
                 ->addAttributeToSort('name', 'ASC')
                 ->getData();

我需要在集合中加载元关键字属性,帮我修复此问题

感谢。

3 个答案:

答案 0 :(得分:1)

最好你会尝试以下代码:

$connection = Mage::getSingleton('core/resource')->getConnection('core_read');

    $sql        = "SELECT * FROM <table-prefix>_catalog_product_entity_text WHERE attribute_id=(SELECT attribute_id FROM <table-prefix>_eav_attribute WHERE attribute_code='meta_keyword') AND value LIKE '%$metaData%'";

    $products1       =$connection->fetchAll($sql);

答案 1 :(得分:0)

尝试手动添加:

Mage::getModel('catalog/product')->getCollection()
    ->addAttributeToSelect('*')
    ->addAttributeToSelect('meta_keyword')
;

答案 2 :(得分:0)

我在自己的系统上运行了这个,并且meta_keyword字段确实通过了。

然而,一个区别是,在第一个示例中,您正在加载模型,而在第二个示例中,您正在加载一个集合。因此,正在执行的SQL存在巨大差异。