2016-08-27 8 views
0

私自身の製品属性からオプションの値を取得したいと考えています。その属性の「ストア所有者のカタログ入力タイプ」はドロップダウンです。すべてのオプションのために我々は3つの値を持っている私は、このコードを試してみました、「管理者」、「ストアビューをデフォルトの」プロダクト属性のオプション値の取得

「デフォルトです」:

//eavConfig is \Magento\Eav\Model\Config class 
$attribute = $this->eavConfig->getAttribute('catalog_product', 'designer_id'); 
$options = $attribute->getSource()->getAllOptions(); 
var_dump($options); 

私は($オプション)のvar_dumpとき、私はオプションの配列を見ることができますvalueは "value"と "label"であり、 "value"はoption_idで、 "label"は "Default Store View"フィールド値です。

すべてのフィールド(「既定値」、「管理者」、「既定のストアビュー」)の値を取得する方法はありますか?

Magento1で

答えて

1

管理ストアのラベルを取得するにはstore emulationを使用してください。 Magento2で

デフォルトストアビュー

$formOptions = $this->productAttributeRepository->get('attribute')->getOptions(); 
foreach ($formOptions as $formOption) { 
    $name = $formOption->getLabel(); 
} 

管理者:

$this->storeManager->setCurrentStore('admin'); 
// same code 

がデフォルトです:

// same code 
$formOption->getIsDefault(); 
+0

@LordHansoloはありませんあなたの質問に答える? –

+0

属性ラベルを取得するためにストア全体を管理者に設定することはあまり賢明ではありません。 –

関連する問題