تعداد بازدید: 99

Administration Menus در وردپرس

برای پیاده سازی پنل های شخصی در محیط ادمین وردپرس نیاز هست که یک منو به همراه یک صفحه در وردپرس ایجاد کنیم. هر منو که ایجاد میشه به دنبال اون یک پنل یا یک صفحه در پنل ادمین شما خواهید داشت که می تونید اطلاعات خودتون رو در اون پیاده سازی کنید.

درسته که شما یک صفحه خواهید داشت اما می تونید با استفاده از پارامتر GET اطلاعاتتون رو در اون پردازش کنید. همچنین می تونید فرم های شخصی با استفاده از پارامتر POST در پنل پیاده سازی کنید. همچنین می تونید SETTING API رو در پنل پیاده سازی کنید.

در پنل ادمین وردپرس یک منو داریم و یک زیر منو که هر زیر منو به یک منو متصل هست. پس زیر منو رو هم میشه به منوهای پیش فرض وردپرس اضافه کرد هم میشه به منوهایی که جدید اضافه کرد.

ساختار Top-Level Menu در پنل ادمین وردپرس

برای این کار از تابع add_menu_page در وردپرس استفاده می کنیم. تابعی می نویسیم در درون آن add_menu_page را استفاده می کنیم و در نهایت آن را به admin_menu قلاب می کنیم.

پارامتر های این تابع از قرار زیر هستند:

  • page_title : تیتر صفحه تنظیمات که با استفاده از تابع get_admin_page_title نمایش داده بشه .
  • menu_title : عنوان منو که در لیست منوها نمایش داده می شود.
  • capability : سطح دسترسی که کاربرانی با اون سطح دسترسی می تونن به صفحه شما دسترسی داشته باشند.در لیست سطوح دسترسی وردپرس موردی داریم تحت عنوان manage_options که بهتره در این مورد از این سطح دسترسی استفاده کنید .
  • menu_slug : نامک منو که در لینک به صورت مقداری به پارامتر page افزوده میشه.
  • function : این تابع که خروجی پنلی که باید در صفحه جدید نمایش بده رو باید بسازه.
  • icon_url: این مورد باید لینک آیکنی که قراره در سمت راست منو نمایش بده رو بگیره. اگر مایل باشید میتونید از لیست dashicon های وردپرس استفاده کنید.در صورتی که قراره تصویر باشه باید لینک مستقیم اون رو قرار بدید و در صورتی که قراره dashicon باشه باید کلاس مربوطه رو اضافه کنید مثلا ‘dashicons-admin-media’.
  • position: مکان نمایش منو در پنل ادمین که با استفاده از موارد موجود مقدار دهی میشه.

برای ثبت موقعیت یا همون پارامتر position می تونید از اعداد زیر استفاده کنید.

  • 2 – Dashboard
  • 4 – Separator
  • 5 – Posts
  • 10 – Media
  • 15 – Links
  • 20 – Pages
  • 25 – Comments
  • 59 – Separator
  • 60 – Appearance
  • 65 – Plugins
  • 70 – Users
  • 75 – Tools
  • 80 – Settings
  • 99 – Separator

مثلا اگر عدد مربوطه رو 5 بدید منوی شما بین پیشخوان و نوشته ها نمایش داده میشه.

یک مثال کلی برای افزودن منو با عنوان WPOrg Options به منوی اصلی وردپرس.

در مثال بالا تابع wporg_options_page تابع اصلی هست که به admin_menu قلاب شده و تابع wporg_options_page_html تابعی هست که به خروجی پنل صفحه ای که ساخته شده رو تولید می کنه.

برای حذف منوی اصلی در وردپرس باید از تابع remove_menu_page استفاده می کنیم و menu_slug  رو به عنوان پارامتر بهش میدیم.

برای این کار باید تابعی بنویسید و در داخلش از تابع remove_menu_page استفاده کنید و در آخر اون رو به admin_menu قلاب کنید.

مثال کلی از حذف منو ابزار ها از لیست منوهای وردپرس.

ساختار Sub-Menu در پنل ادمین وردپرس

برای این کار باید از تابع add_submenu_page استفاده کنیم. تابعی می نویسیم در درون آن add_submenu_page را استفاده می کنیم و در نهایت آن را به admin_menu قلاب می کنیم.

پارامتر های این تابع از قرار زیر هستند:

  • parent_slug : نامک منوی اصلی که در تابع add_menu_page دادیم . اگر قراره به عنوان زیر منویی از منو های پیش فرض وردپرس اضافه بشه می تونید روی اون منو کلیک کنید و slug رو بردارید . به طور مثال slug در منوی تنظیمات برابر options-general.php هست و برای ابزار ها برابر tools.php می باشد.
  • سایر موارد مشابه تابع add_menu_page می باشد .

لیست parent_slug ها برای منوهای پیش فرض وردپرس :

  • add_dashboard_page() – index.php
  • add_posts_page() – edit.php
  • add_media_page() – upload.php
  • add_pages_page() – edit.php?post_type=page
  • add_comments_page() – edit-comments.php
  • add_theme_page() – themes.php
  • add_plugins_page() – plugins.php
  • add_users_page() – users.php
  • add_management_page() – tools.php
  • add_options_page() – options-general.php
  • add_options_page() – settings.php

یک مثال کلی برای افزودن یک زیر منو به منوی اصلی ابزار ها در وردپرس

نکته : اگر در ساخت پلاگین خود از ساختار شی گرایی استفاده می کنید نحوه قلاب کردن تابع به صورتی است که شی کلاس و نام تابع را در قالب آرایه می گیرد.

مطالب مشابه

Settings API در ووکامرس

ما برای ساخت پنل تنظیمات برای افزونه ها از api خود وردپرس استفاده می کردیم. حال این که افزونه مکمل برای ووکامرس می...

آموزش نکات و تکنیک های برنامه نویسی وردپرس

Settings API در وردپرس

وردپرس برای ساخت پنل تنظیمات شبیه به پنل تنظیمات پیش فرض خودش API هایی رو قرار داده . Settings API , Options API دو...

اشتراک گذاری :

ابوالفضل صباغ

برنامه نویسی رو با زبان C در هفده سالگی شروع کردم . در حال حاضر به برنامه نویسی php برپایه معماری MVC , HMVC و همچنین سیستم مدیریت محتوای WordPress علاقه مند هستم و دوست دارم اطلاعاتم رو با شما به اشتراک بگذارم.

۰ دیدگاه برای Administration Menus در وردپرس

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *