So, the xmlsitemap_xmlsitemap_index_links() function performs an entity query, but the problem is it never adds a condition against the xmlsitemap table to only look at items that have not yet been indexed. This is a huge regression from Drupal 7 and a major loss of functionality. This would be a big reason why people don't have content showing up in the sitemap.

Comments

Dave Reid created an issue. See original summary.

dave reid’s picture

dave reid’s picture

Status: Active » Needs review
StatusFileSize
new8.44 KB
dave reid’s picture

* xmlsitemap_link_bundle_access is no longer a valid query tag. The hook xmlsitemap_query_xmlsitemap_link_bundle_access_alter() has been removed. The entity_type_id, bundle, and entity_info query metadata is also no longer available. Entity queries automatically have the 'entity_type' metadata that can be used instead.
* xmlsitemap_index_links_alter is a new query tag available when performing an un-indexed entity query.
* xmlsitemap_xmlsitemap_index_links() has been updated to only query against items that are not also found in the xmlsitemap table.
* xmlsitemap_xmlsitemap_index_links() has been updated to run the 'process callback' from hook_xmlsitemap_link_info() instead of assuming it will be the default entity one

  • Dave Reid committed 63dab7c on 8.x-1.x
    Issue #3150732 by Dave Reid: Fixed xmlsitemap_xmlsitemap_index_links()...
dave reid’s picture

Status: Needs review » Fixed

Committed #4 to 8.x-1.x.

  • Dave Reid committed 63dab7c on 2.x
    Issue #3150732 by Dave Reid: Fixed xmlsitemap_xmlsitemap_index_links()...

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.