PluginProbe ʕ •ᴥ•ʔ
Admin and Site Enhancements (ASE) / 2.2.0
Admin and Site Enhancements (ASE) v2.2.0
9.1.0 9.0.2 9.0.1 9.0.0 8.9.2 8.9.1 8.9.0 8.8.8 8.8.7 8.8.6 8.8.5 8.8.4 8.8.3 8.8.2 8.8.1 8.8.0 8.7.3 8.7.2 8.7.1 8.2.1 8.2.2 8.2.3 8.3.0 8.3.1 8.3.2 8.4.0 8.4.1 8.4.2 8.5.0 8.5.1 8.5.2 8.6.0 8.6.1 8.6.2 8.7.0 5.0.1 5.0.2 5.0.2.1 5.0.2.2 5.0.2.3 5.0.2.4 5.1.0 5.2.0 5.2.1 5.2.10 5.2.11 5.2.2 5.2.3 5.2.4 5.2.5 5.2.6 5.2.7 5.2.8 5.2.9 5.3.0 5.3.1 5.3.2 5.4.0 5.4.1 5.5.0 5.5.1 5.5.2 5.6.0 5.6.1 5.6.2 5.7.0 5.7.1 5.8.0 5.8.1 6.0.0 6.0.3 6.0.4 6.0.5 6.0.5.1 6.0.6 6.0.7 6.0.8.1 6.1.0 6.1.3 6.2.0 6.2.1 6.2.2 6.2.3 6.2.4 6.2.5 6.2.6 6.2.7 6.3.0 6.3.1 6.3.2 6.4.0 6.5.0 6.5.1 6.6.0 6.7.0 6.8.0 6.8.2 6.8.3 6.9.0 6.9.1 6.9.10 6.9.11 6.9.12 6.9.13.1 6.9.13.2 6.9.2 6.9.3 6.9.4 6.9.5 6.9.6 6.9.7 6.9.8 6.9.9 7.0.0 7.0.2 7.0.2.1 7.0.2.2 7.0.2.3 7.0.3 7.1.0 7.1.1 7.1.2 7.1.3 7.1.4 7.1.5 7.2.0 7.2.1 7.3.0 7.3.1 7.3.2 7.3.3 7.4.0 7.4.2 7.4.4 7.4.5 7.4.6 7.4.7 7.4.8 7.5.0 7.5.1 7.5.2 7.5.3 7.5.4 7.6.0 7.6.1 7.6.1.1 7.6.10 7.6.11 7.6.2 7.6.3 7.6.4 7.6.5 7.6.6 7.6.7 7.6.7.1 7.6.8 7.6.9 7.7.0 7.8.0 7.8.1 7.8.10 7.8.11 7.8.12 7.8.13 7.8.14 7.8.15 7.8.16 7.8.17 7.8.18 7.8.2 7.8.3 7.8.4 7.8.5 7.8.5.1 7.8.6 7.8.7 7.8.8 7.8.9 7.9.0 7.9.1 7.9.10 7.9.11 7.9.2 7.9.3 7.9.4 7.9.5 7.9.6 7.9.7 7.9.8 7.9.9 8.0.0 8.0.1 8.0.2 8.0.3 8.0.4 8.0.5 8.0.6 8.0.7 8.0.8 8.1.0 8.1.1 8.1.2 8.1.3 8.1.4 8.2.0 trunk 1.0.0 1.1.0 1.2.0 1.3.0 1.4.0 1.5.0 1.6.0 1.7.0 1.8.0 1.9.0 2.0.0 2.1.0 2.2.0 2.3.0 2.4.0 2.5.0 2.6.0 2.7.0 2.8.0 2.8.1 2.8.2 2.8.3 2.9.0 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.1.0 3.2.0 3.3.0 3.4.0 3.5.0 3.6.1 3.7.0 3.8.0 3.9.0 3.9.1 3.9.2 4.0.0 4.0.1 4.1.0 4.2.0 4.2.1 4.2.2 4.3.0 4.3.1 4.4.0 4.5.0 4.6.0 4.7.0 4.7.1 4.7.2 4.7.3 4.7.4 4.8.0 4.8.1 4.8.2 4.8.3 4.9.0 4.9.1 4.9.2 4.9.3 5.0.0
admin-site-enhancements / settings.php
admin-site-enhancements Last commit date
assets 3 years ago classes 3 years ago LICENSE.md 3 years ago README.md 3 years ago admin-site-enhancements.php 3 years ago bootstrap.php 3 years ago settings.php 3 years ago
settings.php
242 lines
1 <?php
2
3 /**
4 * Register admin menu
5 *
6 * @since 1.0.0
7 */
8 function asenha_register_admin_menu() {
9
10 add_submenu_page(
11 'tools.php', // Parent page/menu
12 'Admin and Site Enhancements', // Browser tab/window title
13 'Enhancements', // Sube menu title
14 'manage_options', // Minimal user capabililty
15 ASENHA_SLUG, // Page slug. Shows up in URL.
16 'asenha_add_settings_page'
17 );
18
19 }
20
21 /**
22 * Create the settings page of the plugin
23 *
24 * @since 1.0.0
25 */
26 function asenha_add_settings_page() {
27 ?>
28 <div class="wrap asenha">
29
30 <div id="asenha-header" class="asenha-header">
31 <div class="asenha-header-left">
32 <h1 class="asenha-heading"><?php echo get_admin_page_title(); ?> <small><?php esc_html_e( 'by', 'admin-site-enhancements' ); ?> <a href="https://bowo.io" target="_blank">bowo.io</a></small></h1>
33 <!-- <a href="https://wordpress.org/plugins/admin-site-enhancements/" target="_blank" class="asenha-header-action"><span>&#8505;</span> <?php // esc_html_e( 'Info', 'admin-site-enhancements' ); ?></a> -->
34 <a href="https://wordpress.org/plugins/admin-site-enhancements/#reviews" target="_blank" class="asenha-header-action"><span>&starf;</span> <?php esc_html_e( 'Review', 'admin-site-enhancements' ); ?></a>
35 <a href="https://wordpress.org/support/plugin/admin-site-enhancements/" target="_blank" class="asenha-header-action">&#10010; <?php esc_html_e( 'Feedback', 'admin-site-enhancements' ); ?></a>
36 <a href="https://paypal.me/qriouslad" target="_blank" class="asenha-header-action">&#9829; <?php esc_html_e( 'Donate', 'admin-site-enhancements' ); ?></a>
37 </div>
38 <div class="asenha-header-right">
39 <a class="button button-primary asenha-save-button">Save Changes</a>
40 <div class="asenha-changes-saved" style="display:none;">Changes have been saved.</div>
41 </div>
42 </div>
43
44 <div class="asenha-body">
45 <form action="options.php" method="post">
46 <div class="asenha-vertical-tabs">
47 <div class="asenha-tab-buttons">
48 <input id="tab-content-management" type="radio" name="tabs" checked><label for="tab-content-management">Content Management</label>
49 <input id="tab-admin-interface" type="radio" name="tabs"><label for="tab-admin-interface">Admin Interface</label>
50 <input id="tab-security" type="radio" name="tabs"><label for="tab-security">Security</label>
51 <input id="tab-utilities" type="radio" name="tabs"><label for="tab-utilities">Utilities</label>
52 <!-- <input id="tab-disable-components" type="radio" name="tabs"><label for="tab-disable-components">Disable Components</label> -->
53 </div>
54 <div class="asenha-tab-contents">
55 <section class="asenha-fields fields-content-management">
56 <table class="form-table" role="presentation">
57 <tbody></tbody>
58 </table>
59 </section>
60 <section class="asenha-fields fields-admin-interface">
61 <table class="form-table" role="presentation">
62 <tbody></tbody>
63 </table>
64 </section>
65 <section class="asenha-fields fields-security">
66 <table class="form-table" role="presentation">
67 <tbody></tbody>
68 </table>
69 </section>
70 <section class="asenha-fields fields-utilities">
71 <table class="form-table" role="presentation">
72 <tbody></tbody>
73 </table>
74 </section>
75 <!-- <section class="asenha-fields fields-disable-components">
76 <table class="form-table" role="presentation">
77 <tbody></tbody>
78 </table>
79 </section> -->
80 </div>
81 </div>
82 <div style="display:none;"><!-- Hide to prevent flash of fields appearing at the bottom of the page -->
83 <?php settings_fields( ASENHA_ID ); ?>
84 <?php do_settings_sections( ASENHA_SLUG ); ?>
85 <?php submit_button(
86 'Save Changes', // Button copy
87 'primary', // Type: 'primary', 'small', or 'large'
88 'submit', // The 'name' attribute
89 true, // Whether to wrap in <p> tag
90 array( 'id' => 'asenha-submit' ), // additional attributes
91 ); ?>
92 </div>
93 </form>
94 </div>
95
96 <div class="asenha-footer">
97 </div>
98
99 </div>
100 <?php
101
102 }
103
104 /**
105 * Suppress all notices, then add notice for successful settings update
106 *
107 * @since 1.1.0
108 */
109 function asenha_suppress_notices() {
110
111 global $plugin_page;
112
113 // Suppress all notices
114
115 if ( ASENHA_SLUG === $plugin_page ) {
116
117 remove_all_actions( 'admin_notices' );
118
119 }
120
121 // Add notice for successful settings update
122
123 if (
124 isset( $_GET[ 'page' ] )
125 && ASENHA_SLUG == $_GET[ 'page' ]
126 && isset( $_GET[ 'settings-updated' ] )
127 && true == $_GET[ 'settings-updated' ]
128 ) {
129 ?>
130 <script>
131 jQuery(document).ready( function() {
132 jQuery('.asenha-changes-saved').fadeIn(400).delay(2500).fadeOut(400);
133 });
134 </script>
135
136 <?php
137 }
138 }
139
140 /**
141 * Enqueue admin scripts
142 *
143 * @since 1.0.0
144 */
145 function asenha_admin_scripts( $hook_suffix ) {
146
147 $current_screen = get_current_screen();
148
149 // Get all WP Enhancements options, default to empty array in case it's not been created yet
150 $options = get_option( 'admin_site_enhancements', array() );
151
152 // For main page of this plugin
153
154 if ( is_asenha() ) {
155 wp_enqueue_style( 'asenha-jbox', ASENHA_URL . 'assets/css/jBox.all.min.css', array(), ASENHA_VERSION );
156 wp_enqueue_script( 'asenha-jbox', ASENHA_URL . 'assets/js/jBox.all.min.js', array(), ASENHA_VERSION, false );
157 wp_enqueue_script( 'asenha-jsticky', ASENHA_URL . 'assets/js/jquery.jsticky.mod.min.js', array( 'jquery' ), ASENHA_VERSION, false );
158 wp_enqueue_style( 'asenha-admin-page', ASENHA_URL . 'assets/css/admin-page.css', array( 'asenha-jbox' ), ASENHA_VERSION );
159 wp_enqueue_script( 'asenha-admin-page', ASENHA_URL . 'assets/js/admin-page.js', array( 'asenha-jsticky', 'asenha-jbox' ), ASENHA_VERSION, false );
160 }
161
162 // Enqueue on all wp-admin
163
164 wp_enqueue_style( 'asenha-wp-admin', ASENHA_URL . 'assets/css/wp-admin.css', array(), ASENHA_VERSION );
165
166 // Content Management >> Show IDs, for list tables in wp-admin, e.g. All Posts page
167
168 if ( ( false !== strpos( $current_screen->base, 'edit' ) ) // List tables for pages, posts, taxonomies
169 || ( false !== strpos( $current_screen->base, 'users' ) ) // Users list table
170 || ( false !== strpos( $current_screen->base, 'upload' ) ) // Media list table
171 ) {
172 wp_enqueue_style( 'asenha-list-table', ASENHA_URL . 'assets/css/list-table.css', array(), ASENHA_VERSION );
173 }
174
175 // Content Management >> Enable Media Replacement
176
177 if ( ( $current_screen->base == 'upload' ) // Media list table
178 || ( $current_screen->id == 'attachment' ) // Media edit page
179 ) {
180 // wp_enqueue_style( 'asenha-jbox', ASENHA_URL . 'assets/css/jBox.all.min.css', array(), ASENHA_VERSION );
181 // wp_enqueue_script( 'asenha-jbox', ASENHA_URL . 'assets/js/jBox.all.min.js', array(), ASENHA_VERSION, false );
182 wp_enqueue_style( 'asenha-media-replace', ASENHA_URL . 'assets/css/media-replace.css', array(), ASENHA_VERSION );
183 wp_enqueue_script( 'asenha-media-replace', ASENHA_URL . 'assets/js/media-replace.js', array(), ASENHA_VERSION, false );
184 }
185
186 // Content Management >> Hide Admin Notices
187 if ( array_key_exists( 'hide_admin_notices', $options ) && $options['hide_admin_notices'] ) {
188 wp_enqueue_style( 'asenha-jbox', ASENHA_URL . 'assets/css/jBox.all.min.css', array(), ASENHA_VERSION );
189 wp_enqueue_script( 'asenha-jbox', ASENHA_URL . 'assets/js/jBox.all.min.js', array(), ASENHA_VERSION, false );
190 wp_enqueue_style( 'asenha-hide-admin-notices', ASENHA_URL . 'assets/css/hide-admin-notices.css', array(), ASENHA_VERSION );
191 wp_enqueue_script( 'asenha-hide-admin-notices', ASENHA_URL . 'assets/js/hide-admin-notices.js', array( 'asenha-jbox' ), ASENHA_VERSION, false );
192 }
193
194 }
195
196 /**
197 * Add 'Access now' plugin action link.
198 *
199 * @since 1.0.0
200 */
201
202 function asenha_plugin_action_links( $links ) {
203
204 $settings_link = '<a href="tools.php?page=' . ASENHA_SLUG . '">Access now</a>';
205
206 array_unshift($links, $settings_link);
207
208 return $links;
209
210 }
211
212 /**
213 * Modify footer text
214 *
215 * @since 1.0.0
216 */
217 function asenha_footer_text() {
218
219 if ( is_asenha() ) {
220 ?>
221 <a href="https://wordpress.org/plugins/admin-site-enhancements/" target="_blank">Admin Site Enhancements</a> is on <a href="https://github.com/qriouslad/admin-site-enhancements" target="_blank">github</a>.
222 <?php
223 }
224
225 }
226
227 /**
228 * Check if current screen is this plugin's main page
229 *
230 * @since 1.0.0
231 */
232 function is_asenha() {
233
234 $request_uri = sanitize_text_field( $_SERVER['REQUEST_URI'] ); // e.g. /wp-admin/index.php?page=page-slug
235
236 if ( strpos( $request_uri, 'page=' . ASENHA_SLUG ) !== false ) {
237 return true; // Yes, this is the plugin's main page
238 } else {
239 return false; // Nope, this is NOT the plugin's page
240 }
241
242 }