افزونه ووکامرس (WooCommerce): راهکار کامل برای فروشگاههای اینترنتی
16/10/2024افزایش امنیت سایت وردپرس با رمزگذاری پوشه wp-admin
16/10/2024راهنمای کامل رفع خطای “invalid ISO 4217 currency code” در ووکامرس
اگر از ووکامرس برای فروشگاه آنلاین خود استفاده میکنید، احتمالاً با خطاهای مختلفی روبهرو شدهاید که یکی از رایجترین آنها، خطای invalid ISO 4217 currency code است. این خطا ممکن است هنگام تنظیم یا تغییر واحد پولی فروشگاه شما رخ دهد. در پاراگراف اول این مقاله، قصد داریم به بررسی علت بروز خطای currency در ووکامرس و راهکارهای حل این مشکل بپردازیم.
ووکامرس به عنوان یکی از محبوبترین افزونههای فروشگاهی برای وردپرس، قابلیت پشتیبانی از انواع واحدهای پولی مختلف را دارد. اما گاهی اوقات، به دلایل مختلف مانند تنظیمات اشتباه یا بروزرسانی نادرست، این خطا رخ میدهد. در ادامه، به شما نحوه شناسایی و رفع این مشکل را آموزش میدهیم.
ISO 4217 چیست و چرا اهمیت دارد؟
قبل از اینکه به جزئیات خطا بپردازیم، بهتر است ابتدا بدانیم ISO 4217 چیست. ISO 4217 استاندارد بینالمللی برای کدهای واحدهای پولی است که توسط سازمان بینالمللی استانداردسازی (ISO) تعریف شده است. این استاندارد شامل یک لیست از کدهای سهحرفی برای شناسایی واحدهای پولی مختلف جهان است. برای مثال، USD برای دلار آمریکا، EUR برای یورو، و IRR برای ریال ایران.
ووکامرس از این استاندارد برای شناسایی واحدهای پولی فروشگاهها استفاده میکند. اگر کدی که شما برای currency تنظیم کردهاید، با استاندارد ISO 4217 همخوانی نداشته باشد، خطای invalid ISO 4217 currency code رخ خواهد داد.
دلایل بروز خطای invalid ISO 4217 currency code در ووکامرس
1. استفاده از کد واحد پولی نامعتبر
یکی از رایجترین دلایل بروز این خطا، استفاده از کد واحد پولی نامعتبر است. برخی از کاربران ممکن است به اشتباه کدی را وارد کنند که در استاندارد ISO 4217 تعریف نشده است. برای جلوگیری از بروز این مشکل، حتماً از کدهای استاندارد و معتبر استفاده کنید.
2. ناسازگاری با افزونههای دیگر
برخی از افزونههای مرتبط با ووکامرس ممکن است با تنظیمات واحد پولی تداخل داشته باشند. این ناسازگاری میتواند باعث شود ووکامرس نتواند واحد پولی صحیح را شناسایی کند و در نتیجه این خطا را نمایش دهد. به عنوان مثال، افزونههای تغییر واحد پولی یا افزونههای چندزبانه ممکن است باعث این مشکل شوند.
3. مشکلات بروزرسانی
اگر ووکامرس یا یکی از افزونههای مرتبط با آن بهدرستی بروزرسانی نشده باشد، ممکن است تنظیمات واحد پولی شما دچار اختلال شود و این خطا ظاهر شود. بهروزرسانی ناقص یا عدم همخوانی نسخههای مختلف افزونهها و ووکامرس میتواند این مشکل را تشدید کند.
4. سفارشیسازی کد ووکامرس
بعضی از کاربران ممکن است تغییرات سفارشی در کد ووکامرس ایجاد کنند تا واحد پولی خاصی را اضافه کنند. اگر این تغییرات به درستی انجام نشوند یا کدی که وارد شده با استانداردهای ISO 4217 همخوانی نداشته باشد، این خطا رخ خواهد داد.
روشهای رفع خطای invalid ISO 4217 currency code در ووکامرس
1. بررسی و اصلاح کد واحد پولی
اولین گام برای رفع این خطا، بررسی و اطمینان از صحت کد واحد پولی وارد شده است. برای این کار، به تنظیمات ووکامرس رفته و در بخش پیکربندی > عمومی، کد واحد پولی خود را بررسی کنید. مطمئن شوید که کدی که وارد کردهاید با استاندارد ISO 4217 همخوانی دارد. در صورتی که کد اشتباهی وارد شده است، آن را با کد صحیح جایگزین کنید.
2. غیرفعال کردن افزونههای ناسازگار
اگر پس از بررسی کد واحد پولی همچنان مشکل باقی بود، ممکن است یکی از افزونههای نصب شده باعث بروز این مشکل باشد. به عنوان یک راهکار موقت، میتوانید افزونههای مرتبط با واحد پولی را بهصورت موقت غیرفعال کنید و بررسی کنید که آیا خطا برطرف میشود یا خیر.
3. بروزرسانی ووکامرس و افزونهها
اطمینان حاصل کنید که نسخه ووکامرس و تمامی افزونههای نصب شده در سایت شما بهروز هستند. بهروزرسانی به آخرین نسخه میتواند مشکلات احتمالی مربوط به ناسازگاری را رفع کند. همچنین، حتماً قبل از بروزرسانی از سایت خود نسخه پشتیبان تهیه کنید تا در صورت بروز مشکل بتوانید به نسخه قبلی بازگردید.
4. بازگرداندن تنظیمات به حالت پیشفرض
اگر تغییرات سفارشی در کد ووکامرس ایجاد کردهاید و این تغییرات باعث بروز این خطا شدهاند، بهتر است تنظیمات را به حالت پیشفرض بازگردانید. برای این کار، میتوانید از نسخه پشتیبانی قبلی استفاده کنید یا بهطور دستی تغییرات ایجاد شده را حذف کنید.
5. استفاده از پشتیبانی ووکامرس
اگر هیچیک از راهحلهای فوق کارساز نبود، میتوانید از پشتیبانی ووکامرس کمک بگیرید. تیم پشتیبانی ووکامرس میتواند به شما کمک کند تا مشکل را شناسایی و برطرف کنید.
جلوگیری از بروز خطای currency در ووکامرس
1. استفاده از کدهای استاندارد
یکی از بهترین راهکارها برای جلوگیری از بروز این خطا، استفاده از کدهای استاندارد ISO 4217 برای واحدهای پولی است. قبل از هرگونه تغییر در واحد پولی، از صحت کدهای وارد شده اطمینان حاصل کنید.
2. تست افزونهها قبل از نصب
قبل از نصب افزونههای جدید، بهتر است افزونه را در یک محیط آزمایشی بررسی کنید تا مطمئن شوید که با ووکامرس و دیگر افزونههای سایت شما تداخل نخواهد داشت. این کار میتواند از بروز مشکلات و خطاهای مشابه جلوگیری کند.
3. بروزرسانی منظم افزونهها و ووکامرس
همواره افزونهها و نسخه ووکامرس را بهروز نگه دارید. بهروزرسانی منظم افزونهها و ووکامرس میتواند از بروز مشکلات ناسازگاری جلوگیری کند.
4. تغییر واحد پولی به تومان ایران با استفاده از کد سفارشی
ووکامرس به صورت پیشفرض از ریال ایران به عنوان واحد پولی استفاده میکند. با این حال، ممکن است برخی کاربران تمایل داشته باشند که واحد پولی فروشگاه خود را به تومان (واحد پولی رایجتر در ایران) تغییر دهند. ووکامرس به صورت مستقیم از تومان پشتیبانی نمیکند، اما میتوان با استفاده از یک کد ساده این مشکل را برطرف کرد.
مراحل انجام کار:
- ابتدا وارد پیشخوان وردپرس خود شوید.
- به بخش نمایش > ویرایشگر پوسته بروید و فایل
functions.php
قالب خود را باز کنید. - کد زیر را به فایل
functions.php
اضافه کنید:
// تغییر واحد پولی ووکامرس به تومان
add_filter( ‘woocommerce_currency_symbol’, ‘change_currency_symbol_to_toman’, 10, 2 );
add_filter( ‘woocommerce_currencies’, ‘add_iranian_toman_currency’ );
function add_iranian_toman_currency( $currencies ) {
$currencies[‘IRT’] = __( ‘تومان ایران’, ‘woocommerce’ );
return $currencies;
}
function change_currency_symbol_to_toman( $currency_symbol, $currency ) {
switch( $currency ) {
case ‘IRT’: $currency_symbol = ‘تومان’; break;
}
return $currency_symbol;
}
// تنظیم تومان به عنوان واحد پیشفرض
add_filter( ‘woocommerce_currency’, function( $currency ) {
return ‘IRT’; // IRT کد اختصاصی برای تومان
});
توضیح کد:
- این کد یک واحد پولی جدید با نام تومان ایران (IRT) به ووکامرس اضافه میکند.
- نماد پولی پیشفرض این واحد به “تومان” تغییر داده میشود.
- همچنین واحد پولی تومان به عنوان واحد پیشفرض فروشگاه تنظیم میشود.
- پس از ذخیره تغییرات، به بخش ووکامرس > پیکربندی > عمومی بروید و در بخش “واحد پولی”، تومان ایران (IRT) را انتخاب کنید.
با استفاده از این روش، میتوانید به راحتی واحد پولی فروشگاه ووکامرس خود را از ریال به تومان تغییر دهید. این راهحل ساده به شما کمک میکند تا از بروز خطای currency و مشکلات ناشی از انتخاب واحد پولی نادرست جلوگیری کنید و تجربه کاربری بهتری برای مشتریان خود فراهم آورید.
نتیجهگیری
خطای invalid ISO 4217 currency code در ووکامرس ممکن است در ابتدا پیچیده به نظر برسد، اما با بررسی دقیق تنظیمات واحد پولی و انجام چندین راهکار ساده میتوانید این مشکل را به راحتی حل کنید. استفاده از کدهای استاندارد ISO 4217، غیرفعال کردن افزونههای ناسازگار و بروزرسانی منظم ووکامرس از جمله راهکارهایی هستند که به شما کمک میکنند تا از بروز این خطا جلوگیری کنید.
با انجام این مراحل و رعایت نکات مطرح شده، میتوانید به راحتی مشکل را برطرف کرده و تجربه کاربری بهتری را برای بازدیدکنندگان فروشگاه آنلاین خود فراهم کنید.