PHP 8.2.31
Preview: SiteHealth.php Size: 2.31 KB
/home/nshryvcy/radiantskinclinics.org/wp-content/plugins/woocommerce/src/Internal/Admin/SiteHealth.php

<?php
/**
 * Customize Site Health recommendations for WooCommerce.
 */

namespace Automattic\WooCommerce\Internal\Admin;

defined( 'ABSPATH' ) || exit;

/**
 * SiteHealth class.
 */
class SiteHealth {
	/**
	 * Class instance.
	 *
	 * @var SiteHealth instance
	 */
	protected static $instance = null;

	/**
	 * Get class instance.
	 */
	public static function get_instance() {
		if ( ! self::$instance ) {
			self::$instance = new self();
		}
		return self::$instance;
	}

	/**
	 * Hook into WooCommerce.
	 */
	public function __construct() {
		add_filter( 'site_status_should_suggest_persistent_object_cache', array( $this, 'should_suggest_persistent_object_cache' ) );
	}

	/**
	 * Counts specific types of WooCommerce entities to determine if a persistent object cache would be beneficial.
	 *
	 * Note that if all measured WooCommerce entities are below their thresholds, this will return null so that the
	 * other normal WordPress checks will still be run.
	 *
	 * @param true|null $check A non-null value will short-circuit WP's normal tests for this.
	 *
	 * @return true|null True if the store would benefit from a persistent object cache. Otherwise null.
	 */
	public function should_suggest_persistent_object_cache( $check ) {
		// Skip this if some other filter has already determined yes.
		if ( true === $check ) {
			return $check;
		}

		$thresholds = array(
			'orders'   => 100,
			'products' => 100,
		);

		foreach ( $thresholds as $key => $threshold ) {
			try {
				switch ( $key ) {
					case 'orders':
						$orders_query   = new \WC_Order_Query(
							array(
								'status'   => 'any',
								'limit'    => 1,
								'paginate' => true,
								'return'   => 'ids',
							)
						);
						$orders_results = $orders_query->get_orders();
						if ( $orders_results->total >= $threshold ) {
							$check = true;
						}
						break;

					case 'products':
						$products_query   = new \WC_Product_Query(
							array(
								'status'   => 'any',
								'limit'    => 1,
								'paginate' => true,
								'return'   => 'ids',
							)
						);
						$products_results = $products_query->get_products();
						if ( $products_results->total >= $threshold ) {
							$check = true;
						}
						break;
				}
			} catch ( \Exception $exception ) {
				break;
			}

			if ( ! is_null( $check ) ) {
				break;
			}
		}

		return $check;
	}
}

Directory Contents

Dirs: 18 × Files: 25

Name Size Perms Modified Actions
Agentic DIR
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
Emails DIR
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
Logging DIR
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
Marketing DIR
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
Notes DIR
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
Orders DIR
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
Settings DIR
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
- drwxr-xr-x 2026-05-29 02:43:21
Edit Download
1.58 KB lrw-r--r-- 2022-08-24 02:07:06
Edit Download
11.78 KB lrw-r--r-- 2026-01-19 14:46:18
Edit Download
7.99 KB lrw-r--r-- 2022-04-20 06:50:54
Edit Download
2.86 KB lrw-r--r-- 2024-11-14 01:17:00
Edit Download
2.41 KB lrw-r--r-- 2026-01-19 14:46:18
Edit Download
17.65 KB lrw-r--r-- 2025-11-24 23:10:10
Edit Download
8.54 KB lrw-r--r-- 2026-05-05 14:26:50
Edit Download
6.77 KB lrw-r--r-- 2026-02-23 17:58:34
Edit Download
8.70 KB lrw-r--r-- 2026-05-11 17:17:08
Edit Download
19.18 KB lrw-r--r-- 2025-05-12 21:07:28
Edit Download
6.29 KB lrw-r--r-- 2024-11-14 01:17:00
Edit Download
3.48 KB lrw-r--r-- 2026-01-19 14:46:18
Edit Download
956 B lrw-r--r-- 2022-04-20 06:50:54
Edit Download
932 B lrw-r--r-- 2023-03-21 20:45:06
Edit Download
14.61 KB lrw-r--r-- 2026-05-05 14:26:50
Edit Download
4.67 KB lrw-r--r-- 2024-09-23 20:44:04
Edit Download
3.63 KB lrw-r--r-- 2024-09-04 20:34:26
Edit Download
2.31 KB lrw-r--r-- 2023-02-22 07:17:34
Edit Download
768 B lrw-r--r-- 2022-04-20 06:50:54
Edit Download
5.85 KB lrw-r--r-- 2025-05-12 21:07:28
Edit Download
11.66 KB lrw-r--r-- 2024-11-14 01:17:00
Edit Download
17.74 KB lrw-r--r-- 2026-05-05 14:26:50
Edit Download
2.08 KB lrw-r--r-- 2025-04-22 15:40:34
Edit Download
5.26 KB lrw-r--r-- 2025-10-06 17:56:06
Edit Download
6.33 KB lrw-r--r-- 2025-06-23 19:46:28
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).