get_admin_page_parent
The WordPress Core get admin page parent function.
Description
get_admin_page_parent( (string) $parent = '' );
Parameters (1)
- 0. $parent — Optional. (string) =>
''
- The parent.
Usage
if ( !function_exists( 'get_admin_page_parent' ) ) { require_once ABSPATH . '/wp-admin/includes/plugin.php'; } // The parent. $parent = ''; // NOTICE! Understand what this does before running. $result = get_admin_page_parent($parent);
Defined (1)
The function is defined in the following location(s).
- /wp-admin/includes/plugin.php
- function get_admin_page_parent( $parent = '' ) {
- global $parent_file, $menu, $submenu, $pagenow, $typenow,
- $plugin_page, $_wp_real_parent_file, $_wp_menu_nopriv, $_wp_submenu_nopriv;
- if ( !empty ( $parent ) && 'admin.php' != $parent ) {
- if ( isset( $_wp_real_parent_file[$parent] ) )
- $parent = $_wp_real_parent_file[$parent];
- return $parent;
- }
- if ( $pagenow == 'admin.php' && isset( $plugin_page ) ) {
- foreach ( (array)$menu as $parent_menu ) {
- if ( $parent_menu[2] == $plugin_page ) {
- $parent_file = $plugin_page;
- if ( isset( $_wp_real_parent_file[$parent_file] ) )
- $parent_file = $_wp_real_parent_file[$parent_file];
- return $parent_file;
- }
- }
- if ( isset( $_wp_menu_nopriv[$plugin_page] ) ) {
- $parent_file = $plugin_page;
- if ( isset( $_wp_real_parent_file[$parent_file] ) )
- $parent_file = $_wp_real_parent_file[$parent_file];
- return $parent_file;
- }
- }
- if ( isset( $plugin_page ) && isset( $_wp_submenu_nopriv[$pagenow][$plugin_page] ) ) {
- $parent_file = $pagenow;
- if ( isset( $_wp_real_parent_file[$parent_file] ) )
- $parent_file = $_wp_real_parent_file[$parent_file];
- return $parent_file;
- }
- foreach (array_keys( (array)$submenu ) as $parent) {
- foreach ( $submenu[$parent] as $submenu_array ) {
- if ( isset( $_wp_real_parent_file[$parent] ) )
- $parent = $_wp_real_parent_file[$parent];
- if ( !empty($typenow) && ($submenu_array[2] == "$pagenow?post_type=$typenow") ) {
- $parent_file = $parent;
- return $parent;
- } elseif ( $submenu_array[2] == $pagenow && empty($typenow) && ( empty($parent_file) || false === strpos($parent_file, '?') ) ) {
- $parent_file = $parent;
- return $parent;
- } elseif ( isset( $plugin_page ) && ($plugin_page == $submenu_array[2] ) ) {
- $parent_file = $parent;
- return $parent;
- }
- }
- }
- if ( empty($parent_file) )
- $parent_file = '';
- return '';
- }