PluginProbe
Adminify – White Label, Admin Menu Editor, Login Customizer / 4.0
Adminify – White Label, Admin Menu Editor, Login Customizer v4.0
4.3.1 4.3.0 4.2.26 4.2.25 4.2.24 4.2.23 4.2.22 4.2.21 4.2.20 4.2.19 4.2.18 4.2.17 4.2.16 4.2.15 4.2.14 4.2.13 4.2.12 4.2.11 4.2.10 4.2.9 4.2.8 4.2.7 4.2.6 4.2.5 4.1.17 All 164 releases
adminify / Inc / Admin / Admin.php

Admin.php in Adminify – White Label, Admin Menu Editor, Login Customizer 4.0, at Inc/Admin/Admin.php

217 lines 5.4 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace WPAdminify\Inc\Admin;
4
5 use WPAdminify\Inc\Utils;
6 use \WPAdminify\Inc\Classes\CustomAdminColumns;
7 use \WPAdminify\Inc\Classes\Tweaks;
8 use \WPAdminify\Inc\Classes\MenuStyle;
9 use \WPAdminify\Inc\Classes\AdminBar;
10 use \WPAdminify\Inc\Classes\OutputCSS;
11 use \WPAdminify\Inc\Classes\ThirdPartyCompatibility;
12 use \WPAdminify\Inc\Classes\AdminFooterText;
13 use \WPAdminify\Inc\Admin\Modules;
14 use \WPAdminify\Inc\Classes\Sidebar_Widgets;
15 use \WPAdminify\Inc\Classes\DashboardWidgets;
16 use WPAdminify\Inc\Classes\Adminify_Rollback;
17 use WPAdminify\Inc\Admin\AdminSettings;
18
19 // no direct access allowed
20 if (!defined('ABSPATH')) {
21 exit;
22 }
23 /**
24 * WP Adminify
25 * Admin Class
26 *
27 * @author Jewel Theme <support@jeweltheme.com>
28 */
29
30 if (!class_exists('Admin')) {
31 class Admin
32 {
33 public $options = [];
34
35 public function __construct()
36 {
37 $this->options = AdminSettings::get_instance()->get();
38
39 $this->jltwp_adminify_modules_manager();
40
41 // Remove Page Header like - Dashboard, Plugins, Users etc
42 // add_action('admin_head', [$this, 'remove_page_headline'], 99);
43
44
45 // Freemius Hooks
46 jltwp_adminify()->add_filter('freemius_pricing_js_path', array($this, 'jltwp_new_freemius_pricing_js'));
47 jltwp_adminify()->add_filter('plugin_icon', array($this, 'jltwp_adminify_logo_icon'));
48
49 jltwp_adminify()->add_filter('support_forum_url', [$this, 'jltwp_adminify_support_forum_url']);
50
51 // Disable deactivation feedback form
52 jltwp_adminify()->add_filter('show_deactivation_feedback_form', '__return_false');
53
54 // Disable after deactivation subscription cancellation window
55 jltwp_adminify()->add_filter('show_deactivation_subscription_cancellation', '__return_false');
56
57 $this->disable_gutenberg_editor();
58 }
59
60 public function disable_gutenberg_editor()
61 {
62 // Sidebar Widgets Remove
63 if (!empty($this->options['remove_widgets']['disable_gutenberg_editor'])) {
64 // Disable Gutenberg for Block Editor
65 add_filter('gutenberg_use_widgets_block_editor', '__return_false');
66 // Disable Gutenberg for widgets.
67 add_filter('use_widgets_block_editor', '__return_false');
68 }
69
70 // Disable Block Editor Gutenberg
71 if ( !empty($this->options["disable_gutenberg"]['disable_for']) && in_array('block_editor', $this->options["disable_gutenberg"]['disable_for'] ) ) {
72 add_filter('use_block_editor_for_post', '__return_false');
73 add_action('wp_enqueue_scripts', [$this, 'remove_backend_gutenberg_scripts'], 20);
74 }
75
76
77 // Remove all scripts and styles added by Gutenberg
78 if (!empty($this->options["disable_gutenberg"]['disable_for']) && in_array('remove_gutenberg_scripts', $this->options["disable_gutenberg"]['disable_for'])) {
79 add_action('wp_enqueue_scripts', [$this, 'remove_gutenberg_scripts']);
80 remove_action('enqueue_block_assets', 'wp_enqueue_registered_block_scripts_and_styles');
81 }
82 }
83
84
85 // Dequeue all Frontend scripts and styles added by Gutenberg
86 public function remove_gutenberg_scripts()
87 {
88 wp_dequeue_style('wp-block-library');
89 wp_dequeue_style('wc-block-style');
90 }
91
92 /**
93 * Remove Gutenberg Scripts
94 *
95 * @return void
96 */
97 public function remove_backend_gutenberg_scripts()
98 {
99 if(is_admin()){
100 // Remove CSS on the front end.
101 wp_dequeue_style('wp-block-library');
102
103 // Remove Gutenberg theme.
104 wp_dequeue_style('wp-block-library-theme');
105
106 // Remove inline global CSS on the front end.
107 wp_dequeue_style('global-styles');
108 }
109 }
110
111 /**
112 * Adminify Logo
113 *
114 * @param [type] $logo
115 *
116 * @return void
117 */
118 public function jltwp_adminify_logo_icon($logo)
119 {
120 $logo = WP_ADMINIFY_PATH . '/assets/images/adminify.svg';
121 return $logo;
122 }
123
124 public function jltwp_new_freemius_pricing_js($default_pricing_js_path)
125 {
126 return WP_ADMINIFY_PATH . '/Libs/freemius-pricing/freemius-pricing.js';
127 }
128
129 /**
130 * WP Adminify: Modules
131 */
132 public function jltwp_adminify_modules_manager()
133 {
134 new Modules();
135 new MenuStyle();
136 new AdminBar();
137 new Tweaks();
138 new OutputCSS();
139 new ThirdPartyCompatibility();
140 new AdminFooterText();
141 new Sidebar_Widgets();
142 new DashboardWidgets();
143
144
145 if (!empty($this->options['admin_ui'])) {
146 if (preg_match('/https:\/\//', site_url()) && is_ssl()) {
147 \WPAdminify\Inc\Admin\Frames\Init::instance();
148 }
149 }
150
151 // Version Rollback
152 // Adminify_Rollback::get_instance();
153 }
154
155
156 /**
157 * Remove Page Headlines: Dashboard, Plugins, Users
158 *
159 * @return void
160 */
161 public function remove_page_headline()
162 {
163 $screen = get_current_screen();
164 if (empty($screen->id)) {
165 return;
166 }
167
168 if (in_array(
169 $screen->id,
170 [
171 'dashboard',
172 'nav-menus',
173 'edit-tags',
174 'themes',
175 'widgets',
176 'plugins',
177 'plugin-install',
178 'users',
179 'user',
180 'profile',
181 'tools',
182 'import',
183 'export',
184 'export-personal-data',
185 'erase-personal-data',
186 'options-general',
187 'options-writing',
188 'options-reading',
189 'options-discussion',
190 'options-media',
191 'options-permalink',
192 ]
193 )) {
194 echo '<style>#wpbody-content .wrap > h1,#wpbody-content .wrap > h1.wp-heading-inline{display:none;}</style>';
195 }
196 }
197
198
199 /**
200 * Support Contact URL
201 *
202 * @param [type] $support_url and Pro Support
203 *
204 * @return void
205 */
206 public function jltwp_adminify_support_forum_url($support_url)
207 {
208 if (jltwp_adminify()->is_premium()) {
209 $support_url = 'https://wpadminify.com/contact';
210 } else {
211 $support_url = 'https://wordpress.org/support/plugin/adminify/';
212 }
213 return $support_url;
214 }
215 }
216 }
217