2012-12-27 15 views
8

Sto adattando il tema moderno per creare un nuovo tema da utilizzare. Sono relativamente nuovo a Magento ma trovo che sia una grande piattaforma per l'e-commerce. Ecco il mio problema:Ricevi tutti i prodotti nel carrello al posto del più recente

Devo visualizzare tutti i prodotti nel carrello dei clienti. Ho questo codice e attualmente visualizza solo fino a tre elementi. C'è un comando diverso che posso usare al posto di getRecentItems() per visualizzare tutti gli elementi nel loro carrello? Ho provato a utilizzare getAllItems() ma questo non sembra fare nulla.

<?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 ?> 

Qualsiasi idea?

+0

Grande domanda, provare a collegarsi a qualcosa che ha un risultato simile a quello che stai cercando di fare però. –

risposta

17

Arrivo System > Configuration > Checkout > Shopping Cart Side Bar

C'è un'impostazione per impostare il numero di prodotti che possono essere visibili nel mini cart.

Visualizzazione massima Articoli aggiunti di recente per impostazione predefinita è 3. Aumentarlo a ciò che si desidera o piuttosto un numero elevato per mostrare sempre tutti i prodotti nel carrello.

MODIFICA: per sovrascrivere il comportamento predefinito di Magento in base ai commenti, è possibile utilizzare quanto segue.

+0

Grazie! Sai comunque che posso farlo usando un comando PHP poiché questo sarà un tema che renderà frustrante per gli amministratori se devono cambiare configurazione per farlo funzionare correttamente? – George

+0

Modificata la mia risposta sopra. Fammi sapere se funziona. –

+0

Funziona alla grande! Grazie per il tuo aiuto :) – George

0

Sono d'accordo con l'utilità. E grazie per aver condiviso la parte sulla barra laterale del carrello. Ho avuto un modulo che elenca gli articoli del carrello nella pagina di pagamento. Ecco il mio codice per riferimento.

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

Spero che questo aiuti.

1

Il metodo Mage_Checkout_Block_Cart_Sidebar getRecentItems() accetta un parametro conteggio , basta richiamarlo in questo modo per recuperare gli elementi del carrello completo.

<?php $items = $this->getRecentItems(10000);?> 
Problemi correlati