Files
Landing/wp-content/mu-plugins/croplogic-performance-guards.php
2026-05-13 03:46:16 +03:30

57 lines
1.5 KiB
PHP

<?php
/**
* Plugin Name: CropLogic Performance Guards
* Description: Reduces delays caused by blocked external services on this WordPress install.
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
/**
* Convert env values like 1/true/on/yes into booleans.
*/
function croplogic_env_flag( $name, $default = false ) {
$value = getenv( $name );
if ( false === $value || '' === $value ) {
return $default;
}
return filter_var( $value, FILTER_VALIDATE_BOOLEAN );
}
/**
* Stop the theme from waiting on Google Fonts when external traffic is blocked.
*/
function croplogic_disable_upstudy_google_fonts() {
wp_dequeue_style( 'upstudy-main-fonts' );
wp_deregister_style( 'upstudy-main-fonts' );
}
add_action( 'wp_enqueue_scripts', 'croplogic_disable_upstudy_google_fonts', 100 );
/**
* Short-circuit login/admin notification emails that can hang on blocked SMTP calls.
*/
function croplogic_skip_slow_wp_mail( $pre, $atts ) {
if ( ! croplogic_env_flag( 'WORDPRESS_DISABLE_SLOW_MAIL', true ) ) {
return $pre;
}
$request_uri = isset( $_SERVER['REQUEST_URI'] ) ? (string) wp_unslash( $_SERVER['REQUEST_URI'] ) : '';
$is_login = false !== strpos( $request_uri, 'wp-login.php' );
$is_admin = is_admin();
$action = isset( $_REQUEST['action'] ) ? sanitize_key( wp_unslash( $_REQUEST['action'] ) ) : '';
if ( in_array( $action, array( 'lostpassword', 'retrievepassword', 'rp', 'resetpass' ), true ) ) {
return $pre;
}
if ( ! $is_login && ! $is_admin ) {
return $pre;
}
return true;
}
add_filter( 'pre_wp_mail', 'croplogic_skip_slow_wp_mail', 10, 2 );