皆様、お世話になっております。
おかげさまで、だいぶWordPressとPHPが分かるようになってきました。
今回、有識者の方々にお知恵をお借りしたいことは、以下の通りです。
既存の既に存在しているWordPressの管理画面の左メニューに項目を追加して並べ替えを行ったところ、
今まではダッシュボードの下に表示されていた「Jetpack」が修正後ダッシュボードメニューの上に並ぶようになり、
色々試したのですが、ダッシュボードメニューの下に並んでくれなくて困っている。
当方がメニュー項目を追加して並び替えを行ったメニューイメージ
functions.php内で並び替えを行っているコード部分
PHP
1/* 2 * admin_menu 3 */ 4//並び替え 5function custom_menu_order($menu_ord) { 6 if (!$menu_ord) return true; 7 return array( 8 'custom_server_info', //サーバー情報 9 'index.php', //ダッシュボード 10 'jetpack', //Jetpack 11 'edit.php?post_type=top', //トップ 12 'edit.php?post_type=page', //固定ページ 13 'separator1', //区切り線1 14 'upload.php', //メディア 15 'edit.php', //ブログ 16 'edit.php?post_type=news', //お知らせ 17 'edit.php?post_type=magazine', //メールマガジン 18 'edit.php?post_type=acf', //カスタムフィールド 19 'separator2', //区切り線2 20 'themes.php', //外観 21 'edit.php?post_type=readme', //読んで 22 'edit.php?post_type=edit_plan', //編集予定 23 'plugins.php', //プラグイン 24 'options-general.php', //設定 25 'separator-last', //区切り線3 26 'edit.php?post_type=voice', //利用者の声 27 'edit.php?post_type=faq', //Q&A 28 'users.php', //ユーザー 29 'tools.php', //ツール 30 ); 31} 32add_filter('custom_menu_order', 'custom_menu_order'); 33add_filter('menu_order', 'custom_menu_order');
functions.php内でメニュー項目の追加を行っている部分のコード
PHP
1/* 2 * 新規メニュー項目をAdmin MenuのTOPレベルに追加する 3 * 4 */ 5add_action('admin_menu', 'custom_menu_insert'); 6 7function custom_menu_insert() { 8 include('functions/func-select.php'); //本番/テスト環境で設定値が違う部分の読み込み 9 10 add_menu_page('サーバー環境情報', 'サーバー情報', 'manage_options', 'custom_server_info', '', '/wp-content/uploads/2021/02/server-info.png', '1'); 11 add_submenu_page( 'custom_server_info', 'サーバー環境情報', $server_info, 'manage_options', 'show_custom_server_info_sub_menu', 'show_custom_server_info'); 12 remove_submenu_page( 'custom_server_info', 'custom_server_info' ); 13} 14 15remove_action( 'admin_notices', 'custom_my_plugin_admin_notices' ); 16 17function custom_my_plugin_admin_notices() { 18 echo "<div id='notice' class='updated fade'><p>サーバー情報 Plugin はまだ構成されていません。すぐに構成してください。</p></div>\n"; 19} 20 21function show_custom_server_info() { 22 23 include('functions/func-select.php'); //本番/テスト環境で設定値が違う部分の読み込み 24 25 if (!current_user_can('manage_options')) { 26 wp_die( __('このページにアクセスするための十分な権限がありません。') ); 27 } 28 29 echo "<h1>$server_info</h1>"; 30} 31
func-select.php (functions/func-select.php)
PHP
1<?php 2// 本番環境とtest環境で異なるため上書き禁止 3$sgn = 'inner_sgn'; 4$sgnImg = 'indetail.jpg'; 5$toSgn = 'innerSgn'; 6$rooturl = '/wp-content/themes/storyland'; 7$theOffice = 78;//親ID 8$foobar = 756; 9$indetail = 1131; 10$indetail_a_type = 1566; 11$service = 72; 12$esc = array(84);//office本文で非表示にするID 13$del = array(84,18);//top,sideで非表示にするID 14$server_info = 'rolipop-test'; 15 ?>
試したこと
JetpackのダッシュボードのURLが
https://foo.bar.com/wp-admin/admin.php?page=jetpack#/dashboard
だったので、
並び替えの部分で
'jetpack', //Jetpack
を
'jetpack', //Jetpack 'jetpack#', //Jetpack 'jetpack#/dashboard', //Jetpack 'jetpack#/', //Jetpack
と、いろいろ試しましたがダッシュボードの下に並んでくれませんでした。
何かヒントをいただければ幸いです。
あなたの回答
tips
プレビュー