WP_Debug_Data::debug_datapublic staticWP 5.2.0

Static function for generating site debug data when required.

Метод класса: WP_Debug_Data{}

Хуки из метода

Возвращает

Массив. The debug data for the site.

Использование

$result = WP_Debug_Data::debug_data();

Список изменений

С версии 5.2.0 Введена.
С версии 5.3.0 Added database charset, database collation, and timezone information.
С версии 5.5.0 Added pretty permalinks support information.
С версии 6.7.0 Modularized into separate theme-oriented methods.

Код WP_Debug_Data::debug_data() WP 6.8.1

public static function debug_data() {
	/*
	 * Set up the array that holds all debug information.
	 *
	 * When iterating through the debug data, the ordering of the sections
	 * occurs in insertion-order of the assignments into this array.
	 *
	 * This is the single assignment of the sections before filtering. Null-entries will
	 * be automatically be removed.
	 */
	$info = array(
		'wp-core'             => self::get_wp_core(),
		'wp-paths-sizes'      => self::get_wp_paths_sizes(),
		'wp-dropins'          => self::get_wp_dropins(),
		'wp-active-theme'     => self::get_wp_active_theme(),
		'wp-parent-theme'     => self::get_wp_parent_theme(),
		'wp-themes-inactive'  => self::get_wp_themes_inactive(),
		'wp-mu-plugins'       => self::get_wp_mu_plugins(),
		'wp-plugins-active'   => self::get_wp_plugins_active(),
		'wp-plugins-inactive' => self::get_wp_plugins_inactive(),
		'wp-media'            => self::get_wp_media(),
		'wp-server'           => self::get_wp_server(),
		'wp-database'         => self::get_wp_database(),
		'wp-constants'        => self::get_wp_constants(),
		'wp-filesystem'       => self::get_wp_filesystem(),
	);

	/*
	 * Remove null elements from the array. The individual methods are
	 * allowed to return `null`, which communicates that the category
	 * of debug data isn't relevant and shouldn't be passed through.
	 */
	$info = array_filter(
		$info,
		static function ( $section ) {
			return isset( $section );
		}
	);

	/**
	 * Filters the debug information shown on the Tools -> Site Health -> Info screen.
	 *
	 * Plugin or themes may wish to introduce their own debug information without creating
	 * additional admin pages. They can utilize this filter to introduce their own sections
	 * or add more data to existing sections.
	 *
	 * Array keys for sections added by core are all prefixed with `wp-`. Plugins and themes
	 * should use their own slug as a prefix, both for consistency as well as avoiding
	 * key collisions. Note that the array keys are used as labels for the copied data.
	 *
	 * All strings are expected to be plain text except `$description` that can contain
	 * inline HTML tags (see below).
	 *
	 * @since 5.2.0
	 *
	 * @param array $args {
	 *     The debug information to be added to the core information page.
	 *
	 *     This is an associative multi-dimensional array, up to three levels deep.
	 *     The topmost array holds the sections, keyed by section ID.
	 *
	 *     @type array ...$0 {
	 *         Each section has a `$fields` associative array (see below), and each `$value` in `$fields`
	 *         can be another associative array of name/value pairs when there is more structured data
	 *         to display.
	 *
	 *         @type string $label       Required. The title for this section of the debug output.
	 *         @type string $description Optional. A description for your information section which
	 *                                   may contain basic HTML markup, inline tags only as it is
	 *                                   outputted in a paragraph.
	 *         @type bool   $show_count  Optional. If set to `true`, the amount of fields will be included
	 *                                   in the title for this section. Default false.
	 *         @type bool   $private     Optional. If set to `true`, the section and all associated fields
	 *                                   will be excluded from the copied data. Default false.
	 *         @type array  $fields {
	 *             Required. An associative array containing the fields to be displayed in the section,
	 *             keyed by field ID.
	 *
	 *             @type array ...$0 {
	 *                 An associative array containing the data to be displayed for the field.
	 *
	 *                 @type string $label    Required. The label for this piece of information.
	 *                 @type mixed  $value    Required. The output that is displayed for this field.
	 *                                        Text should be translated. Can be an associative array
	 *                                        that is displayed as name/value pairs.
	 *                                        Accepted types: `string|int|float|(string|int|float)[]`.
	 *                 @type string $debug    Optional. The output that is used for this field when
	 *                                        the user copies the data. It should be more concise and
	 *                                        not translated. If not set, the content of `$value`
	 *                                        is used. Note that the array keys are used as labels
	 *                                        for the copied data.
	 *                 @type bool   $private  Optional. If set to `true`, the field will be excluded
	 *                                        from the copied data, allowing you to show, for example,
	 *                                        API keys here. Default false.
	 *             }
	 *         }
	 *     }
	 * }
	 */
	$info = apply_filters( 'debug_information', $info );

	return $info;
}