Page tracking for SPA
If you are running your webshop as a Single Page Applications (SPA), the Hello Retail partner script is typically not reloaded automatically when a visitor is triggering a new page view. To ensure Hello Retail is tracking when the visitor views a new page you should call the trackPageView
on every page change.
If you want to use our managed product recommendations, search or category pages you will have to ensure that the reload
SDK method is called on every page view. This will trigger the following things
- Remove any content managed that was already injected
- If provided, replace all existing configuation in the hrq object with provided object
- Track the page view
- Inject any product recommendations that are configured to load on the new page
- Execute all managed search configurations again
- Execute all managed category pages again
When the script reloads it will look at the DOM to figure out what recoms should be injected. So it is important to call reload
after the DOM changes that the visitors navigation triggered have completed.
You trigger a basic reload using by sending the reload command to the command queue:
hrq = window.hrq || [];
hrq.push([
"reload"
]);
Overwriting existing hrq configuration
Optionally, you can provide a second object containing updated data when triggering the "reload"
action.
hrq = window.hrq || [];
hrq.push([
"reload",
{
websiteUuid: "{website uuid}"
}
]);
This feature is particularly useful for SPAs that are forcing specific websites, where you are running multiple versions of the same website via Hello Retail. For instance, if your SPA enables users to switch between different regional versions of a website, such as from domain.com/dk
to domain.com/sv
, the UUID of the new site needs to be added as shown above, this way we can overwrite the previous.