Edit File by line
/home/zeestwma/richards.../wp-conte.../plugins/jetpack/modules/sitemaps
File: sitemap-buffer-factory.php
<?php // phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
[0] Fix | Delete
/**
[1] Fix | Delete
* Factory class for creating sitemap buffers.
[2] Fix | Delete
*
[3] Fix | Delete
* @since 14.6
[4] Fix | Delete
* @package automattic/jetpack
[5] Fix | Delete
*/
[6] Fix | Delete
[7] Fix | Delete
if ( ! defined( 'ABSPATH' ) ) {
[8] Fix | Delete
exit( 0 );
[9] Fix | Delete
}
[10] Fix | Delete
[11] Fix | Delete
/**
[12] Fix | Delete
* Creates the appropriate sitemap buffer based on available PHP extensions.
[13] Fix | Delete
*
[14] Fix | Delete
* @since 14.6
[15] Fix | Delete
*/
[16] Fix | Delete
class Jetpack_Sitemap_Buffer_Factory {
[17] Fix | Delete
[18] Fix | Delete
/**
[19] Fix | Delete
* Create a new sitemap buffer instance.
[20] Fix | Delete
*
[21] Fix | Delete
* @since 14.6
[22] Fix | Delete
*
[23] Fix | Delete
* @param string $type The type of sitemap buffer ('page', 'image', 'video', etc.).
[24] Fix | Delete
* @param int $item_limit The maximum number of items in the buffer.
[25] Fix | Delete
* @param int $byte_limit The maximum number of bytes in the buffer.
[26] Fix | Delete
* @param string $time The initial datetime of the buffer.
[27] Fix | Delete
*
[28] Fix | Delete
* @return Jetpack_Sitemap_Buffer|null The created buffer or null if type is invalid.
[29] Fix | Delete
*/
[30] Fix | Delete
public static function create( $type, $item_limit, $byte_limit, $time = '1970-01-01 00:00:00' ) {
[31] Fix | Delete
[32] Fix | Delete
/**
[33] Fix | Delete
* Hook to allow for XMLWriter usage.
[34] Fix | Delete
*
[35] Fix | Delete
* Temporary filter to disallow XMLWriter usage.
[36] Fix | Delete
*
[37] Fix | Delete
* @since 14.7
[38] Fix | Delete
* @since 15.2 Update default to true.
[39] Fix | Delete
* @module sitemaps
[40] Fix | Delete
*
[41] Fix | Delete
* @param bool $use_xmlwriter Whether to use XMLWriter. Current default is true.
[42] Fix | Delete
*/
[43] Fix | Delete
$use_xmlwriter = apply_filters( 'jetpack_sitemap_use_xmlwriter', true );
[44] Fix | Delete
[45] Fix | Delete
// First try XMLWriter if available
[46] Fix | Delete
if ( $use_xmlwriter && class_exists( 'XMLWriter' ) ) {
[47] Fix | Delete
$class_name = 'Jetpack_Sitemap_Buffer_' . ucfirst( $type ) . '_XMLWriter';
[48] Fix | Delete
if ( class_exists( $class_name ) ) {
[49] Fix | Delete
return new $class_name( $item_limit, $byte_limit, $time );
[50] Fix | Delete
}
[51] Fix | Delete
}
[52] Fix | Delete
[53] Fix | Delete
// Then try DOMDocument
[54] Fix | Delete
if ( class_exists( 'DOMDocument' ) ) {
[55] Fix | Delete
$class_name = 'Jetpack_Sitemap_Buffer_' . ucfirst( $type );
[56] Fix | Delete
if ( class_exists( $class_name ) ) {
[57] Fix | Delete
return new $class_name( $item_limit, $byte_limit, $time );
[58] Fix | Delete
}
[59] Fix | Delete
}
[60] Fix | Delete
[61] Fix | Delete
// Finally fall back to the basic implementation
[62] Fix | Delete
$class_name = 'Jetpack_Sitemap_Buffer_' . ucfirst( $type ) . '_Fallback';
[63] Fix | Delete
if ( class_exists( $class_name ) ) {
[64] Fix | Delete
return new $class_name( $item_limit, $byte_limit, $time );
[65] Fix | Delete
}
[66] Fix | Delete
[67] Fix | Delete
return null;
[68] Fix | Delete
}
[69] Fix | Delete
}
[70] Fix | Delete
[71] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function