How to create a Custom Provider for XML Sitemaps in WordPress 5.5

20 Jun 2020 20:27 | Geplaatst door Marcel |

WordPress 5.5 will be released in August 2020 and the feature plugin for XML Sitemaps has been merged this June. You can read about the original proposal on the development blog make/core.

This feature generates a sitemap.xml in the document root to make it more easy for search engines to index your website.
It will list all pages, posts, tags, categories and users. It also includes support for Custom Post Types and Custom Taxonomies. You can also extend it to index custom datatypes. That could be from a custom plugin that uses its own database table and its own functions to display that.

This blogpost is about creating a custom provider for your own data.
Please understand that for custom post types or taxonomies you don’t have to do anything.

First you create a custom provider, that will generate pagination and the url_list.

This is all for the Custom Provider that you need. I do hope you understand that you need to code your own pagination and your list of urls :)

Now to integrate it with the Sitemaps in WordPress 5.5 you can use 2 ways.
First option is to use a filter and add the instance of your Provider class.

The other option is to call a procedural function call in an action hook.

Both these hooks to register your custom provider should end up the same.