I found the answer on WordPress Forum:
http://wordpress.org/support/topic/add-backend-page-without-menu-item#post-2135050
It requires add_submenu_page() with slug = null (first argument). In WordPress documentation it’s marked as ‘required’ so it looks like it’s required but can be null.
Related Posts:
- Creating a WordPress admin page without a menu for a plugin
- Add menu page issues (permissions & position)
- Is there a way (plugin?) to restrict a user to being able to edit just one page?
- Admin menu as submenu from another plugin
- What is the best page ordering plugin that works well with WPML? [closed]
- Removing an admin page added by a 3rd party plugin. Gravity forms in this example
- Create page when plugin is activated
- Delete option doesn’t appear for plugins
- Adding an admin page – OOP approach not working
- jQuery plugin only in one page/post
- Generate Advanced Custom Fields box in custom admin menu page
- How can I show drafts in wp_dropdown_pages list?
- Plugin development: how to create a form and get custom data?
- How to create a Page alias in WordPress
- WP-PageNavi plugin doesn’t work with multiple pages of search results
- How to extract images of post and pages excluding header and logo image in wordpress?
- How to make a WP admin button/menu similar to Jetpack Notifications?
- wp_verify_nonce() why return false?
- Removing WordPress Plugin Menu Item for a specific user
- add function to saving change on Options Pages
- Change the $parent_file of a plugin page
- Custom Text Under Navigation Links
- Set a category for a page
- Automatically adding post and pages to new blog setups
- How do I remove the entire left nav bar in admin for certain level users?
- Show a special message for private page?
- how can I link to a PlugIn admin-sub-menu page after processing a formular
- Do action only on certain front end pages?
- Make menu page link inaccessible or disabled
- How to delete page by deactivating plugin
- Polylang : Interverting languages after development [closed]
- php page not found for plugin options menu
- Suggestions on Approach to New Plugin I’m Stuck On
- Create page from plugin, but have it completely hidden
- WP Plugins – Use includes to display page content
- How to add subcategories to the blogroll?
- How do I write an inventory list plugin that creates dynamic details pages?
- Proper way to replace the_content only for pages created by custom plugin
- Display Custom Field Value on Admin Page Column
- I need help locating a URL that is on my site map, but that I can’t find in my WordPress dashboard
- Show author on every sub-page
- What’s causing this error? “Warning: Invalid argument”
- Move plugin-settings to ‘Settings’-menu in the admin
- WordPress Admin Menu defining function is seperate file
- How to create a page with links to other pages that include image and excerpt?
- Making my plugin create a page?
- creating a plug in that would tap into save/update action of posts [closed]
- Add Content to Content()
- Why WP_Screeen doesn’t show all options with admin_body_class
- Plugin Admin Menu Boiler Plate
- Plugin – Admin menu page broken url
- Add logo to admin menu in my plugin
- Change website directory safely to add a static page on startup
- Price comparison table based on Custom Post Type?
- How do you add a settings page to another menu?
- How to dynamically change spots of text in custom page?
- What is the best way to make a custom page from a plugin?
- Setting text widget to one page only
- Gantry Framework: new page loads homepage content instead of page content
- Elementor Combined all Sections into 1 Text Editor
- Displaying page content from plugin, inside exising empty WP page
- Oops! That page can’t be found
- Copy/paste local images not working in WordPress
- Use get_pages() before another plugin modifies it
- Elementor: How to design Dropdown Select Box Navigation page like Chegg
- Give custom page template a custom post ID
- Bookmarking custom template pages which all have the same page ID
- Adding LOAD MORE on a page
- Randomize post (and page) IDs on generation
- WordPress Frontend Page using Plugin
- What plugin would make this happen? If is the theme
- Powerpress upload a podcast without creating a post for it
- Allow a page to be edited by a specific custom role
- Failed to load resource: the server responded with a status of 500 () post.php
- Enabling plugin on specific pages and subpages
- Python in WordPress – A “Hello World” implementation
- How to disable users to view Other pages
- Get content and send to 3rd party
- Wordress admin page is fetching error You do not have sufficient permissions to access this page.
- Multiple calling javascript from shortcode in one page
- History of page, interval of years
- Choose default template for a page with code
- Best way to create member pages for a lab website? [closed]
- Get page content by ID (from a plugin)
- Creating a page that does not show up in the frontend navigation bar
- Fatal error when accessing Pages in WP admin (and problems editing any pages)
- How to set up php,javascript and css to allow for our finished product to be displayed within a page?
- Getting 404 page not found error while trying to access add new plugin / themes
- Create a blank admin page from plugin
- Plugin menu replaced by another plugin?
- WordPress ultra slow if I click on posts?
- Display static pages instead of category, in code
- How to make only selected posts appear on a selected wordpress page
- Static page with formatted post list
- How do I add custom fields to the “Edit page” admin screen?
- Plugin link does not appear in my toolbar
- Additional scrollbar appears inside the browser on every page + lag scroll -Winner theme
- Update title field while listing wordpress page titles in Elementor selector
- Meta box not displaying on the plugin page
- How to access the page without registering in wordpress