Fix "All values provided for url must point to the same page" on Google Structure Data Testing Tool


Background

Let's start with the background how did I stumble upon that issue.

This begins with one of the tasks on the on-going project I am working on.

The task asked me to implement Google's structure data so the site will be eligible for a list-like display called a carousel (doc: https://developers.google.com/search/docs/guides/mark-up-listings).

I started to work on the task, write some Ruby codes combined with Javascript ones to build up the required structure.There are two approaches provided on the documentation above: Summary page + multiple full details pages and A single, all-in-one-page list

The task suggested me to go with A single, all-in-one-page list approach.

So I follow the suggestion and finish up the implementation.

Once I am done writing the codes, then as usual, I tested the result with Google Structure data testing tool.

The result is always displaying only one error:

All values provided for url must point to the same page


Solution

The accepted answer on SO stated that it's actually an error in the validator ( https://stackoverflow.com/a/40329199 )

But I am not convinced.

Error on the tool built by Google? Seriously?

I think again.

Yes, it's possible if Google's tool had an error. 

They're built by humans too, and humans always make a mistake.

But I am still not convinced.

Is it really Google structure data tool having an error to validate?

Google employs the best software engineer on this earth.

Even it's an error, they should have received report and fixed it right away, right?

That's what I thought.

This thought leads me to read the Google developer documentation page once again, read it slower and slower.

After reading it once again, I notice this sentence under Single, all-in-one-page list section:

The page should contain user-visible text and an anchor to match each ListItem element.

An anchor.

That's the answer, the page should contain an anchor.

When I looked back on the page where I built the structure data using Single, all-in-one-page list approach, there's no anchor there.

The page is contained the links to the other pages.

Imagine the page is kind of category page in WordPress, where you have some links to different posts page.

That page did not have any anchor.

So, no matter how I build the structure data for carousels, the Google SDTT will always display that error.

The requirement is simply not met.

My current solution is changing the approach to the first one: Summary page + multiple full details pages.

This approach allows a page to have different url attributes under ListItem data structure.


Conclusion

It's not the error on Google Structure Data Testing tool.

It is simply because I overlooked the Google developer documentation.

Had I read it slowly earlier, and catch that phrase, I will surely realize soon that I need to go with different approach.

The lesson for me ( and probably you can learn from this lesson too ): Always no rush. The more you rush, the more you miss, the more you need to go back to find the solution.

Click to bookmark


Related Links


  1. When WordPress is not for your project
  2. HSTS Preload List Commitment
  3. Why AMP is important?
  4. Why WordPress is for your project