علیرضا صادقی
1 سال پیش توسط علیرضا صادقی مطرح شد
3 پاسخ

اضافه کردن منو پلاگین به زیر منو قالب

دوستان سلام وقتتون بخیر
من یک منو تنظیمات برای قالبم دارم که میخوام منو تنظیمات پلاگینم بشه زیر منو قالب با استفاده از کد های زیر دارم اینکارو انجام میدم
ولی علاوه بر اضافه شدن به زیر منو قالب یه منو هم جداگانه برای پلاگین ایجاد میشه ممنون میشم راهنمایی کنید.

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


function add_mytheme_admin_menu()
{
     add_menu_page(
        'تنظیمات قالب',
        'تنظیمات قالب',
        'theme_menu_options',
        'my_add_options',
        'my_theme_settings',
        '',
        45
    );
    add_submenu_page(
        'my_add_options',
        'تنظیمات کلی',
        'تنظیمات کلی',
        'manage_options',
        'my_options'
    );

add_action("admin_menu", "add_mytheme_admin_menu");

در زیر هم کد هایی هستند که در فایل ادمین پلاگین نوشتم

function add_myplugin_setting_page()
{
 add_menu_page(
        'plugin',
        'plugin',
        'manage_options',
        'plugin_setting',
        'my_plugin_settings',
        '',
        2
    );add_submenu_page(
        'my_add_options',
        'ویجت های قالب',
        'ویجت های قالب',
        'manage_options',
        'myplugin_setting'
    );
}
add_action("admin_menu", "add_myplugin_setting_page");

ثبت پرسش جدید
مهدی نظری
تخصص : توسعه دهنده Front End
@mahdi.nazari 1 سال پیش مطرح شد
0

سلام دوست من 🖐
امیدوارم حالت خوب و عالی باشی✨

با توجه به کدهایی که ارائه دادی، مشکل اینه که در دو جا (در قسمت اضافه کردن منوها) از تابع add_menu_page برای ایجاد منو استفاده می‌کنی. این باعث می‌شه که منوهای جداگانه‌ای برای قالب و پلاگین ایجاد بشن . به جای آن، شما باید تابع add_submenu_page را به عنوان منوی فرعی در نظر بگیری تا منوی پلاگین به عنوان زیرمنوی قالب ایجاد بشه.

کد زیر قطعا میتونه کمکت کنه

function add_mytheme_admin_menu()
{
    add_menu_page(
        'تنظیمات قالب',
        'تنظیمات قالب',
        'theme_menu_options',
        'my_add_options',
        'my_theme_settings',
        '',
        45
    );
    add_submenu_page(
        'my_add_options',
        'تنظیمات کلی',
        'تنظیمات کلی',
        'manage_options',
        'my_options',
        'my_theme_settings' // استفاده مجدد از تابع تنظیمات قالب برای زیرمنو
    );

    add_submenu_page(
        'my_add_options',
        'ویجت های قالب',
        'ویجت های قالب',
        'manage_options',
        'myplugin_setting',
        'my_plugin_settings' // تابع تنظیمات پلاگین برای زیرمنو
    );
}
add_action("admin_menu", "add_mytheme_admin_menu");

در اینجا، تابع my_theme_settings برای منوی تنظیمات قالب و تابع my_plugin_settings برای منوی تنظیمات پلاگین استفاده می‌شن. با این تغییرات، تو باید تنها یک منوی فرعی برای تنظیمات پلاگین و یک منوی اصلی برای تنظیمات قالب داشته باشی همین 😊

امیدوارم پاسخم بهت کمک کرده باشه ❤️
موفق و پیروز باشی 🤘🌹


vahid1379
تخصص : wp developer
@vahid1379 1 سال پیش مطرح شد
0

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

داخل فایل پلاگین بجای اینکه add_menu_page بزنی ی Add_submenu_page بزن و parent رو بزن slug منو ایی که میخای بهش وصل بشه

اگه اشتباه متوجه شدم سوالت رو ی عکس از مشکلت بده


مهدی نظری
تخصص : توسعه دهنده Front End
@mahdi.nazari 1 سال پیش مطرح شد
0

سلام دوست من 🖐
امیدوارم حالت خوب و عالی باشی✨

با توجه به کدهایی که ارائه دادی، مشکل اینه که در دو جا (در قسمت اضافه کردن منوها) از تابع add_menu_page برای ایجاد منو استفاده می‌کنی. این باعث می‌شه که منوهای جداگانه‌ای برای قالب و پلاگین ایجاد بشن . به جای آن، شما باید تابع add_submenu_page را به عنوان منوی فرعی در نظر بگیری تا منوی پلاگین به عنوان زیرمنوی قالب ایجاد بشه.

کد زیر قطعا میتونه کمکت کنه

function add_mytheme_admin_menu()
{
    add_menu_page(
        'تنظیمات قالب',
        'تنظیمات قالب',
        'theme_menu_options',
        'my_add_options',
        'my_theme_settings',
        '',
        45
    );
    add_submenu_page(
        'my_add_options',
        'تنظیمات کلی',
        'تنظیمات کلی',
        'manage_options',
        'my_options',
        'my_theme_settings' // استفاده مجدد از تابع تنظیمات قالب برای زیرمنو
    );

    add_submenu_page(
        'my_add_options',
        'ویجت های قالب',
        'ویجت های قالب',
        'manage_options',
        'myplugin_setting',
        'my_plugin_settings' // تابع تنظیمات پلاگین برای زیرمنو
    );
}
add_action("admin_menu", "add_mytheme_admin_menu");

در اینجا، تابع my_theme_settings برای منوی تنظیمات قالب و تابع my_plugin_settings برای منوی تنظیمات پلاگین استفاده می‌شن. با این تغییرات، تو باید تنها یک منوی فرعی برای تنظیمات پلاگین و یک منوی اصلی برای تنظیمات قالب داشته باشی همین 😊

امیدوارم پاسخم بهت کمک کرده باشه ❤️
موفق و پیروز باشی 🤘🌹


رایموند
تخصص : مختصص وردپرس - برنامه نویس لار...
@Raymond 1 سال پیش مطرح شد
0

درود خوبی...
اخیرا افزونه ای نوشتم که تکمیل نکردم.
کد زیر:

add_action('admin_menu', 'odd_create_admin_menu');
function odd_create_admin_menu(){
    global $odd_page;
    $odd_page = add_menu_page(
        'فروش فایل',
        'فروش فایل',
        'manage_options',
        'odd_product',
//        'dashicons-cart', 6,
        function(){
            include(ODD_ADMIN_VIEW . 'odd_product.php');
        }
    );

    add_submenu_page(
        'odd_product',
        'تنظیمات',
        'تنظیمات',
        'manage_options',
        'odd_settings',
        function(){
            include(ODD_ADMIN_VIEW . 'odd_settings.php');
        }
    );

    add_submenu_page(
        'odd_product',
        'تراکنش ها',
        'تراکنش ها',
        'manage_options',
        'odd_transactions',
        function(){
            include(ODD_ADMIN_VIEW . 'odd_transactions.php');
        }
    );
    add_submenu_page(
        'odd_product',
        'درباره ما',
        'درباره ما',
        'manage_options',
        'odd_about',
        function(){
            include(ODD_ADMIN_VIEW . 'odd_about.php');
        }
    );

}

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام