web-dev-qa-db-ja.com

URLパラメータ付きのサブメニューとページにアクセスする

サブメニューのパラメータを追加したいのですが、管理者ページをクリックすると、次のメッセージが表示されます。

このページへのアクセスは許可されていません。

add_menu_page( 'Main Menu', '', $min_access_cap, 'main-main', array($this, 'main_menu'), $icon_url, 999 );

http://example.fmt/wp-admin/admin.php?page = main-main

add_submenu_page( 'main-menu', sprintf( __( '%1$s ‹ %2$s', 'main-menu' ), $title['page_title'], 'Submenu' ), $title['admin_menu_title'], $min_access_cap, 'page=settings&submenu=page2', array($this, 'sub_menu') );

http://example.fmt/wp-admin/admin.php?page =設定&サブメニュー= page2

サブメニューリンクを作成しましたが、問題はページに表示されています。アクセスが拒否されました。

どうすればこの問題を解決できますか?

ありがとう

2
Faysal Mahamud

あなたのコードをチェックしました。 add_submenu_page で誤った menu-slug を使用しています。なぜならadminはあなたのメニューのスラッグpage=settings&submenu=page2と衝突するページクエリvarを既に持っているからです。

コードを更新しました。



add_menu_page( 'Main Menu', 'Main Menu Titlw', $min_access_cap, 'main-main', array($this, 'main_menu'), $icon_url, 999 );

add_submenu_page( 'main-menu', sprintf( __( '%1$s ‹ %2$s', 'main-menu' ), $title['page_title'], 'Submenu' ), $title['admin_menu_title'], $min_access_cap, 'submenu/slug', array($this, 'sub_menu') );


4