0

製品ループの外側のラベルを知っている属性の ID を取得しようとしています。基本的に、ラベルをIDに変換したいだけです。

属性コードは new_brands で、ラベルは TESTONE です。250 であることがわかっている ID を取得しようとしています。

カテゴリを属性ラベル (TESTONE) と呼び、これを次のような変数に格納しました

$brandname = Mage::registry('current_category')->getName();

その情報を使用して、ラベル TESTONE をその ID に変換しますが、製品ループの外に置きます。

目的は、このようなフィルターで id を使用するブランド ページのカスタム テンプレートを作成することです。

$collection->addFieldToFilter(array(

    array('attribute'=>'pos_brands','eq'=>$brandid),array('attribute'=>'new_brands','eq'=>'250')
));

それ以外の場合は、逆に機能するソリューションに満足しています。つまり、ID からラベルを取得しました。

4

1 に答える 1

0

私が理解したように、あなたの属性はドロップダウン ( $entityType = "catalog_product", $attrCode = "new_brands", $withEmpty = false) です:

$data = Mage::getModel('eav/entity_attribute')
  ->loadByCode($entityType, $attrCode)
  ->setSourceModel('eav/entity_attribute_source_table')
  ->getSource()
  ->getAllOptions($withEmpty);

$set = array();
foreach ($data as &$row) {
  $set[$row['label']] = $row['value'];
}
var_dump($set);
于 2012-08-24T06:34:25.050 に答える