Automatic_Upgrader_Skin
- Since
- 3.7.0, 4.6.0
- Source
wp-admin/includes/class-automatic-upgrader-skin.php:21
Upgrader Skin for Automatic WordPress Upgrades.
Description
This skin is designed to be used when no output is intended, all output is captured and stored for the caller to process and log/email/discard.
Compatibility
- WordPress
- since 4.6.0
- 6.7.7
- 6.8.8
- 6.9.7
- 7.0.4
- 7.1.0
Present in every tracked release (6.7.7 to 7.1.0).
Properties · 1
$messagesprotected
Methods · 5
- request_filesystem_credentials()Determines whether the upgrader needs FTP/SSH details in order to connect to the filesystem.
- get_upgrade_messages()Retrieves the upgrade messages.
- feedback()Stores a message about the upgrade.
- header()Creates a new output buffer.
- footer()Retrieves the buffered content, deletes the buffer, and processes the output.
Source code
class Automatic_Upgrader_Skin extends WP_Upgrader_Skin { protected $messages = array(); /** * Determines whether the upgrader needs FTP/SSH details in order to connect * to the filesystem. * * @since 3.7.0 * @since 4.6.0 The `$context` parameter default changed from `false` to an empty string. * * @see request_filesystem_credentials() * * @param bool|WP_Error $error Optional. Whether the current request has failed to connect, * or an error object. Default false. * @param string $context Optional. Full path to the directory that is tested * for being writable. Default empty. * @param bool $allow_relaxed_file_ownership Optional. Whether to allow Group/World writable. Default false. * @return bool True on success, false on failure. */ public function request_filesystem_credentials( $error = false, $context = '', $allow_relaxed_file_ownership = false ) { if ( $context ) { $this->options['context'] = $context; } /* * TODO: Fix up request_filesystem_credentials(), or split it, to allow us to request a no-output version. * This will output a credentials form in event of failure. We don't want that, so just hide with a buffer. */ ob_start(); $result = parent::request_filesystem_credentials( $error, $context, $allow_relaxed_file_ownership ); ob_end_clean(); return $result; } /** * Retrieves the upgrade messages. * * @since 3.7.0 * * @return string[] Messages during an upgrade. */ public function get_upgrade_messages() { return $this->messages; } /** * Stores a message about the upgrade. * * @since 3.7.0 * @since 5.9.0 Renamed `$data` to `$feedback` for PHP 8 named parameter support. * * @param string|array|WP_Error $feedback Message data. * @param mixed ...$args Optional text replacements. */ public function feedback( $feedback, ...$args ) { if ( is_wp_error( $feedback ) ) { $string = $feedback->get_error_message(); } elseif ( is_array( $feedback ) ) { return; } else { $string = $feedback; } if ( ! empty( $this->upgrader->strings[ $string ] ) ) { $string = $this->upgrader->strings[ $string ]; } if ( str_contains( $string, '%' ) ) { if ( ! empty( $args ) ) { $string = vsprintf( $string, $args ); } } $string = trim( $string ); // Only allow basic HTML in the messages, as it'll be used in emails/logs rather than direct browser output. $string = wp_kses( $string, array( 'a' => array( 'href' => true,Changelog
Introduced in 3.7.0. Unchanged from 6.7.7 through 7.1.0.
Signature, return type and hooks compared across 5 parsed releases.
4.6.0
Moved to its own file from wp-admin/includes/class-wp-upgrader-skins.php.from the docblock
3.7.0
Introduced.from the docblock
About this page
- Parsed data
- Generated from the wordpress-develop 6.9.7 tag, from
src/wp-admin/includes/class-automatic-upgrader-skin.php, and regenerated for each WordPress release so it tracks the code rather than a snapshot of it. - Corrections
- Something wrong on this page? Report it and it gets fixed in the next regeneration.