PluginProbe
Elementor Website Builder – more than just a page builder / 4.2.3
Elementor Website Builder – more than just a page builder v4.2.3
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 / elementor-capabilities-mcp / module.php

module.php in Elementor Website Builder – more than just a page builder 4.2.3, at modules/elementor-capabilities-mcp/module.php

79 lines 1.7 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\ElementorCapabilitiesMcp;
4
5 use Elementor\Core\Base\Module as BaseModule;
6 use Elementor\Utils;
7
8 if ( ! defined( 'ABSPATH' ) ) {
9 exit;
10 }
11
12 class Module extends BaseModule {
13
14 private const PACKAGE_NAME = 'elementor-capabilities-mcp';
15
16 private const REQUIRED_PACKAGES = [
17 'utils',
18 'schema',
19 'elementor-mcp-common',
20 'editor-v1-adapters',
21 'editor-mcp',
22 'elementor-capabilities-mcp',
23 ];
24
25 public function get_name(): string {
26 return self::PACKAGE_NAME;
27 }
28
29 public static function is_active(): bool {
30 return is_admin();
31 }
32
33 public function __construct() {
34 parent::__construct();
35
36 add_action( 'admin_enqueue_scripts', [ $this, 'register_packages' ] );
37 add_action( 'admin_enqueue_scripts', [ $this, 'enqueue_scripts' ], 20 );
38
39 add_filter( 'elementor/editor/v2/packages', [ $this, 'add_editor_packages' ] );
40 }
41
42 public function add_editor_packages( array $packages ): array {
43 $packages[] = self::PACKAGE_NAME;
44
45 return $packages;
46 }
47
48 public function register_packages(): void {
49 $suffix = Utils::is_script_debug() ? '' : '.min';
50
51 foreach ( self::REQUIRED_PACKAGES as $package ) {
52 $asset_file = ELEMENTOR_ASSETS_PATH . "js/packages/{$package}/{$package}.asset.php";
53
54 if ( ! file_exists( $asset_file ) ) {
55 continue;
56 }
57
58 $asset = require $asset_file;
59 $handle = $asset['handle'] ?? "elementor-v2-{$package}";
60
61 if ( wp_script_is( $handle, 'registered' ) ) {
62 continue;
63 }
64
65 wp_register_script(
66 $handle,
67 ELEMENTOR_ASSETS_URL . "js/packages/{$package}/{$package}{$suffix}.js",
68 $asset['deps'] ?? [],
69 ELEMENTOR_VERSION,
70 true
71 );
72 }
73 }
74
75 public function enqueue_scripts(): void {
76 wp_enqueue_script( 'elementor-v2-' . self::PACKAGE_NAME );
77 }
78 }
79