6

ajax経由でロードするカートサイドバーのレンダリングされたバージョンをロードしようとしています...私はたくさん検索してきましたが、すべてのajaxリクエストを処理するカスタムモジュールを作成するのが最善の方法のようです。カスタム モジュールを作成しましたが、すべてが機能しているように見えますが、sidebar.phtml を表示すると正しくレンダリングされません。カートに何も入っていないかのように表示されます。(セッション情報を使用せずにファイルを読み取ろうとしているだけだと思います)。私はたくさん検索しましたが、私がやろうとしていることに関連するものは何もないようです。

これは、基本的に checkout/cart/sidebar.phtml ファイルのコピーと過去である phtml ファイルをロードするためにカスタム コントローラーで使用しているコードです。

$layout = $this->loadLayout();


$block = $this->getLayout()->createBlock(
'Mage_Core_Block_Template',
'PPWD_Custom',
array('template' => 'custom/custom.phtml')
);
echo $block->toHtml(); 

ありがとう

4

1 に答える 1

3

問題は不正なブロック タイプにあります。代わりにMage_Core_Block_Templateを使用する必要がありますMage_Checkout_Block_Cart_Sidebar。このような:

$this->getLayout()->createBlock(
    'checkout/cart_sidebar',
    'PPWD_Custom',
    array('template' => 'custom/custom.phtml')
);
于 2011-07-27T15:09:13.400 に答える