Sequencing on Magento 2 is handled by the by the Category Merchandising plugin when Category Merchandising is enabled through the user-interface.
What happens within Magento 2 when Category Merchandising is installed?
After the steps outlined under Get started with Category Merchandising on Magento 2 are completed a new sorting method will be added to the store. The new sorting method will reference sequences created within Nosto and serve products through Magento's native category handling.
This essentially means that no changes to templating should be needed because the products coming out from Magento are just in a different order but otherwise adheres to the general structure configured.
How does Category Merchandising work together with caching on Magento 2?
The first shopper that visits a category where sequences are configured will get a response through an internal GraphQL API directly from Nosto. All subsequent visitors that fall into the same segment and sequence will receive a cached version of the category page. The cache will be busted only in cases where the contents of the sequence have changed between visits.
Category Merchandising supports both internal full-page-caching within Magento 2, and popular 3rd party solutions such as Varnish.
How does Category Merchandising's sub-feature for Segmentation & A/B Testing work together with the cache?
Enabling advanced sequencing & targeting for Segmentation & A/B Testing:
Nosto offers the possibility to deliver Category Merchandising based on different segments. The segments can be configured in Nosto.
One challenge to deliver segmentation is to overcome the Magento cache, so that different user segments will not be exposed to the same sorting but to a custom sorting & sequence.
The segmentation logic is handled by the Nosto client script. Nosto's CMP module will append
nosto-cmp-mapping block which contains a map of category urls and hashes. This will be used as a mechanism to generate different cached versions based on segments.
The client script will append a query parameter to the category url like
example.com/category?key=xyz. Each sequence with a separate segment will have its own key value and the value is defined by Nosto. Magento will generate a new cached version of the category page based on the url parameters, when a user lands on the page (in case the cached version is missing for the specific segment). Users within the same segment will be served the same cached segment sorting.
Screenshot of the feature covered in this paragraph & where it can be found in the Nosto UI:
As long as your site has implemented canonical URLs and follows the basics of SEO & guidelines defined by search engines, there's no negative impact on your search engine results.
What happens if there is no response from Nosto?
If there is no category response from Nosto when Magento expects an API response, the next sorting method available within Magento will be used as a fallback. This means that in cases where Nosto could be encountering difficulties, there is a built-in fallback mechanism that works out of the box.
How is attribution handled?
When clicking on a product discovered through a Nosto Sequence a URL parameter will be present that denotes that the product was found through Category Merchandising, but also which Sequence it was discovered from.
The attribution parameter will allow Nosto to calculate performance metrics such as views, clicks, sales etc. that happened through Category Merchandising.
Attribution parameter will persist if a user interacts with filtering within the collection page, however if a user chooses another sorting method the attribution parameter is stripped from the URL.