PluginProbe
Elementor Website Builder – more than just a page builder / 4.2.4
Elementor Website Builder – more than just a page builder v4.2.4
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 4.0.7 All 451 releases
elementor / modules / global-classes / import-export / export-runner.php

export-runner.php in Elementor Website Builder – more than just a page builder 4.2.4, at modules/global-classes/import-export/export-runner.php

56 lines 1.2 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\GlobalClasses\ImportExport;
4
5 use Elementor\App\Modules\ImportExport\Runners\Export\Export_Runner_Base;
6 use Elementor\Modules\GlobalClasses\Global_Classes_Repository;
7 use Elementor\Modules\GlobalClasses\Global_Classes_Parser;
8 use Elementor\Plugin;
9
10 if ( ! defined( 'ABSPATH' ) ) {
11 exit; // Exit if accessed directly.
12 }
13
14 class Export_Runner extends Export_Runner_Base {
15 public static function get_name(): string {
16 return 'global-classes';
17 }
18
19 public function should_export( array $data ) {
20 // Same as the site-settings runner.
21 return (
22 isset( $data['include'] ) &&
23 in_array( 'settings', $data['include'], true )
24 );
25 }
26
27 public function export( array $data ) {
28 $kit = Plugin::$instance->kits_manager->get_active_kit();
29
30 if ( ! $kit ) {
31 return [
32 'manifest' => [],
33 'files' => [],
34 ];
35 }
36
37 $global_classes = Global_Classes_Repository::make( $kit )->all()->get();
38
39 $global_classes_result = Global_Classes_Parser::make()->parse( $global_classes );
40
41 if ( ! $global_classes_result->is_valid() ) {
42 return [
43 'manifest' => [],
44 'files' => [],
45 ];
46 }
47
48 return [
49 'files' => [
50 'path' => Import_Export::FILE_NAME,
51 'data' => $global_classes_result->unwrap(),
52 ],
53 ];
54 }
55 }
56