We have a website which lists machine parts by code number. These show in a paginated list:
/parts?page=1 has records 1 to 25 of 356736.
prev links. The list may be filtered by brand or by (partial) code number, so
/parts is the overall list,
/parts?brand=brand-name is a sublist, and
/parts?code=0.008 is another list. The,
prev links take this into account, so
prev only change the page number (they retain the rest of the URL), while the
canonical URL retains only relevant URL parameters.
Each individual part also has its own page, which is at
/parts?part=[CodeNumber]. The URL may contain a bunch of other parameters relevant to filtering the list, which are used to supply backlinks to the list, but the
canonical link is the simple, tidy URL. There are no
prev links for individual part pages.
There is also
/sitemap, a HTML which contains a link to each page, each product, and each part on the site. One massive long list. (It does link to the overall list of spare parts, but only to the first page thereof, not each page of the pagination.)
There is also
/sitemap.xml, which is an XML sitemapindex linking to eight individual sitemaps, which between them contain all the URLs shown in the HTML sitemap.
Searching by part code returns inconsistent results.
For a few items, mostly those early in the list, Google brings us straight into that part’s unique page. For a few others, also early in the list, Google brings us to the correct page of the paginated list, which is a reasonable compromise.
For part codes in the middle of the list, Google brings us to
/sitemap, which is not ideal but better than nothing.
And for part codes in the latter half of the list, Google doesn’t find them at all.
Is there anything I can do to improve our results?
While our SEO links (
canonical) are correct on this list and have been for some time,
canonical links in other parts of the site have been a bit messy till now (mostly, each page just pointed to itself, resulting in a certain amount of duplicate content). I fixed them today. Might that have an effect?