۳ سلمان غلامی
حذف و اضافه کردن رکوردها در دیتابیس
جامعه وردپرس (برنامه نویسی) ایجاد شده در ۰۷ فروردین ۱۴۰۲

سلام وقتتون بخیر

در این جلسه فیلدهایی که در تنظیمات اضافه کردیم، مقادیرش به درستی ست میشه فقط موردی که هست زمانیکه فیلدها خالی میشن، رکوردهای خالی در دیتابیس میمونه چطور باید حذفشون کرد؟

من کد زیر را امتحان کردم رکوردهای خالی حذف نشدن (البته نمیدونم این روش درسته یا نه؟)

// register field user email
if (empty($_POST['_user_email'])) {
        unregister_setting('_user_email', 'sa_settings_field_email');
    }
// register field custom
    if (empty($_POST['_my_custom_setting'])) {
        unregister_setting('_my_custom_setting', 'sa_settings_field');
    }

الان در تصویر زیر ببینید رکوردها خالی هستن، چطور میشه وقتی خالی هستن پاکشون کنیم و بعد که دوباره مقدار دادیم ایجاد بشه

8a64-setting.JPG

سلام و احترام

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

برای پنل تنظیمات حرفه ای سفارشی هم که اصلا فیلد‌های خالی ارسال نمیشوند و فقط فیلد‌های دارای دیتا ارسال میگردند.

موفق باشید

بهنام مرادی ۰۷ فروردین ۱۴۰۲، ۱۶:۴۸

من همین کدها رو امتحان کردم ولی فیلد‌های خالی از دیتابیس حذف نشدن!

سلمان غلامی ۰۷ فروردین ۱۴۰۲، ۱۷:۳۷

سلام مجدد

از کد زیر استفاده کنید

if (empty($_POST['_user_email'])) {
    delete_option('_user_email');
}


بهترین پاسخ
بهنام مرادی ۰۷ فروردین ۱۴۰۲، ۱۷:۵۷