mirror of
https://ghproxy.net/https://github.com/abhijitb/helix.git
synced 2025-08-28 06:26:00 +08:00
fix menu item visibility
This commit is contained in:
parent
01a7f967a4
commit
38067e490a
1 changed files with 25 additions and 37 deletions
|
@ -28,23 +28,7 @@ add_action(
|
||||||
// Remove all admin menu separators.
|
// Remove all admin menu separators.
|
||||||
remove_all_admin_menu_separators();
|
remove_all_admin_menu_separators();
|
||||||
|
|
||||||
// 2) Ensure the "WordPress Admin" return link is present on first load.
|
// 2) Add custom Helix menu items.
|
||||||
if ( ! get_option( 'helix_use_default_admin', false ) ) {
|
|
||||||
global $admin_page_hooks;
|
|
||||||
if ( ! isset( $admin_page_hooks['wordpress-admin'] ) ) {
|
|
||||||
add_menu_page(
|
|
||||||
'WordPress Admin',
|
|
||||||
'WordPress Admin',
|
|
||||||
'read',
|
|
||||||
'wordpress-admin',
|
|
||||||
'wordpress_admin_callback',
|
|
||||||
'dashicons-wordpress',
|
|
||||||
2
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// 3) Add custom Helix menu items.
|
|
||||||
add_menu_page(
|
add_menu_page(
|
||||||
'Helix Posts',
|
'Helix Posts',
|
||||||
'Posts',
|
'Posts',
|
||||||
|
@ -68,11 +52,6 @@ add_action(
|
||||||
10
|
10
|
||||||
);
|
);
|
||||||
|
|
||||||
/**
|
|
||||||
* Ensure the "WordPress Admin" return link is present when landing on Helix, even on the first load
|
|
||||||
* after switching modes in the same request.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Remove all admin menu separators.
|
* Remove all admin menu separators.
|
||||||
*/
|
*/
|
||||||
|
@ -95,22 +74,31 @@ function remove_all_admin_menu_separators() {
|
||||||
add_action(
|
add_action(
|
||||||
'admin_menu',
|
'admin_menu',
|
||||||
function () {
|
function () {
|
||||||
// Only show the "WordPress Admin" link when in Helix mode.
|
global $pagenow;
|
||||||
$use_default_admin = get_option( 'helix_use_default_admin', false );
|
|
||||||
if ( $use_default_admin ) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Add a menu item to go back to default WordPress admin.
|
// Check if we're going to the Helix page by looking at the sanitized request.
|
||||||
add_menu_page(
|
$page_requested = filter_input( INPUT_GET, 'page', FILTER_SANITIZE_URL );
|
||||||
'WordPress Admin', // Page title.
|
$is_helix_request = ( 'admin.php' === $pagenow && 'helix' === $page_requested );
|
||||||
'WordPress Admin', // Menu title.
|
$use_default_admin = get_option( 'helix_use_default_admin', false );
|
||||||
'read', // Capability.
|
|
||||||
'wordpress-admin', // Menu slug.
|
// Always show the WordPress Admin link when navigating to Helix, or when not in default admin mode.
|
||||||
'wordpress_admin_callback', // Callback function.
|
if ( $is_helix_request || ! $use_default_admin ) {
|
||||||
'dashicons-wordpress', // Icon.
|
// If this is a Helix request, ensure we're in Helix mode.
|
||||||
2 // Position (after main Helix menu).
|
if ( $is_helix_request ) {
|
||||||
);
|
update_option( 'helix_use_default_admin', false );
|
||||||
|
}
|
||||||
|
|
||||||
|
// Add a menu item to go back to default WordPress admin.
|
||||||
|
add_menu_page(
|
||||||
|
'WordPress Admin', // Page title.
|
||||||
|
'WordPress Admin', // Menu title.
|
||||||
|
'read', // Capability.
|
||||||
|
'wordpress-admin', // Menu slug.
|
||||||
|
'wordpress_admin_callback', // Callback function.
|
||||||
|
'dashicons-wordpress', // Icon.
|
||||||
|
2 // Position (after main Helix menu).
|
||||||
|
);
|
||||||
|
}
|
||||||
},
|
},
|
||||||
1000
|
1000
|
||||||
);
|
);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue