8

現代のテーマを適応させて、使用する新しいテーマを作成しています。

顧客のバスケットにすべての製品を表示する必要があります。私はこのコードを持っていますが、現在、最大 3 つのアイテムしか表示されません。getRecentItems()バスケット内のすべてのアイテムを表示する代わりに使用できる別のコマンドはありますか? 使用してみgetAllItems()ましたが、これは何もしないようです。

 <?php $items = $this->getRecentItems();?>
        <?php if(count($items)): ?>
            <ol id="cart-header" class="mini-products-list">
                <?php foreach($items as $item): ?>
                    <?php echo $this->getItemHtml($item) ?>
                <?php endforeach; ?>
            </ol>
        <?php else: ?>
            <?php echo $this->__('There are no items in your shopping Basket.') ?>
        <?php endif ?>

何か案は ?

4

3 に答える 3

19

チェックインSystem > Configuration > Checkout > Shopping Cart Side Bar

ミニカートに表示できる商品の数を設定する設定があります。

デフォルトでは、最近追加されたアイテムの最大表示数は 3 です。希望する数に増やすか、カート内のすべての製品を常に表示するには高い数に増やします。

編集:コメントに基づいてデフォルトのmagentoの動作をオーバーライドするには、次を使用できます。

<?php
    $session= Mage::getSingleton('checkout/session');
    $items = $session->getQuote()->getAllItems();
?>
        <?php if(count($items)): ?>
            <ol id="cart-header" class="mini-products-list">
                <?php foreach($items as $item): ?>
                    <?php echo $this->getItemHtml($item) ?>
                <?php endforeach; ?>
            </ol>
        <?php else: ?>
            <?php echo $this->__('There are no items in your shopping Basket.') ?>
        <?php endif ?>
于 2012-12-27T22:53:56.807 に答える
1

Mage_Checkout_Block_Cart_Sidebar メソッド getRecentItems() はカウントパラメータを受け入れます。この方法で呼び出すだけで、完全なカート アイテムを取得できます。

<?php $items = $this->getRecentItems(10000);?>
于 2016-06-29T10:05:41.820 に答える
0

ユーティリティに同意します。また、ショッピング カート サイド バーの部分で共有していただきありがとうございます。チェックアウトページにカートのアイテムをリストするモジュールがありました。これが私のコードです。

$quoteObject = $this->getQuote();
foreach($quoteObject->getAllItems() as $item)
{
  //do what you want here.
}

お役に立てれば。

于 2013-04-25T00:57:51.633 に答える