0

こんにちは私はカートアイテムから製品属性の管理者値またはID(多言語であるため)を取得しようとしています。私はこのようなコードの多くのバージョンを試しました:

    $session = Mage::getSingleton('checkout/session');
    foreach ($session->getQuote()->getAllItems() as $item) {
        $_product = Mage::getModel('catalog/product')->load($item->getId());
        $attribute = $_product->getAttribute('producttype');
    }

しかし、私はfalseまたはnullを取得するだけです。また、ストア固有の言語値ではなく、属性admin value / idを確実に取得するにはどうすればよいですか?たぶん、最初に商品をロードしなくても、見積もりアイテムから直接アイテム属性を読み取るためのさらに良い方法がありますか?前もって感謝します!


で解決:

    $session = Mage::getSingleton('checkout/session');
    foreach ($session->getQuote()->getAllVisibleItems() as $_item)
    {
        $_product = Mage::getModel('catalog/product')->load($_item->getProductId());
        $attributeId = $_product->getProducttype();
    }

テキストではなく値IDで比較します。

4

1 に答える 1

1

特定のショップの商品の価値を取得する必要があり、見積もりの​​アイテムが別のストアビューに属している場合は、次の操作を行うことができます。

$_product = Mage::getModel('catalog/product')
    ->setStoreId($adminStoreId)
    ->load($item->getId());

$value = $_product->getData('producttype');
于 2013-02-05T11:12:57.913 に答える