PluginProbe ʕ •ᴥ•ʔ
Robin Image Optimizer – Unlimited Image Optimization, WebP & AVIF / trunk
Robin Image Optimizer – Unlimited Image Optimization, WebP & AVIF vtrunk
2.0.5 trunk 1.3.7 1.4.0 1.4.1 1.4.2 1.4.6 1.5.0 1.5.3 1.5.6 1.5.8 1.6.5 1.6.6 1.6.9 1.7.0 1.7.4 1.8.1 1.8.2 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4
robin-image-optimizer / libs / addons / robin-image-optimizer-premium.php
robin-image-optimizer / libs / addons Last commit date
admin 6 months ago assets 3 years ago includes 4 months ago views 6 months ago index.php 6 months ago robin-image-optimizer-premium.php 6 months ago uninstall.php 6 months ago
robin-image-optimizer-premium.php
150 lines
1 <?php
2 /**
3 * Plugin Name: Robin image optimizer premium
4 * Plugin URI: https://themeisle.com
5 * Description: This is an extension for Robin Image Optimizer. Adds additional features: converting images to WebP, optimization of custom directories, and NextGen gallery optimization.
6 * Author: Themeisle
7 * Version: 1.0.8
8 * Text Domain: robin-image-optimizer
9 * Domain Path: /languages/ Author
10 * URI: https://themeisle.com
11 */
12
13 // Вы�
14 од при непосредственном доступе
15
16 if ( ! defined( 'ABSPATH' ) ) {
17 exit;
18 }
19
20 if ( ! function_exists( 'wrio_premium_load' ) ) {
21
22 function wrio_premium_load() {
23
24 if ( ! defined( 'WRIO_PLUGIN_ACTIVE' ) || defined( 'WRIO_PLUGIN_THROW_ERROR' ) ) {
25 return;
26 }
27
28 // Устанавливаем контстанту, что плагин уже используется
29 define( 'WRIOP_PLUGIN_ACTIVE', true );
30
31 // Устанавливаем контстанту, что плагин уже используется
32 define( 'WRIOP_PLUGIN_VERSION', '1.0.8' );
33
34 // Директория плагина
35 define( 'WRIOP_PLUGIN_DIR', __DIR__ );
36
37 // Относительный путь к плагину
38 define( 'WRIOP_PLUGIN_BASE', plugin_basename( __FILE__ ) );
39
40 // Ссылка к директории плагина
41 define( 'WRIOP_PLUGIN_URL', plugins_url( '', __FILE__ ) );
42
43 // Global scripts
44 // ---------------------------------------------------------
45 require_once WRIOP_PLUGIN_DIR . '/includes/functions.php';
46 require_once WRIOP_PLUGIN_DIR . '/includes/classes/class.backup.php';
47 require_once WRIOP_PLUGIN_DIR . '/includes/classes/class.image-statistic-folders.php';
48
49 require_once WRIOP_PLUGIN_DIR . '/includes/classes/class.folder.php';
50 require_once WRIOP_PLUGIN_DIR . '/includes/classes/models/class.folders-extra-data.php';
51 require_once WRIOP_PLUGIN_DIR . '/includes/classes/class.folder-image.php';
52 require_once WRIOP_PLUGIN_DIR . '/includes/classes/class.custom-folders.php';
53
54 if ( wrio_is_active_nextgen_gallery() ) {
55 require_once WRIOP_PLUGIN_DIR . '/includes/classes/class.gallery-nextgen.php';
56 require_once WRIOP_PLUGIN_DIR . '/includes/classes/class.image-nextgen.php';
57 require_once WRIOP_PLUGIN_DIR . '/includes/classes/class.image-statistic-nextgen.php';
58 }
59
60 // Utils
61 require_once WRIOP_PLUGIN_DIR . '/includes/classes/helpers/class.url.php'; // URL helper
62
63 // Format conversion (WebP, AVIF, etc.)
64 require_once WRIOP_PLUGIN_DIR . '/includes/classes/format/class-format-converter-api.php';
65 require_once WRIOP_PLUGIN_DIR . '/includes/classes/format/class-format-converter-webp.php';
66 require_once WRIOP_PLUGIN_DIR . '/includes/classes/format/class-format-converter-avif.php';
67 require_once WRIOP_PLUGIN_DIR . '/includes/classes/format/class-format-converter-factory.php';
68
69 // WebP format (legacy)
70 require_once WRIOP_PLUGIN_DIR . '/includes/classes/webp/vendor/autoload.php';
71 require_once WRIOP_PLUGIN_DIR . '/includes/classes/webp/class-webp-api.php';
72 require_once WRIOP_PLUGIN_DIR . '/includes/classes/webp/class-webp-listener.php';
73 require_once WRIOP_PLUGIN_DIR . '/includes/classes/webp/class-webp-delivery.php';
74
75 new WRIO\WEBP\HTML\Delivery();
76 new WRIO\WEBP\Listener();
77
78 if ( defined( 'WP_CLI' ) && WP_CLI ) {
79 require_once WRIOP_PLUGIN_DIR . '/includes/classes/class.wpcli-optimize.php';
80 }
81 // Admin scripts
82 // ---------------------------------------------------------
83 if ( is_admin() ) {
84 WRIO_Custom_Folders::get_instance();
85
86 // Register hooks
87 require_once WRIOP_PLUGIN_DIR . '/admin/filters/backup.php';
88 require_once WRIOP_PLUGIN_DIR . '/admin/filters/settings-page.php';
89
90 require_once WRIOP_PLUGIN_DIR . '/admin/ajax/folders.php';
91 require_once WRIOP_PLUGIN_DIR . '/includes/classes/webp/class-webp-server.php';
92 require_once WRIOP_PLUGIN_DIR . '/admin/boot.php';
93
94 add_action(
95 'init',
96 function () {
97 try {
98 $admin_path = WRIOP_PLUGIN_DIR . '/admin/pages';
99 WRIO_Plugin::app()->registerPage( 'WRIO_StatisticFolders', $admin_path . '/class-rio-statistic-folders-page.php' );
100
101 if ( wrio_is_active_nextgen_gallery() ) {
102 WRIO_Plugin::app()->registerPage( 'WRIO_StatisticNextgenPage', $admin_path . '/class-rio-statistic-nextgen-page.php' );
103 }
104 } catch ( Exception $e ) {
105 // nothing
106 }
107 }
108 );
109 }
110 }
111 // add_action( 'plugins_loaded', 'wrio_premium_load', 20 );
112 }
113
114 /**
115 * Function is performed when the parent plugin Robin image optimizer is activated.
116 *
117 * @since 1.0.4
118 */
119 function wrio_premium_activate() {
120 require_once __DIR__ . '/includes/classes/format/class-format-converter-factory.php';
121 require_once __DIR__ . '/includes/classes/webp/class-webp-server.php';
122 require_once __DIR__ . '/includes/classes/webp/class-webp-delivery.php';
123
124 $is_apache = WRIO\WEBP\Server::is_apache();
125 $is_use_htaccess = WRIO\WEBP\Server::server_use_htaccess();
126
127 if ( WRIO\WEBP\HTML\Delivery::should_use_converted_images() && WRIO\WEBP\HTML\Delivery::is_redirect_delivery_mode() ) {
128 if ( $is_apache && $is_use_htaccess ) {
129
130 WRIO\WEBP\Server::htaccess_update_webp_rules();
131 }
132 }
133 }
134
135 /**
136 * Function is performed when the parent plugin Robin image optimizer is deactivated.
137 *
138 * @since 1.0.4
139 */
140 function wrio_premium_deactivate() {
141 require_once __DIR__ . '/includes/classes/webp/class-webp-server.php';
142
143 $is_apache = WRIO\WEBP\Server::is_apache();
144 $is_use_htaccess = WRIO\WEBP\Server::server_use_htaccess();
145
146 if ( $is_apache && $is_use_htaccess ) {
147 WRIO\WEBP\Server::htaccess_clear_webp_rules();
148 }
149 }
150