Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We've moved the forum!

Please use forum.silverstripe.org for any new questions (announcement).
The forum archive will stick around, but will be read only.

You can also use our Slack channel or StackOverflow to ask for help.
Check out our community overview for more options to contribute.

E-Commerce Modules /

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, Ed, frankmullenger, biapar, Willr, Ingo, Jedateach, swaiba

Sorting Products in the PageTree


Go to End


4 Posts   1715 Views

Avatar
ambient

Community Member, 130 Posts

6 December 2012 at 5:33am

Hi All :)

Does anyone know if it's possible to have my product list display in the same order that it is in my PageTree?
I'd like to be able to use the drag and drop to change the order of the products.

I know that if I was to move my Contact page to the top of the PageTree and save it it will move to the front spot in my navigation.
I kind of thought that the products would do the same.

Any help would be appreciated.

Thanks!

Avatar
Jedateach

Forum Moderator, 238 Posts

6 December 2012 at 9:19am

Hi Ambient,

If you can find the right place in code, it should just be a matter of using the SiteTree "Sort" field for sorting. However, if your products are nested, that is a different story.

regards
Jeremy

Avatar
ambient

Community Member, 130 Posts

7 December 2012 at 12:38am

Hi Jeremy,

Could you expand a little on that? I've played around with
SiteTree::$default_sort =
and
static $default_sort =

But I can't get the products to display in the same order on the live site as they do in the Admin PageTree

Avatar
Jedateach

Forum Moderator, 238 Posts

7 December 2012 at 10:07am

If you are using the shop module, look at the ProductCategory class. You can pass ?sort=Sort in the url to sort by Sort, but you need to make sure it is in the sort options array:

ProductCategory::set_sort_options(array(
    'Sort' => 'Default',
    'URLSegment' => 'Alphabetical',
    'Price' => 'Lowest Price'
));

Note that the default sort is 'FeaturedProduct', and is currently hard coded. I've made an issue here: https://github.com/burnbright/silverstripe-shop/issues/123