remove_submenu_page

The timeline below displays how wordpress function remove_submenu_page has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

WordPress Version: 5.9

/**
 * Removes an admin submenu.
 *
 * Example usage:
 *
 *  - `remove_submenu_page( 'themes.php', 'nav-menus.php' )`
 *  - `remove_submenu_page( 'tools.php', 'plugin_submenu_slug' )`
 *  - `remove_submenu_page( 'plugin_menu_slug', 'plugin_submenu_slug' )`
 *
 * @since 3.1.0
 *
 * @global array $submenu
 *
 * @param string $menu_slug    The slug for the parent menu.
 * @param string $submenu_slug The slug of the submenu.
 * @return array|false The removed submenu on success, false if not found.
 */
function remove_submenu_page($menu_slug, $submenu_slug)
{
    global $submenu;
    if (!isset($submenu[$menu_slug])) {
        return false;
    }
    foreach ($submenu[$menu_slug] as $i => $item) {
        if ($submenu_slug === $item[2]) {
            unset($submenu[$menu_slug][$i]);
            return $item;
        }
    }
    return false;
}

WordPress Version: 5.7

/**
 * Remove an admin submenu.
 *
 * @since 3.1.0
 *
 * @global array $submenu
 *
 * @param string $menu_slug    The slug for the parent menu.
 * @param string $submenu_slug The slug of the submenu.
 * @return array|false The removed submenu on success, false if not found.
 */
function remove_submenu_page($menu_slug, $submenu_slug)
{
    global $submenu;
    if (!isset($submenu[$menu_slug])) {
        return false;
    }
    foreach ($submenu[$menu_slug] as $i => $item) {
        if ($submenu_slug === $item[2]) {
            unset($submenu[$menu_slug][$i]);
            return $item;
        }
    }
    return false;
}

WordPress Version: 5.6

/**
 * Remove an admin submenu.
 *
 * @since 3.1.0
 *
 * @global array $submenu
 *
 * @param string $menu_slug    The slug for the parent menu.
 * @param string $submenu_slug The slug of the submenu.
 * @return array|bool The removed submenu on success, false if not found.
 */
function remove_submenu_page($menu_slug, $submenu_slug)
{
    global $submenu;
    if (!isset($submenu[$menu_slug])) {
        return false;
    }
    foreach ($submenu[$menu_slug] as $i => $item) {
        if ($submenu_slug === $item[2]) {
            unset($submenu[$menu_slug][$i]);
            return $item;
        }
    }
    return false;
}

WordPress Version: 4.4

/**
 * Remove an admin submenu.
 *
 * @since 3.1.0
 *
 * @global array $submenu
 *
 * @param string $menu_slug    The slug for the parent menu.
 * @param string $submenu_slug The slug of the submenu.
 * @return array|bool The removed submenu on success, false if not found.
 */
function remove_submenu_page($menu_slug, $submenu_slug)
{
    global $submenu;
    if (!isset($submenu[$menu_slug])) {
        return false;
    }
    foreach ($submenu[$menu_slug] as $i => $item) {
        if ($submenu_slug == $item[2]) {
            unset($submenu[$menu_slug][$i]);
            return $item;
        }
    }
    return false;
}

WordPress Version: 4.3

/**
 * Remove an admin submenu
 *
 * @since 3.1.0
 *
 * @global array $submenu
 *
 * @param string $menu_slug The slug for the parent menu
 * @param string $submenu_slug The slug of the submenu
 * @return array|bool The removed submenu on success, False if not found
 */
function remove_submenu_page($menu_slug, $submenu_slug)
{
    global $submenu;
    if (!isset($submenu[$menu_slug])) {
        return false;
    }
    foreach ($submenu[$menu_slug] as $i => $item) {
        if ($submenu_slug == $item[2]) {
            unset($submenu[$menu_slug][$i]);
            return $item;
        }
    }
    return false;
}

WordPress Version: 3.7

/**
 * Remove an admin submenu
 *
 * @since 3.1.0
 *
 * @param string $menu_slug The slug for the parent menu
 * @param string $submenu_slug The slug of the submenu
 * @return array|bool The removed submenu on success, False if not found
 */
function remove_submenu_page($menu_slug, $submenu_slug)
{
    global $submenu;
    if (!isset($submenu[$menu_slug])) {
        return false;
    }
    foreach ($submenu[$menu_slug] as $i => $item) {
        if ($submenu_slug == $item[2]) {
            unset($submenu[$menu_slug][$i]);
            return $item;
        }
    }
    return false;
}