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
elementor / modules / default-styles / atomic-default-styles.php

atomic-default-styles.php in Elementor Website Builder – more than just a page builder 4.3.0-beta3, at modules/default-styles/atomic-default-styles.php

62 lines 1.3 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Elementor\Modules\DefaultStyles;
4
5 use Elementor\Modules\AtomicWidgets\Styles\Atomic_Styles_Manager;
6 use Elementor\Plugin;
7
8 class Atomic_Default_Styles {
9 const STYLES_KEY = 'default';
10
11 public function register_hooks() {
12 add_action(
13 'elementor/atomic-widgets/styles/register',
14 fn( Atomic_Styles_Manager $styles_manager ) => $this->register_styles( $styles_manager ),
15 15,
16 1
17 );
18
19 add_action(
20 'elementor/default_styles/update',
21 fn() => $this->invalidate_cache(),
22 10,
23 0
24 );
25
26 add_action(
27 'elementor/core/files/clear_cache',
28 fn() => $this->invalidate_cache(),
29 );
30
31 add_action(
32 'deleted_post',
33 fn( $post_id ) => $this->on_kit_delete( $post_id ),
34 );
35 }
36
37 private function register_styles( Atomic_Styles_Manager $styles_manager ) {
38 $styles_manager->register(
39 [ self::STYLES_KEY ],
40 fn () => $this->get_all_default_styles(),
41 );
42 }
43
44 private function get_all_default_styles(): array {
45 $items = Default_Styles_Repository::make()->all();
46
47 return array_values( $items );
48 }
49
50 private function invalidate_cache(): void {
51 do_action( 'elementor/atomic-widgets/styles/clear', [ self::STYLES_KEY ] );
52 }
53
54 private function on_kit_delete( $post_id ): void {
55 if ( ! Plugin::$instance->kits_manager->is_kit( $post_id ) ) {
56 return;
57 }
58
59 $this->invalidate_cache();
60 }
61 }
62