| @@ -1,8 +1,10 @@ | ||
| 1 | 1 | <?php |
| 2 | 2 | namespace Elementor\Modules\Apps; |
| 3 | 3 | |
| 4 | +use Elementor\Core\Admin\Menu\Admin_Menu_Manager; | |
| 4 | 5 | use Elementor\Core\Base\Module as BaseModule; |
| 6 | +use Elementor\Settings; | |
| 5 | 7 | |
| 6 | 8 | if ( ! defined( 'ABSPATH' ) ) { |
| 7 | 9 | exit; // Exit if accessed directly. |
| 8 | 10 | } |
| @@ -17,18 +19,19 @@ | ||
| 17 | 19 | |
| 18 | 20 | public function __construct() { |
| 19 | 21 | parent::__construct(); |
| 20 | 22 | |
| 21 | - add_filter( 'elementor/finder/categories', function( array $categories ) { | |
| 22 | - $categories['site']['items']['apps'] = [ | |
| 23 | - 'title' => esc_html__( 'Add-ons', 'elementor' ), | |
| 24 | - 'url' => admin_url( 'admin.php?page=' . static::PAGE_ID ), | |
| 25 | - 'icon' => 'apps', | |
| 26 | - 'keywords' => [ 'apps', 'addon', 'plugin', 'extension', 'integration' ], | |
| 27 | - ]; | |
| 23 | + Admin_Pointer::add_hooks(); | |
| 28 | 24 | |
| 29 | - return $categories; | |
| 30 | - } ); | |
| 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 ); | |
| 31 | 34 | } |
| 32 | 35 | |
| 33 | 36 | public function enqueue_assets() { |
| 34 | 37 | add_filter( 'admin_body_class', [ $this, 'body_status_classes' ] ); |