class-sandbox-preview.php

Safe-mode sandbox preview for asset optimization.

Source includes/Settings/class-sandbox-preview.php3 min readPart of Performance Optimisation

includes/Settings/class-sandbox-preview.php

Safe-mode sandbox preview for asset optimization.

Namespace: PerformanceOptimise\\Inc · Lines: 588

Class Sandbox_Preview

Class Sandbox_Preview

Source: includes/Settings/class-sandbox-preview.php, line 29

final class Sandbox_Preview

Tags: @since 2.2.0

Constants

ConstantVisibilityValueLine
QUERY_VARpublic\'wppo_preview\'36
PREVIEW_VALUEpublic\'assets\'44
NONCE_ACTIONpublic\'wppo_preview_assets\'52
NONCE_VARpublic\'_wppo_preview_nonce\'60
STAGED_KEYpublic\'sandboxStaged\'68
ALLOWED_STAGED_KEYSpublicarray( \'delayJS\', \'deferJS\', \'combineCSS\', \'elementorSafeMode\', \'delayJSExternalOnly\', \'minifyInlineJS\', \'excludeDelayJS\', \'excludeDeferJS\', \'excludeCombineCSS\', \'delayJSThirdParty\', \'delayJSThirdPartyAuto\', \'delayJSThirdPartyDenylist\', \'delayJSThirdPartyAllowlist\', )85

Properties

PropertyVisibilityTypeDefaultLine
$preview_memoprivate staticbool|nullnull107

publicstatic reset_memo()

public static function reset_memo(): void

Reset per-request memo (for tests).

Return: void.

Tags: @since 2.2.0

Source: includes/Settings/class-sandbox-preview.php, line 115

publicstatic is_preview_request()

public static function is_preview_request(): bool

Whether the current request is a valid admin asset-preview request.

Return: bool — True when experimental output may render for this request.

Tags: @since 2.2.0

Source: includes/Settings/class-sandbox-preview.php, line 130

publicstatic enforce_no_cache()

public static function enforce_no_cache(): void

Enforce no-cache semantics for preview requests.

Return: void.

Tags: @since 2.2.0

Source: includes/Settings/class-sandbox-preview.php, line 194

publicstatic get_staged_settings()

public static function get_staged_settings(): array

Get staged experimental settings.

Return: array — Staged file_optimisation slice (possibly empty).

Tags: @since 2.2.0

Source: includes/Settings/class-sandbox-preview.php, line 220

publicstatic is_staged_available()

public static function is_staged_available(): bool

Whether staged experimental values exist.

Return: bool — True when at least one staged key is stored.

Tags: @since 2.2.0

Source: includes/Settings/class-sandbox-preview.php, line 241

publicstatic get_effective_file_optimisation()

public static function get_effective_file_optimisation(array=array() $production): array

Compute effective file_optimisation settings for this request.

ParameterTypeDefaultDescription
$productionarray=array()—Production file_optimisation slice.

Return: array — Effective slice to render with.

Tags: @since 2.2.0

Source: includes/Settings/class-sandbox-preview.php, line 257

publicstatic sanitize_staged()

public static function sanitize_staged(array $staged): array

Sanitize a staged payload down to the allowlisted asset keys.

ParameterTypeDefaultDescription
$stagedarray—Raw staged payload.

Return: array — Sanitized staged payload.

Tags: @since 2.2.0

Source: includes/Settings/class-sandbox-preview.php, line 285

publicstatic save_staged()

public static function save_staged(array $staged): bool

Persist staged experimental settings (admin only).

ParameterTypeDefaultDescription
$stagedarray—Raw staged payload.

Return: bool — True on success.

Tags: @since 2.2.0

Source: includes/Settings/class-sandbox-preview.php, line 326

publicstatic promote_staged()

public static function promote_staged(): bool

Promote staged settings to production (admin only).

Return: bool — True on success.

Tags: @since 2.2.0

Source: includes/Settings/class-sandbox-preview.php, line 397

publicstatic discard_staged()

public static function discard_staged(): bool

Discard staged settings (admin only).

Return: bool — True on success.

Tags: @since 2.2.0

Source: includes/Settings/class-sandbox-preview.php, line 482

publicstatic get_preview_url()

public static function get_preview_url(string=\'\' $url): string

Build an admin-only preview URL for a frontend URL.

ParameterTypeDefaultDescription
$urlstring=\'\'—Frontend URL to preview.

Return: string — Preview URL with query var + nonce.

Tags: @since 2.2.0

Source: includes/Settings/class-sandbox-preview.php, line 549