run:R W Run
DIR
2026-03-11 16:18:51
R W Run
1.96 KB
2026-03-11 16:18:51
R W Run
4.31 KB
2026-03-11 16:18:51
R W Run
1.89 KB
2026-03-11 16:18:51
R W Run
6.53 KB
2026-03-11 16:18:51
R W Run
8.3 KB
2026-03-11 16:18:51
R W Run
6.25 KB
2026-03-11 16:18:51
R W Run
error_log
📄class-wp-sitemaps-registry.php
1<?php
2/**
3 * Sitemaps: WP_Sitemaps_Registry class
4 *
5 * Handles registering sitemap providers.
6 *
7 * @package WordPress
8 * @subpackage Sitemaps
9 * @since 5.5.0
10 */
11
12/**
13 * Class WP_Sitemaps_Registry.
14 *
15 * @since 5.5.0
16 */
17#[AllowDynamicProperties]
18class WP_Sitemaps_Registry {
19 /**
20 * Registered sitemap providers.
21 *
22 * @since 5.5.0
23 *
24 * @var WP_Sitemaps_Provider[] Array of registered sitemap providers.
25 */
26 private $providers = array();
27
28 /**
29 * Adds a new sitemap provider.
30 *
31 * @since 5.5.0
32 *
33 * @param string $name Name of the sitemap provider.
34 * @param WP_Sitemaps_Provider $provider Instance of a WP_Sitemaps_Provider.
35 * @return bool Whether the provider was added successfully.
36 */
37 public function add_provider( $name, WP_Sitemaps_Provider $provider ) {
38 if ( isset( $this->providers[ $name ] ) ) {
39 return false;
40 }
41
42 /**
43 * Filters the sitemap provider before it is added.
44 *
45 * @since 5.5.0
46 *
47 * @param WP_Sitemaps_Provider $provider Instance of a WP_Sitemaps_Provider.
48 * @param string $name Name of the sitemap provider.
49 */
50 $provider = apply_filters( 'wp_sitemaps_add_provider', $provider, $name );
51 if ( ! $provider instanceof WP_Sitemaps_Provider ) {
52 return false;
53 }
54
55 $this->providers[ $name ] = $provider;
56
57 return true;
58 }
59
60 /**
61 * Returns a single registered sitemap provider.
62 *
63 * @since 5.5.0
64 *
65 * @param string $name Sitemap provider name.
66 * @return WP_Sitemaps_Provider|null Sitemap provider if it exists, null otherwise.
67 */
68 public function get_provider( $name ) {
69 if ( ! is_string( $name ) || ! isset( $this->providers[ $name ] ) ) {
70 return null;
71 }
72
73 return $this->providers[ $name ];
74 }
75
76 /**
77 * Returns all registered sitemap providers.
78 *
79 * @since 5.5.0
80 *
81 * @return WP_Sitemaps_Provider[] Array of sitemap providers.
82 */
83 public function get_providers() {
84 return $this->providers;
85 }
86}
87