رفع مشکل ثبت کد پستی با ارقام فارسی در ووکامرس
کاربران فروشگاه اینترنتی شما در هنگام ثبت سفارش خرید، ممکن است در حالتی که صفحه کلید آنها روی حروف فارسی قرار دارد، کد پستی خود را وارد نمایند. در چنین حالتی ووکامرس پیام خطایی با متن «لطفا یک کد پستی معتبر وارد کنید» به آنها نشان میدهد.
برای رفع این مشکل کافی است کد زیر را در فایل functions.php قالب خود درج کنید. این کد وظیفه دارد، کد پستی وارد شده توسط کاربر را پیش از اینکه توسط ووکامرس مورد ارزیابی قرار گیرد به حروف انگلیسی تبدیل کند و در نتیجه، خریداران شما هم با خطایی مواجه نمیشوند و هم کد پستی به درستی و با حروف انگلیسی در پایگاه داده ذخیره خواهد شد.
1 2 3 4 5 6 7 8 9 10 11 12 |
add_filter( 'woocommerce_format_postcode', 'roka_woocommerce_format_postcode', 2, 10 ); function roka_woocommerce_format_postcode( $postcode, $country ) { return fa2en( $postcode ); } function fa2en( $input ) { $num_pairs = Array ( "۰" => "0", "۱" => "1", "۲" => "2", "۳" => "3", "۴" => "4", "۵" => "5", "۶" => "6", "۷" => "7", "۸" => "8", "۹" => "9" ); return strtr( $input, $num_pairs ); } |
سلام
ممنون از آموزش خوبتون
میشه برای فیلد شماره موبایل در ثبت نام دیجیتس هم این نمونه کد رو اصلاح کنید و کامنت کنید.
چون اگر با اعداد فارسی باشه خطا میده
با سلام
با این افزونه آشنایی نداریم و جهت انجام کار یا باید از برنامهنویس اصلی آن بخواهید که کار را انجام بدهد یا برای انجام توسط ما میبایست به صورت تجاری اقدام نمایید
این کد باعث میشه بیش از 10 رقم بشه ارور بده ؟
من فیلد کد پستی بیش از 10 رقم بزنن هم وارد پرداخت میشه و نمی خوام به این صورت باشه
ممنون میشم منو راهنمایی کنید
با سلام
این کد فقط مشکل خطای اعداد فارسی را برطرف میکند
ممنون عالی بود دمتون گرم