We feel that ALPs pages offer a poor customer experience for the below reasons:
  • Long lists of filters (that behave differently to regular filters)
  • Filters that display do not hold the original query. So for instance if you had a page /onsale?discount=40 where you want to display all items over 40% discount, if you then click a filter (say /jackets) the link it takes you to would be /jackets/onsale and would not include ?discount=40. Making the campaign to sell items over a certain discount difficult.
  • The items that display on the page are limited to 100 which is confusing for the customer who may just want to scroll items and if they do will currently think that is all the items that are available (we have had customer specifically tell us this)
2 examples of use cases on our site where ALPs pages are necessary:
  • Brand Pages with lots of items
  • Sale/Clearance (where we will often add a query like ?discount=40)
  • Adhoc campaigns
We are aware we can customise these pages in design time, and have done so, but they still have their limitations and can require quite a bit of manual work per page if looking to maximise UX.
It seems in the Citrus Lime platform if you get to over 500 items the page begins to lag and ALPs become necessary (we had a scenario this weekend where a page with 1600 items crashed our customers (and ours when we had it reported) iPhones), we have therefore had to set our ALPs limit much lower. My overall preference would be that ALPs pages were not necessary and that the customer should be able to just start scrolling should they choose to. This is not unreasonable (for instance this page on John Lewis has 9000 items! https://www.johnlewis.com/browse/women/womens-dresses/_/N-flw). It looks like it John Lewis achieve this with paging.
EDIT: The issue mentioned above with lagging (that was happening on our site with just a few hundred items) was specific to our site which we have resolved with Citrus. The lag/page load now kicks in more around 1000 items.
If Citrus did not want to change how regular pages are handled then my suggestion would be to implement paging on Citrus ALPs. This would mean everything else behaving in a similar way to currently but if a retailer has the amount of products that load to be 100 then at the bottom a "Load More" (or better an auto load as you approach it) would load the next 100 items. This in my opinion would give a much better customer experience.
The other change would be to respect queries so in my example at the start of the post with /onsale?discount=40 it would pull through to any filters clicked.