Ті, хто займаються розробкою плагінів або тем для WordPress розуміють, що користувачів треба забезпечити якимись настройками.
Причому за логікою настройки повинні перебувати в адмінці - для цього і потрібні адміністративні меню. «Парамети», «Загальні», «Обговорення», «Всі користувачі» і так далі - це вони і є.
Коротше, як їх створити?
Як завжди, ми не будемо використовувати чиїсь криві готові плагіни і засунь весь код в functions.php.
Функція add_menu_page ()
$ Page_title - то, що буде відображатися в заголовку сторінки з настройками,
$ Menu_title - так буде називатися пункт в меню з посиланням на цю сторінку,
$ Capability - рівень доступу користувача до цього меню,
$ Menu_slug - це буде визначати URL сторінки з настройками,
$ Function - функція, що генерує сторінку,
$ Position - порядок, за замовчуванням в самий кінець;
Але як зробити, щоб вся ця хрень працювала ?! Наведу приклад, і відразу все стане ясно.
Засовує цей код в functions.php і ось що отримуємо:

add_submenu_page ()
Виникає друге питання - як створити підміню і прикрутити його наприклад до меню «Консоль» або «Параметри», яке до речі є на малюнку вище.
Є що нового? Тільки одне:
$ Parent_slug - це $ menu_slug батьківського елемента. Щоб його дізнатися просто наведіть мишкою на який-небудь пункт і подивіться посилання. Те, що знаходиться в самому кінці, після слеша - це і є $ parent_slug.
Ще один приклад:
У цьому прикладі $ parent_slug - це index.php, значить підміню буде кріпитися до батьківського елементу «Консоль».
