Update SEO optimised content without needing to refresh the page
K
Kieran Thomas
Currently, when you add a filter option within a PLP, the child page retains all SEO aspects of the parent page. For example:
Becomes the following when you select a filter option:
However https://www.myEcommerceSite.com/parent-category/child-filter1 retains the h1, intro text, SEO title, meta description and canonical of the parent.
To get around this, https://cloudmt.citruslime.com/#/facet-navigation/seo allows you to define https://www.myEcommerceSite.com/parent-category/child-filter1 as a page in its own right via the "Add row" feature at the bottom of the "Advanced Filter SEO" page.
For the most part, this then works as expected in that https://www.myEcommerceSite.com/parent-category/child-filter1 can be given its own h1, intro text, meta, canonical etc.
.... except there's one small gitch.
Even though that page exists, if a user goes via the route of visiting https://www.myEcommerceSite.com/parent-category and then selecting the child-filter1 option, the site initially persist with inheriting data from the parent, and ignores the fact that custom info now exists for that page, even though it has changed the URL to https://www.myEcommerceSite.com/parent-category/child-filter1.
Only when you refresh the page does it pull in the correct info.
Notes:
Initially I wondered if it was a caching issue, but forcing a refresh, and clearing the cache, didn't resolve the issue. I also tested via a totally different device and the issue persisted, so it's not a browser caching issue. I did raise with the support team and in case it was a site caching issue at server level but they suggested I file a new feature request here.
Ideally the content should change dynamically,
without a need to reload the page
(as currently happens for the products themselves) - so perhaps using Ajax or similar.As a result of the above bug, there's a risk that Google won't know what content to use as the same URL now exists with 2 sets of data. Worse still, Google could think it's an attempt at masking content which could get a site banned.
This is a major problem/risk, so can you please investigate a fix ASAP. Thanks
W
Will
Hi Kieran,
I believe what you are describing is that when a filter is applied, javascript filters only the products and doesn't pull in the customised meta data (title, H1, description).
I assume the main reason for this is to speed up the user journey as a complete page load isn't needed.
If you wanted to make selecting the filters load the new page so that all the content pulls through, then you could turn your F&F pages into ALP pages by reducing the threshold at which the ALP pages are used. On an ALP page, the filters are restyled as links and clicking them sends the user to the same place but the page is fully loaded.
We've gone away from using ALP pages. I think the speed benefit of a user applying a filter outweighs the benefit of the page content updating.
K
Kieran Thomas
In addition to (but not directly related to) the above, another observation is that, when a user goes directly to a sub-page, they cannot remove the existing child level filter(s) in order to go to a higher level page. Instead, they have to use the site navigation and work top-down again.
The user experience could be improved by allowing user who enter directly via a child page, to be able to access the parent level by removing child level filters.