بسیاری از افزونه هایی که شما توسعه می دهید به منوهایی نیاز دارند تا بوسیله آنها کاربران بتوانند به صفحه تنظیمات افزونه دسترسی داشته باشند .

وردپرس دو روش را برای اضافه کردن منو به یک افزونه را در اختیار شما قرار می دهد :

  • ایجاد یک منوی سطح بالا ( در این مطب به این مورد پرداخته می شود )
  • ایجاد زیرمنو

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

یکی از منوهای سطح بالا که به صورت پیش فرض در وردپرس وجود دارد ، منوی “تنظیمات” می باشد .

برای ایجاد یک منوی سطح بالا از تابع add_menu_page() استفاده می شود .

تابع add_menu_page()  پارامترهای زیر را دریافت می کند :

page_title – عنوان صفحه که در تگ <title> نمایش داده می شود .

menu_title – نام منو که در بخش مدیریت نمایش داده می شود .

capability – حداقل سطح دسترسی کاربران برای مشاهده منو .

menu_slug – نامک منو . این نامک در آدرس صفحه منو نمایش داده می شود و باید منحصربفرد باشد .

function – نام تابعی که وظیفه ایجاد محتوای صفحه مربوط به منو را بر عهده دارد .

Icon_url – آدرس url تصویر سفارشی برای استفاده جهت آیکن منو

position – مکان مورد نظر برای نمایش منو در لیست منوی مدیریت وردپرس

 

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

برای اجرای کدهای مربوط به منو ، از قلاب اکشن admin_menu استفاده می کنیم . این قلاب اکشن گزینه مناسبی برای اضافه کردن منو و زیرمنو به وردپرس می باشد .

همانطور که مشاهده می کنید قلاب اکشن admin_menu تابع سفارشی شما یعنی rwpp_menuexample_create_menu() را فراخوانی می کند . سپس بوسیله تابع add_menu_page() منوی سفارشی به وردپرس اضافه می شود .

نام منو عبارت Menu Example Settings تنظیم شده است و تنها کاربرانی که دارای قابلیت manage_options  (دارای نقش مدیریت یا Administrator) هستند ، می توانند آن را مشاهده کنند . همچنین یک آیکن که در مسیر  /images وجود دارد به عنوان آیکن منو تنظیم شده است .

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

منوها ویژگی های رایج در افزونه های وردپرس هستند و معمولاً کاربران انتظار دارند که هر افزونه حداقل یک منو یا زیر منو برای دسترسی به تنظیمات را در اختیار آنها قرار دهد .

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

ادغام افزونه با وردپرسافزودن یک زیرمنو به وردپرس
پیشنهاد می کنیم برای دریافت آخرین مطالب کانال تلگرام کانی تمزرا دنبال کنید .