0

製品ステータスと可視性オプションのわかりやすいテキストを取得するにはどうすればよいですか? たとえば、1 または 2 ではなく「有効」または「無効」、同様に可視性については、1、2、3、または 4 ではなく「個別に表示されない」、「カタログ、検索」などですか?

$product->getStatusテキスト値を取得して返すことができる関数がどこかにあると思いますか?可視性のための同様のもの?

簡単なリストを作成しようとして、magento に慣れようとしているだけです。

$products = Mage::getModel('catalog/product')
    ->getCollection();

foreach ( $products as $product ) { 
  echo $product->getSku();
  echo $product->getStatus();
  echo $product->getVisibility();
}

しかし、数値ではなく管理ページと同じようにステータスと可視性を表示したいと考えています。

編集:ムファダルの答えの助けを借りて、私の最終的な解決策は次のとおりでした。

$products = Mage::getModel('catalog/product')
    ->getCollection()
    ->addAttributeToSelect('sku')
    ->addAttributeToSelect('status')
    ->addAttributeToSelect('visibility')
    ->addAttributeToSort('sku', 'asc');

foreach( $products as $product ){
    echo 'SKU: ' .$product->getSku() . '<br/>';
    echo 'Visibility: ' . $product->getResource()->getAttribute('visibility')->getFrontend()->getValue($product); . '<br/>';
    echo 'Status: ' . $product->getResource()->getAttribute('status')->getFrontend()->getValue($product); . '<br/>';
}

->addAttributeToSelect('*')getResource 呼び出しが機能する前に、select で各属性を指定するか、指定する必要がありました$product->getResource()->getAttribute('status')->getFrontend()->getValue($product);

4

2 に答える 2

2

あなたも試すことができます:

$product->getAttributeText('status')

これは、場合によっては機能し、他の場合には機能しませんが、機能する場合は、リソースを調べるよりも短くて簡単です。

于 2013-11-07T18:00:21.430 に答える