👁 查看:class-settings-pro.php
路径:/home/forge/kingkrunch.com/wp/wp-content/plugins/wp-smush-pro/core/class-settings-pro.php
大小:1.77 KB · 修改:2026-09-29 06:58:27 · 权限:0644 · 可写
<?php
namespace Smush\Core;
use Smush\Core\Membership\Membership;
use WP_Smush;
class Settings_Pro extends Settings {
public function is_module_active( $module ) {
$pro_modules = $this->get_placeholder_modules();
$module_active = self::get_instance()->get( $module );
if ( in_array( $module, $pro_modules, true ) ) {
$module_active = $module_active && Membership::get_instance()->is_pro();
}
return $module_active;
}
public function get_highest_lossy_level() {
if ( Membership::get_instance()->is_pro() ) {
return self::$level_ultra_lossy;
}
return parent::get_highest_lossy_level();
}
public function can_access_pro_field( $field ) {
if ( Membership::get_instance()->is_pro() ) {
return true;
}
return parent::can_access_pro_field( $field );
}
public function should_enforce_bulk_limit() {
return ! Membership::get_instance()->is_pro();
}
public function get_api_key() {
$api_key = Membership::get_instance()->get_apikey();
if ( ! empty( $api_key ) && Membership::get_instance()->is_pro() ) {
return $api_key;
}
return '';
}
/**
* Get the maximum file size (in bytes) that can be optimized.
*
* @return mixed
*/
public function get_file_size_limit() {
if ( ! Membership::get_instance()->is_pro() ) {
return parent::get_file_size_limit();
}
$file_size_limit = 256 * 1024 * 1024; // 256 MB
// Support legacy constants.
if ( defined( 'WP_SMUSH_PREMIUM_MAX_BYTES' ) && WP_SMUSH_PREMIUM_MAX_BYTES > 0 ) {
$file_size_limit = min( $file_size_limit, WP_SMUSH_PREMIUM_MAX_BYTES );
} elseif ( defined( 'WP_SMUSH_MAX_BYTES' ) && WP_SMUSH_MAX_BYTES > 0 ) {
$file_size_limit = min( $file_size_limit, WP_SMUSH_MAX_BYTES );
}
return $file_size_limit;
}
}