diff --git a/src/wp-admin/includes/plugin.php b/src/wp-admin/includes/plugin.php
index c898fc5..9d2718f 100644
a
|
b
|
function get_plugin_page_hookname( $plugin_page, $parent_page ) { |
1796 | 1796 | |
1797 | 1797 | /** |
1798 | 1798 | * @global string $pagenow |
| 1799 | * @global string $typenow |
1799 | 1800 | * @global array $menu |
1800 | 1801 | * @global array $submenu |
1801 | 1802 | * @global array $_wp_menu_nopriv |
… |
… |
function get_plugin_page_hookname( $plugin_page, $parent_page ) { |
1804 | 1805 | * @global array $_registered_pages |
1805 | 1806 | */ |
1806 | 1807 | function user_can_access_admin_page() { |
1807 | | global $pagenow, $menu, $submenu, $_wp_menu_nopriv, $_wp_submenu_nopriv, |
| 1808 | global $pagenow, $typenow, $menu, $submenu, $_wp_menu_nopriv, $_wp_submenu_nopriv, |
1808 | 1809 | $plugin_page, $_registered_pages; |
1809 | 1810 | |
1810 | 1811 | $parent = get_admin_page_parent(); |
1811 | 1812 | |
1812 | | if ( ! isset( $plugin_page ) && isset( $_wp_submenu_nopriv[ $parent ][ $pagenow ] ) ) { |
| 1813 | $real_pagenow = $pagenow; |
| 1814 | if ( 'edit.php' === $pagenow && 'post' !== $typenow ) { |
| 1815 | $real_pagenow = $pagenow . '?post_type=' . $typenow; |
| 1816 | } |
| 1817 | |
| 1818 | if ( ! isset( $plugin_page ) && isset( $_wp_submenu_nopriv[ $parent ][ $real_pagenow ] ) ) { |
1813 | 1819 | return false; |
1814 | 1820 | } |
1815 | 1821 | |
… |
… |
function user_can_access_admin_page() { |
1826 | 1832 | } |
1827 | 1833 | |
1828 | 1834 | if ( empty( $parent ) ) { |
1829 | | if ( isset( $_wp_menu_nopriv[ $pagenow ] ) ) { |
| 1835 | if ( isset( $_wp_menu_nopriv[ $real_pagenow ] ) ) { |
1830 | 1836 | return false; |
1831 | 1837 | } |
1832 | | if ( isset( $_wp_submenu_nopriv[ $pagenow ][ $pagenow ] ) ) { |
| 1838 | if ( isset( $_wp_submenu_nopriv[ $real_pagenow ][ $real_pagenow ] ) ) { |
1833 | 1839 | return false; |
1834 | 1840 | } |
1835 | | if ( isset( $plugin_page ) && isset( $_wp_submenu_nopriv[ $pagenow ][ $plugin_page ] ) ) { |
| 1841 | if ( isset( $plugin_page ) && isset( $_wp_submenu_nopriv[ $real_pagenow ][ $plugin_page ] ) ) { |
1836 | 1842 | return false; |
1837 | 1843 | } |
1838 | 1844 | if ( isset( $plugin_page ) && isset( $_wp_menu_nopriv[ $plugin_page ] ) ) { |
1839 | 1845 | return false; |
1840 | 1846 | } |
1841 | 1847 | foreach ( array_keys( $_wp_submenu_nopriv ) as $key ) { |
1842 | | if ( isset( $_wp_submenu_nopriv[ $key ][ $pagenow ] ) ) { |
| 1848 | if ( isset( $_wp_submenu_nopriv[ $key ][ $real_pagenow ] ) ) { |
1843 | 1849 | return false; |
1844 | 1850 | } |
1845 | 1851 | if ( isset( $plugin_page ) && isset( $_wp_submenu_nopriv[ $key ][ $plugin_page ] ) ) { |
… |
… |
function user_can_access_admin_page() { |
1861 | 1867 | } else { |
1862 | 1868 | return false; |
1863 | 1869 | } |
1864 | | } elseif ( $submenu_array[2] == $pagenow ) { |
| 1870 | } elseif ( $submenu_array[2] == $real_pagenow ) { |
1865 | 1871 | if ( current_user_can( $submenu_array[1] ) ) { |
1866 | 1872 | return true; |
1867 | 1873 | } else { |