Jump to:

2082 Posts in 1002 Topics by 452 members

E-Commerce Modules

SilverStripe Forums » E-Commerce Modules » Pagination

Discuss about the various e-commerce modules available:
Ecommerce, SS Shop, SilverCart and SwipeStripe
Alternatively, have a look the shared mailinglist.

Moderators: martimiz, Nicolaas, Sean, frankmullenger, biapar, Willr, Ingo, Jedateach, swaiba, simon_w

Page: 1
Go to End
Author Topic: 4600 Views
  • grilldan
    Avatar
    Community Member
    135 Posts

    Pagination Link to this post

    I don't know if anyone has tried to add pagination to the products pages, but I successfully added it. If anyone wants to do this as well, my contact information is in my profile.

    If there is a big response to this, I will post a guide to do it, in here.

  • Oceanc
    Avatar
    Community Member
    7 Posts

    Re: Pagination Link to this post

    Would you mind if you post a link for your site ?

  • Martijn
    Avatar
    Community Member
    271 Posts

    Re: Pagination Link to this post

    Stevie Wonders how you did it

  • grilldan
    Avatar
    Community Member
    135 Posts

    Re: Pagination Link to this post

    First, add this code to "/ecommerce/code/ProductGroup.php"

    class ProductGroup_Controller extends Page_Controller {

    ...
       
    function ProductList() {
    if(!isset($_GET['start']) || !is_numeric($_GET['start']) || (int)$_GET['start'] < 1) $_GET['start'] = 0;
    $SQL_start = (int)$_GET['start'];
    $doSet = DataObject::get(
    $callerClass = "Product",
    $filter = "`ParentID` = '".$this->ID."'",
    $sort = "",
    $join = "",
    $limit = "{$SQL_start},8"
    );

    return $doSet ? $doSet : false;
    }

    In the above statement, the "8" in the $limit variable is how many results you would like per page.

    Then add this to "/themes/*_ecommerce/templates/Layout/ProductGroup.ss"

    <div id="pages">
    <% if ProductList.MoreThanOnePage %>
    <p>
    <% if ProductList.PrevLink %>
       <a href="$ProductList.PrevLink">&laquo; Previous</a> |
    <% end_if %>

       Page:
    <% control ProductList.Pages %>
    <% if CurrentBool %>
    $PageNum
    <% else %>
    <a href="$Link" title="Go to page $PageNum">$PageNum</a>
    <% end_if %>
    <% end_control %>

    <% if ProductList.NextLink %>
       | <a href="$ProductList.NextLink">Next &raquo;</a>
    <% end_if %>
    </p>
    <% end_if %>
    </div>

    *edit*

    I cant post a link to the site, because it was done via freelance, and is still under development.

  • jondbaker
    Avatar
    Community Member
    19 Posts

    Re: Pagination Link to this post

    Going along with your example, is there then a way to have next/previous links within the Product pages that allows you to click between them once you made an initial choice on the ProductGroup page?

    I'd like to translate this to my portfolio page. I have a ProjectsHolder page that displays thumbnails that each link to different Projects. I'd like to have a feature on each Project page that displays 'previous/next' links to navigate between Projects (instead of the user having to go back to the original ProjectHolder to access other Projects).

  • biapar
    Avatar
    Forum Moderator
    435 Posts

    Re: Pagination Link to this post

    I think a pagination with JQuery....

    4600 Views
Page: 1
Go to Top

Want to know more about the company that brought you SilverStripe? Then check out SilverStripe.com

Comments on this website? Please give feedback.