4

コーディングについてサポートが必要です。対応するMagentoIDを持つすべてのメーカーのリストを取得する必要があります。それは可能ですか?助けてください。ありがとう。私はいくつかの改造を試しましたが、どちらか一方しか入手できません。可能であれば、plsはこの最後の1つで役立ちます。よろしくお願いします

$attribute = Mage::getModel('eav/config')->getAttribute('catalog_product', 'manufacturer');

foreach ( $attribute->getSource()->getAllOptions(true, true) as $option){
     $attributeArray[$option['value']] = $option['label'];
     }  

foreach($attributeArray as $key=>$val){
echo $val;

}
4

1 に答える 1

13

これが必要な形式は正確にはわかりませんが、次の例は、必要な値を取得する方法を示しています。

$attribute = Mage::getModel('eav/entity_attribute')
                ->loadByCode('catalog_product', 'manufacturer');

$valuesCollection = Mage::getResourceModel('eav/entity_attribute_option_collection')
            ->setAttributeFilter($attribute->getData('attribute_id'))
            ->setStoreFilter(0, false);

$preparedManufacturers = array();            
foreach($valuesCollection as $value) {
    $preparedManufacturers[$value->getOptionId()] = $value->getValue();
}   


if (count($preparedManufacturers)) {
    echo "<h2>Manufacturers</h2><ul>";
    foreach($preparedManufacturers as $optionId => $value) {
        echo "<li>" . $value . " - (" . $optionId . ")</li>";
    }
    echo "</ul>";
}
于 2012-06-04T20:58:03.160 に答える