0

このような getProductListJSON javascript 関数を呼び出すコードの一部があります。

$.getJSON(storeRootUrl + "jsoncatalog/product/list/id/"+id, function(jsonObj) {
    renderProductList(jsonObj,sid);
});

画像、商品名、説明、ID を返します。

「シンプル、構成可能など」のように、製品のタイプなど、もう少し返してほしい

レイアウトに基づく:

<jsoncatalog_product_list>
        <reference name="content">  
            <block type="paypal_catalog/json_product_list" output="toHtml" name="product_list"/>
        </reference>
    </jsoncatalog_product_list>

app\code\community\Paypal\Catalog\Block\Json\Product\List.php を見ると (適切な場所を探していることを願っています)、次のコードが表示されますが、データが返されると想定しています。

public function _toHtml()
    {
        try {
            $array = array();
            $category = Mage::registry('pp_current_category');
            if (!is_null($category)) {
                $array = Mage::helper('paypal_catalog')->getProducts($category->getId());
                $this->setCurrenCategoryKey($category->getId());
            } else {
                $array = array('category' => '', 'items' => array());
            }
            return Mage::helper('core')->jsonEncode($array);
        } catch (Exception $e) {
            Mage::logException($e);
            return false;
        }
    }

必要な追加フィールドはどこに追加できますか?

私は正しい軌道に乗っていますか、それともデータを返す正しいテンプレート/phpコードを見ていますか?

ここで私を助けてください、私は 2 年間 Magento の開発を行っていないので、このことの割り当てをもう一度学習する必要があります....

前もって感謝します。

4

2 に答える 2

1

これは実際に出力が行われる場所です。ただし、より深く掘り下げる必要があります。この行を見てください:

$array = Mage::helper('paypal_catalog')->getProducts($category->getId());

これにより、出力ルーチンで jsonEncode が使用する配列が埋められます。これはおそらく のどこかにありapp/code/community/Paypal/Catalog/Helper/ます。

または、それを後処理$arrayしてフィールドに追加することもできます。ただし、代わりにヘルパー メソッド内でより良い運 (およびパフォーマンス) が得られる可能性があるため、強くお勧めしませんgetProducts

幸運を。

于 2013-08-09T06:07:57.610 に答える