- آموزش زمان بندی رویدادها با WP Cron در وردپرس
- مقدمه ای بر توسعه افزونه
- افزونه چیست ؟
- مبانی افزونه
- نیازمندی های هدر
- درج یک مجوز نرم افزار در افزونه
- قلاب های فعال و غیر فعال سازی
- متدهای حذف در سایت های وردپرس
- امنیت افزونه
- بررسی قابلیت های کاربر
- اعتبار سنجی داده ها
- امنیت ورودی
- امنیت خروجی
- Nonce ها
- قلاب ها
- اکشن ها (Actions)
- فیلترها (Filters)
- ایجاد قلاب های سفارشی
- تاپیک های پیشرفته
- منوهای مدیریت
- منوهای سطح بالا
- زیر منوها
- کدهای کوتاه
- مبانی کدهای کوتاه
- کدهای کوتاه جفتی
- کدهای کوتاه پارامتردار
- تنظیمات
- API های تنظیمات
- ایجاد و استفاده از گزینه ها
- گزینه های تکی و آرایه ای
- صفحه تنظیمات سفارشی
- فراداده (Metadata)
- ایجاد و مدیریت فراداده نوشته
- ایجاد متاباکس های سفارشی
- دریافت فراداده
- انواع نوشته سفارشی
- ایجاد پست تایپ سفارشی
- کار با داده های پست تایپ ها
- طبقه بندی یا Taxonomy در وردپرس
- ایجاد و کار با طبقه بندی های سفارشی
- کار با متادیتا (Metadata) کاربران در وردپرس
- ایجاد و مدیریت کاربران در وردپرس
- نقش ها و قابلیت های کاربران در وردپرس
- آموزش استفاده از سرویس HTTP API در وردپرس
- آموزش استفاده از ایجکس (Ajax) در وردپرس
- آموزش استفاده از Transients برای کش کردن در وردپرس
- آموزش WP-Cron وردپرس
- آموزش استفاده از جیکوئری (jQuery) در وردپرس
- آموزش کار با PHP سمت سرور و Enqueue در وردپرس
- قلاب کردن WP-Cron وردپرس به سیستم زمان بندی سرور
در این بخش می خوانید :
اعتبار سنجی چیست ؟
اعتبار سنجی داده چگونه انجام می شود ؟
توابع جاوااسکریپت و پی اچ پی سفارشی
اعتبار سنجی داده چیست ؟
اعتبار سنجی داده به معنی بررسی داده های ورودی جهت صحت نوع و مقدار آنها ، قبل از انجام هر کاری به روی آنهاست .
” داده های ورودی” معمولا به داده های ورودی از فرم ها گفته می شود که توسط کاربران ارسال شده اند . اما می توانند از منابع دیگری مانند خوراک RSS ، درخواست های AJAX یا سایر فراخوانی های API نیز باشند .
چند نمونه از اعتبار سنجی را در زیر به شما معرفی می کنیم :
- بررسی فیلدههای الزامی جهت خالی نبودن
- بررسی فیلد شماره تلفن جهت وجود فقط کاراکترهای عددی در آن
- بررسی صحت کد ملی وارد شده توسط فرمول اعتبار سنجی کد ملی
- بررسی اینکه یک فیلد کمتر از صفر نباشد
تا جایی که ممکن است اعتبار سنجی داده ها باید قبل از هر کاری صورت گیرد . به عنوان مثال در مورد اعتبار سنجی داده های یک فرم ، باید عمل اعتبار سنجی قبل از هر عملیات دیگری انجام شود . شما می توانید توسط کدهای جاوااسکریپت یا جی کوئری قبل از ارسال فرم ، داده های موجود در فیلدهای آن را پردازش و اعتبار سنجی کنید و در صورتی که هیچ مشکلی وجود نداشت ، اجازه ارسال فرم را بدهید .
البته فراموش نکنید که هیچ وقت برای اعتبار سنجی داده های فرم تنها به جاوااسکریپت بسنده نکنید و بعد از ارسال داده های فرم حتماً توسط پی اچ پی در سمت سرور نیز داده ها را پردازش و اعتبار سنجی کنید .
دلیل اینکار این است که ، ممکن است جاوااسکریپت در مرورگر کاربر به صورت عمدی یا سهوی غیر فعال باشد و در این حالت اعتبار سنجی سمت کلاینت با جاوااسکریپت یا جی کوئری انجام نمی شود .
داده هایی که از منابعی بجز فرم به وردپرس ارسال می شوند را باید با پی اچ پی پردازش و اعتبارسنجی کنید .
اعتبار سنجی داده ها چگونه انجام می شود ؟
حداقل ۳ روش جهت اعتبار سنجی وجود دارد :
- توابع توکار پی اچ پی
- توابع هسته وردپرس
- توابع سفارشی ایجاد شده توسط شما یا هر شخص دیگری
توابع توکار پی اچ پی :
Empty() , isset() برای بررسی اینکه یک متغیر وجود دارد و خالی نیست .
Strlen() , mb_match() جهت بررسی تعداد کاراکترهای یک رشته
Strops() , preg_match() برای موقعیت یابی یک رشته در رشته دیگر
Count() جهت بررسی تعداد عناصر یک آرایه
In_array() جهت بررسی وجود یک شی ( رشته ، عدد و …) در یک آرایه
توابع هسته وردپرس :
وردپرس تعدادی تابع مفید را برای اعتبارسنجی انواع مختلف داده را فراهم کرده است .
در اینجا چند نمونه را بررسی می کنیم :
Is_email() جهت بررسی صحت یک ایمیل
Term_exists() برای بررسی وجود داشتن یک برچسب ، دسته بندی یا سایر تکسونومی ها
user name_exists() برای بررسی وجود یا عدم وجود یک نام کاربری
validate_file() برای بررسی اینکه آیا آدرس فایل وارد شده یک آدرس واقعی است یا خیر ( وجود یا عدم وجود فایل را چک نمی کند .) .
برای اطلاع از توابع بیشتری در این زمینه کافیست در مخزن وردپرس عبارت هایی مانند *_exists() , *_validata() , is_*() را جستجو کنید . هر چند که همه این توابع برای اعتبارسنجی بکار نمی روند ، اما خیلی از آنها بسیار مفید هستند ، مخصوصا برای شما که می خواهید افزونه ایجاد کنید .
توابع جاوااسکریپت و پی اچ پی سفارشی :
شما می توانید توابع سفارشی جاوااسکریپت و پی اچ پی خود را بنویسید و در پوسته یا افزونه خود از آنها استفاده کنید .
زمانی که یک تابع اعتبار سنجی می نوسیسد ، سعی کنید اسم آن را به صورت سوالی بنویسید مانند is_ir_zipcode,is_phone و…
همچنین سعی کنید تابع شما یک مقدار بولی (false یا true ) را به عنوان نتیجه برگرداند تا در دستورات شرطی به راحتی از آن استفاده کنید .
در کد زیر توسط یک تابع پی اچ پی مقدار یک فیلد برای اینکه آیا یک کد پستی معتبر است یا خیر بررسی می شود :
function is_us_zipcode( $zipcode ) {
if ( empty( $zipcode ) ) {
return false;
}
// a zip code should never have more than 10 characters
if ( 10 <= strlen( trim( $content ) ) ) {
// use a regex to check whether this zip code is correct
if ( preg_match( '/^\d{5}(\-?\d{4})?$/', $content ) ) {
return true;
}
} else {
return false;
}
}







