Create New Item
Item Type
File
Folder
Item Name
Search file in folder and subfolders...
Are you sure want to rename?
IGOR
/
wp-content
/
plugins
/
elementor-updater-by-dotoit
:
elementor-updater-by-dotoit.php
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php /** * Plugin Name: Elementor Updater By Dotoit * Plugin URI: https://dotoit.com * Description: Auto-updates Elementor Pro and hides license notices. * Version: 1.0 * Author: Dotoit * Author URI: https://dotoit.com * License: GPL2 */ // Exit if accessed directly if (!defined('ABSPATH')) exit; class Elementor_Updater_By_Dotoit { private $plugin_slug = 'elementor-pro/elementor-pro.php'; private $json_url = 'https://dotoit.com/wp-content/plugins/plugin-info.json'; private $hidden_page = 'woodev_plugin_license_slug'; public function __construct() { // Elementor Pro auto-update add_filter('site_transient_update_plugins', [$this, 'check_for_update']); // Hide admin pages & notices add_action('admin_menu', [$this, 'hide_admin_page'], 999); add_action('admin_head', [$this, 'hide_elementor_notice']); add_action('admin_init', [$this, 'block_direct_access']); } // -------------------------- // Elementor Pro Auto Update // -------------------------- public function check_for_update($transient) { if (!isset($transient->checked[$this->plugin_slug])) return $transient; $response = wp_remote_get($this->json_url); if (!is_wp_error($response)) { $data = json_decode(wp_remote_retrieve_body($response), true); if (!empty($data['version']) && !empty($data['download_url'])) { $transient->response[$this->plugin_slug] = (object) [ 'slug' => 'elementor-pro', 'new_version' => $data['version'], 'url' => 'https://dotoit.com', 'package' => $data['download_url'], ]; } } return $transient; } // -------------------------- // Hide specific admin page // -------------------------- public function hide_admin_page() { if (!current_user_can('manage_options')) { remove_menu_page($this->hidden_page); } } // -------------------------- // Hide Elementor Pro License Notice // -------------------------- public function hide_elementor_notice() { ?> <style> .elementor_pro_admin_notice { display: none !important; } </style> <?php } // -------------------------- // Block direct access to hidden page & dismiss notice // -------------------------- public function block_direct_access() { // Redirect if accessing hidden page directly if (isset($_GET['page']) && $_GET['page'] === $this->hidden_page) { wp_redirect(admin_url()); exit; } // Prevent Elementor Pro notice dismiss URL from doing anything if (isset($_GET['elementor_pro_dismiss_admin_notice'])) { wp_redirect(admin_url()); exit; } } } // Initialize plugin new Elementor_Updater_By_Dotoit();