wp/wp-includes/sitemaps.php
changeset 18 be944660c56a
parent 16 a86126ab1dd4
equal deleted inserted replaced
17:34716fd837a4 18:be944660c56a
    49  *
    49  *
    50  * @return WP_Sitemaps_Provider[] Array of sitemap providers.
    50  * @return WP_Sitemaps_Provider[] Array of sitemap providers.
    51  */
    51  */
    52 function wp_get_sitemap_providers() {
    52 function wp_get_sitemap_providers() {
    53 	$sitemaps = wp_sitemaps_get_server();
    53 	$sitemaps = wp_sitemaps_get_server();
       
    54 
    54 	return $sitemaps->registry->get_providers();
    55 	return $sitemaps->registry->get_providers();
    55 }
    56 }
    56 
    57 
    57 /**
    58 /**
    58  * Registers a new sitemap provider.
    59  * Registers a new sitemap provider.
    63  * @param WP_Sitemaps_Provider $provider The `Sitemaps_Provider` instance implementing the sitemap.
    64  * @param WP_Sitemaps_Provider $provider The `Sitemaps_Provider` instance implementing the sitemap.
    64  * @return bool Whether the sitemap was added.
    65  * @return bool Whether the sitemap was added.
    65  */
    66  */
    66 function wp_register_sitemap_provider( $name, WP_Sitemaps_Provider $provider ) {
    67 function wp_register_sitemap_provider( $name, WP_Sitemaps_Provider $provider ) {
    67 	$sitemaps = wp_sitemaps_get_server();
    68 	$sitemaps = wp_sitemaps_get_server();
       
    69 
    68 	return $sitemaps->registry->add_provider( $name, $provider );
    70 	return $sitemaps->registry->add_provider( $name, $provider );
    69 }
    71 }
    70 
    72 
    71 /**
    73 /**
    72  * Gets the maximum number of URLs for a sitemap.
    74  * Gets the maximum number of URLs for a sitemap.
    92  * Retrieves the full URL for a sitemap.
    94  * Retrieves the full URL for a sitemap.
    93  *
    95  *
    94  * @since 5.5.1
    96  * @since 5.5.1
    95  *
    97  *
    96  * @param string $name         The sitemap name.
    98  * @param string $name         The sitemap name.
    97  * @param string $subtype_name The sitemap subtype name.  Default empty string.
    99  * @param string $subtype_name The sitemap subtype name. Default empty string.
    98  * @param int    $page         The page of the sitemap.  Default 1.
   100  * @param int    $page         The page of the sitemap. Default 1.
    99  * @return string|false The sitemap URL or false if the sitemap doesn't exist.
   101  * @return string|false The sitemap URL or false if the sitemap doesn't exist.
   100  */
   102  */
   101 function get_sitemap_url( $name, $subtype_name = '', $page = 1 ) {
   103 function get_sitemap_url( $name, $subtype_name = '', $page = 1 ) {
   102 	$sitemaps = wp_sitemaps_get_server();
   104 	$sitemaps = wp_sitemaps_get_server();
       
   105 
   103 	if ( ! $sitemaps ) {
   106 	if ( ! $sitemaps ) {
   104 		return false;
   107 		return false;
   105 	}
   108 	}
   106 
   109 
   107 	if ( 'index' === $name ) {
   110 	if ( 'index' === $name ) {
   119 
   122 
   120 	$page = absint( $page );
   123 	$page = absint( $page );
   121 	if ( 0 >= $page ) {
   124 	if ( 0 >= $page ) {
   122 		$page = 1;
   125 		$page = 1;
   123 	}
   126 	}
       
   127 
   124 	return $provider->get_sitemap_url( $subtype_name, $page );
   128 	return $provider->get_sitemap_url( $subtype_name, $page );
   125 }
   129 }