سلام
بنده می خوام فیلد کد پستی را در کامرس اعتبار سنجی کنم به ده رقم
کد نویسی بد نیستم راهنمایی می کنید دقیق چکار کنم؟
ممنون میشم
دوست عزیز افزونه خاصی برای اینکار موجود نیست و قطعاً باید کدنویسی اختصاصی انجام بدین
شما هم که فرمودین برنامه نویسی بلد نیستید
باید یک نفر افزونه اش رو برای شما ایجاد کنه
اگر بخوایین تیم ما با هزینه می تونه براتون ایجاد کنه
برای اینکار تماس بگیرید – شماره بالای سایت هست
موفق باشید
سلام
گفتم بلد نیستم اما فکر نمی کنم کار سختی باشه، همین کد اعتبار سنجی که شما فرمودین را باید روی فیلد کد پستی کامرس اعمال کنیم
اگه شما بلد باشید م یتونید تو دو خط کدش را بگید نیا زبه پلاگین نیست
حال اگه دوست داشتید کمک کنید راهنمایی کنید اگر نه بنده نمی تونم متاسفانه هزینه کنم.
سپاس
دوست عزیز باور کنید کدش از ۲۰ خط هم بیشتر میشه
ضمناً اون که گفتم با هزینه انجام میدیم ، فقط یه پیشنهاد بود
متاسفانه زمانم خیلی محدود هست وگرنه حتماً براتون کدش رو مینوشتم
موفق باشید