- آموزش زمان بندی رویدادها با WP Cron در وردپرس
- مقدمه ای بر توسعه افزونه
- افزونه چیست ؟
- مبانی افزونه
- نیازمندی های هدر
- درج یک مجوز نرم افزار در افزونه
- قلاب های فعال و غیر فعال سازی
- متدهای حذف در سایت های وردپرس
- امنیت افزونه
- بررسی قابلیت های کاربر
- اعتبار سنجی داده ها
- امنیت ورودی
- امنیت خروجی
- Nonce ها
- قلاب ها
- اکشن ها (Actions)
- فیلترها (Filters)
- ایجاد قلاب های سفارشی
- تاپیک های پیشرفته
- منوهای مدیریت
- منوهای سطح بالا
- زیر منوها
- کدهای کوتاه
- مبانی کدهای کوتاه
- کدهای کوتاه جفتی
- کدهای کوتاه پارامتردار
- تنظیمات
- API های تنظیمات
- ایجاد و استفاده از گزینه ها
- گزینه های تکی و آرایه ای
- صفحه تنظیمات سفارشی
- فراداده (Metadata)
- ایجاد و مدیریت فراداده نوشته
- ایجاد متاباکس های سفارشی
- دریافت فراداده
- انواع نوشته سفارشی
- ایجاد پست تایپ سفارشی
- کار با داده های پست تایپ ها
- طبقه بندی یا Taxonomy در وردپرس
- ایجاد و کار با طبقه بندی های سفارشی
- کار با متادیتا (Metadata) کاربران در وردپرس
- ایجاد و مدیریت کاربران در وردپرس
- نقش ها و قابلیت های کاربران در وردپرس
- آموزش استفاده از سرویس HTTP API در وردپرس
- آموزش استفاده از ایجکس (Ajax) در وردپرس
- آموزش استفاده از Transients برای کش کردن در وردپرس
- آموزش WP-Cron وردپرس
- آموزش استفاده از جیکوئری (jQuery) در وردپرس
- آموزش کار با PHP سمت سرور و Enqueue در وردپرس
- قلاب کردن WP-Cron وردپرس به سیستم زمان بندی سرور
مثال ساده : اضافه کردن یک صفحه به صورت زیر منو ، به منوی ابزارها (Tools)
اگر می خواهید یک صفحه را به صورت زیرمنو به منوی سطح بالای ابزارها (Tools menu) اضافه کنید ، از تابع add_management_page استفاده کنید .
add_management_page( $page_title, $menu_title, $capability, $menu_slug, $function);
این مثال می تواند یک گزینه زیرمنو را به هر منوی اصلی وردپرس اضافه کند . تنها کافیست نام تابع add_management_page() را با نام تابع متناسب با منوی اصلی (add_xxx_page ) ، که در ادامه همین مطلب آمده اند را ، جایگزین کنید .
برای این مثال نام افزونه را My Toolset قرار داده ایم .
گام اول : ایجاد یک تابع سازنده منو
ابتدا یک تابع برای اضافه کردن تابع add_management_page() را ایجاد می کنیم .
اگر می خواهید هر کار دیگری در زمان اضافه کردن زیرمنو انجام دهید ، می توانید کدهای آن را داخل همین تابع قرار دهید .
function add_my_toolset_menu() {
add_management_page(
'My Toolset Options',
'My Toolset',
'manage_options',
'my-toolset-menu',
'my_toolset_options_page'
);
}
توضیح تابع :
$page_title = ‘My Toolset Options’
عنوان صفحه جدید ، که کاربر با کلیک روی زیر منو ، آن را مشاهده می کند .
$menu_title = ‘My Toolset’
برچسب نمایشی روی زیرمنوی ایجاد شده را مشخص می کند
$capability = ‘manage_options’
قابلیت لازم کاربر برای مشاهده صفحه را مشخص می کند . قابلیت ها جز ویژگی های امنیتی وردپرس هستند . در اینجا فقط کاربرانی که دارای قابلیت manage_options هستند (مدیر) ، می توانند صفحه را ببینند .
$menu-slug = ‘my-toolset-menu’
مشخص کننده نام یا شناسه یکتایی که توسط وردپرس برای مراجعه به این منو ، استفاده می شود .
$function = ‘my-toolset-options-page’
نام تابع ایجاد کننده صفحه مرتبط با زیرمنو
گام دوم : ثبت تابع ایجاد کننده زیرمنو
برای اضافه کردن زیرمنو و صفحه آن ،از اکشن admin_menu استفاده می شود .
add_action('admin_menu', 'add_my_toolset_menu');
گام سوم : ایجاد یک تابع سازنده صفحه افزونه
اضافه کردن گزینه های زیرمنو به منوهای وردپرس
در زیر لیستی از توابع ویژه برای اضافه کردن گزینه های زیرمنو ، به یک منوی سطح بالای وردپرس را ، مشاهده می کنید .
- add_dashboard_page()
- add_posts_page()
- add_media_page()
- add_links_page()
- add_pages_page()
- add_comments_page()
- add_theme_page()
- add_plugins_page()
- add_users_page()
- add_management_page()
- add_options_page()
اضافه کردن یک زیرمنو به هر منوی سطح بالا
شما می توانید با استفاده از تابع add_submenu_page() یک زیر منو را به هر منوی سطح بالایی از وردپرس اضافه کنید .
گام اول : ایجاد تابع سازنده منو
ابتدا باید یک تابع برای نگهداری آرگومان های تابع add_submenu_page() را ایجاد کنید .
$parent_slug = ‘index.php’
نام یکتای منوی سطح بالای پدر (parent) .
شما می توانید از index.php برای ایجاد یک زیرمنو به عنوان زیر مجموعه منوی داشبورد (Dashboard) استفاده کنید .
شما می توانید از سایر صفحات منوی وردپرس به صورت زیر استفاده کنید :
۱.داشبورد (Dashboard) : با استفاده از add_submenu_page(‘index.php’, …)
برای اطلاعات بیشتر به add_dashboard_page() مراجعه کنید .
۲.نوشته ها (Posts) : با استفاده از add_submenu_page(‘edit.php’, …)
برای اطلاعات بیشتر به add_posts_page() مراجعه کنید .
۳. رسانه (Media) : با استفاده از add_submenu_page(‘ upload.php’, …)
برای اطلاعات بیشتر به add_media_page() مراجعه کنید .
۴. صفحات (Pages) : با استفاده از add_submenu_page(‘ upload.php’, …)
برای اطلاعات بیشتر به add_pages_page() مراجعه کنید .
۵. نظرات (Comments) : با استفاده از add_submenu_page(‘ edit-comments.php’, …)
برای اطلاعات بیشتر به add_comments_page() مراجعه کنید .
۶. انواع نوشته سفارشی (Custom Post Types) : با استفاده از add_submenu_page(‘edit.php?post_type=your_post_type’, …)
۷.نمایش (Appearance) : با استفاده از add_submenu_page(‘ themes.php’, …)
برای اطلاعات بیشتر به add_theme_page() مراجعه کنید .
۸. افزونه ها (Plugins) : با استفاده از add_submenu_page(‘plugins.php’, …)
برای اطلاعات بیشتر به add_plugins_page() مراجعه کنید .
۹. کاربران (Users) : با استفاده از add_submenu_page(users.php’, …)
برای اطلاعات بیشتر به add_users_page() مراجعه کنید .
۱۰ . ابزارها (Tools) : با استفاده از add_submenu_page(‘tools.php’, …)
برای اطلاعات بیشتر به add_management_page() مراجعه کنید .
۱۱. تنظیمات (Settings) : با استفاده از add_submenu_page(‘option-general.php’, …)
برای اطلاعات بیشتر به add_options_page() مراجعه کنید .
۱۲ . تنظیمات در حالت شبکه وردپرس : با استفاده از add_submenu_page(‘settings.php’, …)
$page_title = ‘My Submenu Page’
عنوان صفحه که در بالای زیرصفحه نمایش داده خواهد شد
$menu_title = ‘My Submenu Page’
عنوان زیرمنوی صفحه که در قسمت داشبورد نمایش داده می شود
$capability = ‘manage_options’
قابلیت لازم کاربر برای مشاهده صفحه . قابلیت ها یک ویژگی امنیتی وردپرس هستند .در اینجا تنها کاربرانی می توانند صفحه را مشاهده کنند که دارای سطح قابلیت manage_options هستند .
$menu-slug = ‘my-submenu-page’
نام یکتایی که توسط وردپرس برای مراجعه به صفحه مورد استفاده قرار می گیرد .
$function = ‘my_submenu_page_callback’
تابعی که برای ایجاد صفحه تنظیمات استفاده می شود .






