HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //usr/local/wp/vendor/wp-cli/doctor-command/src/Check/Theme_Update.php
<?php

namespace WP_CLI\Doctor\Check;

use WP_CLI;
use WP_CLI\Doctor\Check;

/**
 * Warns when there are theme updates available.
 */
class Theme_Update extends Check {

	public function run() {
		ob_start();
		WP_CLI::run_command( array( 'theme', 'list' ), array( 'format' => 'json' ) );
		$ret          = ob_get_clean();
		$themes       = ! empty( $ret ) ? json_decode( $ret, true ) : array();
		$update_count = 0;
		foreach ( $themes as $theme ) {
			if ( 'available' === $theme['update'] ) {
				++$update_count;
			}
		}

		if ( 1 === $update_count ) {
			$this->set_status( 'warning' );
			$this->set_message( '1 theme has an update available.' );
		} elseif ( $update_count ) {
			$this->set_status( 'warning' );
			$this->set_message( "{$update_count} themes have updates available." );
		} else {
			$this->set_status( 'success' );
			$this->set_message( 'Themes are up to date.' );
		}
	}
}