PluginProbe
Elementor Website Builder – more than just a page builder / 4.3.0-beta3
Elementor Website Builder – more than just a page builder v4.3.0-beta3
4.3.0-beta3 4.3.0-beta2 4.3.0-beta1 4.2.4 4.2.3 4.2.2 4.2.1 4.2.0 4.1.5 4.2.0-beta2 4.2.0-dev2 4.2.0-beta1 4.1.4 4.1.3 4.1.2 4.1.1 4.1.0 4.1.0-beta3 4.1.0-dev3 4.0.9 4.1.0-beta2 4.1.0-dev2 4.0.8 4.1.0-beta1 4.1.0-dev1 All 452 releases
← All changes | modules/global-classes/global-classes-order.php +18 -3 4.1.0-dev24.3.0-beta3 View file →
@@ -2,9 +2,10 @@
2 2
3 3 namespace Elementor\Modules\GlobalClasses;
4 4
5 5 use Elementor\Core\Kits\Documents\Kit;
6 -use Elementor\Modules\GlobalClasses\Concerns\Has_Kit_Dependency;
6 +use Elementor\Core\Kits\Concerns\Has_Kit_Dependency;
7 +use Elementor\Modules\GlobalClasses\Concerns\Has_Preview_Context;
7 8
8 9 if ( ! defined( 'ABSPATH' ) ) {
9 10 exit;
10 11 }
@@ -10,11 +11,20 @@
10 11 }
11 12
12 13 class Global_Classes_Order {
13 14 use Has_Kit_Dependency;
15 + use Has_Preview_Context;
14 16
15 17 const META_KEY = '_elementor_global_classes_order';
18 + const META_KEY_PREVIEW = '_elementor_global_classes_order_preview';
16 19
20 + protected array $context_keys = [
21 + 'order' => [
22 + 'frontend' => self::META_KEY,
23 + 'preview' => self::META_KEY_PREVIEW,
24 + ],
25 + ];
26 +
17 27 private ?array $cache = null;
18 28
19 29 private function __construct() {
20 30 }
@@ -39,9 +49,9 @@
39 49 $payload = [
40 50 'order' => array_values( $ids ),
41 51 ];
42 52
43 - $result = $kit->update_meta( self::META_KEY, $payload );
53 + $result = $kit->update_meta( $this->get_context_key( 'order' ), $payload );
44 54 $this->cache = null;
45 55
46 56 return false !== $result;
47 57 }
@@ -68,9 +78,14 @@
68 78 if ( ! $kit ) {
69 79 return [];
70 80 }
71 81
72 - $payload = $kit->get_meta( self::META_KEY );
82 + $payload = $kit->get_meta( $this->get_context_key( 'order' ) );
83 +
84 + if ( $this->is_preview() && empty( $payload ) ) {
85 + $payload = self::make( $this->get_kit() )->set_preview( false )->read_kit_meta_payload();
86 + }
87 +
73 88 $this->cache = is_array( $payload ) ? $payload : [];
74 89
75 90 return $this->cache;
76 91 }