PluginProbe
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment / 2.1.37
FireBox – WooCommerce Popup Builder, Exit Intent Popup, Email Optin & Cart Abandonment v2.1.37
3.1.13 3.1.12 3.1.11 3.1.10 3.1.9 3.1.8 3.1.7 trunk 1.0.0 1.0.1 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.0.7 1.0.8 1.0.9 1.1.0 1.1.1 All 122 releases
← All changes | Inc/Core/Blocks.php +39 -16 trunk2.1.37 View file →
@@ -1,12 +1,12 @@
1 1 <?php
2 2 /**
3 3 * @package FireBox
4 - * @version 3.1.13 Free
4 + * @version 2.1.37 Free
5 5 *
6 6 * @author FirePlugins <info@fireplugins.com>
7 7 * @link https://www.fireplugins.com
8 - * @copyright Copyright © 2026 FirePlugins All Rights Reserved
8 + * @copyright Copyright © 2025 FirePlugins All Rights Reserved
9 9 * @license GNU GPLv3 <http://www.gnu.org/licenses/gpl.html> or later
10 10 */
11 11
12 12 namespace FireBox\Core;
@@ -19,12 +19,25 @@
19 19 class Blocks
20 20 {
21 21 public function __construct()
22 22 {
23 + if (!function_exists('register_block_type'))
24 + {
25 + return;
26 + }
27 +
23 28 add_action('enqueue_block_assets', [$this, 'blocks_assets']);
24 29
25 30 // Register categories
26 - add_filter('block_categories_all', [$this, 'register_categories'], 10, 2);
31 + global $wp_version;
32 + if (version_compare($wp_version, '5.8', '>='))
33 + {
34 + add_action('block_categories_all', [$this, 'register_categories'], 10, 2);
35 + }
36 + else
37 + {
38 + add_action('block_categories', [$this, 'register_categories'], 10, 2);
39 + }
27 40
28 41 $this->register_blocks();
29 42 }
30 43
@@ -57,21 +70,13 @@
57 70 */
58 71 public function register_blocks()
59 72 {
60 73 $ds = DIRECTORY_SEPARATOR;
61 -
74 +
62 75 $base_dir = implode($ds, [__DIR__, 'Blocks']);
63 -
64 - $cache_key = 'firebox_block_files';
65 - $files = wp_cache_get($cache_key, 'firebox');
66 -
67 - if ($files === false)
68 - {
69 - $files = array_diff(scandir($base_dir), ['.', '..', '.DS_Store', 'index.php', 'Block.php']);
70 -
71 - wp_cache_set($cache_key, $files, 'firebox', HOUR_IN_SECONDS);
72 - }
73 -
76 +
77 + $files = array_diff(scandir($base_dir), ['.', '..', '.DS_Store', 'index.php', 'Block.php']);
78 +
74 79 $namespace = '\FireBox\Core\Blocks\\';
75 80
76 81 foreach ($files as $item)
77 82 {
@@ -106,11 +111,29 @@
106 111 }
107 112
108 113 wp_enqueue_script(
109 114 'fb-blocks-extend',
110 - FBOX_MEDIA_ADMIN_URL . 'js/blocks/fb_blocks_extend.js',
115 + FBOX_MEDIA_ADMIN_URL . 'js/fb_blocks_extend.js',
111 116 ['wp-i18n', 'wp-blocks', 'wp-editor', 'wp-components', 'wp-api-fetch', 'lodash'],
112 117 FBOX_VERSION,
113 118 true
114 119 );
120 +
121 + // Enqueue block editor style only in Gutenberg editor
122 + if (function_exists('get_current_screen'))
123 + {
124 + $screen = get_current_screen();
125 + if ($screen->is_block_editor)
126 + {
127 + if (get_post_type() === 'firebox')
128 + {
129 + wp_enqueue_style(
130 + 'firebox-block-editor',
131 + FBOX_MEDIA_ADMIN_URL . 'css/block-editor.css',
132 + [],
133 + FBOX_VERSION
134 + );
135 + }
136 + }
137 + }
115 138 }
116 139 }