Magento view all dugme u paginaciji

Magento: kako da dodate dugme «Pogledaj sve» (View all) u Magento paginaciji

Ukoliko vas interesuje kako da kreirate dugme «pogledaj sve» (view all) i ubacite ga u Magento paginaciju na listu kategorija (category list) evo kako to možete da izvedete:
Prvo treba da nađemo “pager.phtml” fajl u našem direktorijumu radnih templejta. Kada to učinimo, potrebno je da dodamo sledeći kod:

[php]
<a href="<?php echo $this->getLimitUrl(‘ all ‘)?>" title="< ?php echo $this->__(‘ View All Products ‘) ?>">
<?php echo $this->__(‘ View All ‘) ?>
[/php]

Ovim smo dodali naš link na paginaciju. Jedina važna stvar ovde jeste sledeći segment koda:

[php]
$this->getLimitUrl (‘all’)
[/php]

Ovaj mali segment koda prebacuje naš link sa “limit” parametra na “all”. Kada sad kliknemo na njega, on će nam dati ceo listing kategorija. Problem koji se javlja jeste da naša vrednost sa “limit” prelazi na “all” i postaje trajno zapamćena (zapravo sve dok sesija traje). Zato moramo da napišemo nekoliko linija koda kako bismo ovo popravili. Najjednostavniji način jeste da pronađemo “Toolbar.php” fajl u Magentu i da nađemo _construct() method. Poslednja linija metoda je:

[php]
$this->setTemplate(‘ catalog/product/list/toolbar.phtml ‘);
[/php]

koja prebacuje naš editovani templejt na ovaj model. Nakon prethodne linije dodajte i sledeći kod:

[php]
//ADDED FOR "VIEW ALL" PAGINATION BUTTON
$defaultLimit = $this->getDefaultPerPageValue();
Mage::getSingleton(‘catalog/session’)->setData("limit_page",$defaultLimit);
[/php]

Gore pomenute linije koda će nam omogućiti sledeće:

  1. Ukloniće podrazumevani limit iz Magenta za paginaciju (postaviće ga kroz Magento Admin panel)
  2. Prebaciće naš limit na podrazumevano polje, zato što ukoliko ga ne resetujemo, on će izlistati sve proizvode iz svih kategorija čim ga otvorimo (i tako sve dok nam traje sesija).

Nadamo se da ste uspešno uneli potrebne izmene.
Tekst je preuzet sa veb sajta inchoo.net u okviru serijala tekstova za Implementek Magento Srbija i e-trgovina.

Ostali postovi