PluginProbe
Elementor Website Builder – more than just a page builder / 3.19.2
Elementor Website Builder – more than just a page builder v3.19.2
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 / apps / module.php

module.php in Elementor Website Builder – more than just a page builder 3.19.2, at modules/apps/module.php

64 lines 1.6 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 namespace Elementor\Modules\Apps;
3
4 use Elementor\Core\Admin\Menu\Admin_Menu_Manager;
5 use Elementor\Core\Base\Module as BaseModule;
6 use Elementor\Settings;
7
8 if ( ! defined( 'ABSPATH' ) ) {
9 exit; // Exit if accessed directly.
10 }
11
12 class Module extends BaseModule {
13
14 const PAGE_ID = 'elementor-apps';
15
16 public function get_name() {
17 return 'apps';
18 }
19
20 public function __construct() {
21 parent::__construct();
22
23 Admin_Pointer::add_hooks();
24
25 add_action( 'elementor/admin/menu/register', function( Admin_Menu_Manager $admin_menu ) {
26 $admin_menu->register( static::PAGE_ID, new Admin_Menu_Apps() );
27 }, 115 );
28
29 add_action( 'elementor/admin/menu/after_register', function ( Admin_Menu_Manager $admin_menu, array $hooks ) {
30 if ( ! empty( $hooks[ static::PAGE_ID ] ) ) {
31 add_action( "admin_print_scripts-{$hooks[ static::PAGE_ID ]}", [ $this, 'enqueue_assets' ] );
32 }
33 }, 10, 2 );
34
35 add_filter( 'elementor/finder/categories', function( array $categories ) {
36 $categories['site']['items']['apps'] = [
37 'title' => esc_html__( 'Apps', 'elementor' ),
38 'url' => admin_url( 'admin.php?page=' . static::PAGE_ID ),
39 'icon' => 'apps',
40 'keywords' => [ 'apps', 'addon', 'plugin', 'extension', 'integration' ],
41 ];
42
43 return $categories;
44 } );
45 }
46
47 public function enqueue_assets() {
48 add_filter( 'admin_body_class', [ $this, 'body_status_classes' ] );
49
50 wp_enqueue_style(
51 'elementor-apps',
52 $this->get_css_assets_url( 'modules/apps/admin' ),
53 [],
54 ELEMENTOR_VERSION
55 );
56 }
57
58 public function body_status_classes( $admin_body_classes ) {
59 $admin_body_classes .= ' elementor-apps-page';
60
61 return $admin_body_classes;
62 }
63 }
64