رفتن به مطلب

نمایش اعداد به صورت ناعدد در وردپرس


S@eid

پست های پیشنهاد شده

بنده با استاد فاخر موافقم .. این همه از وب مسترها و وب گردان و اشخاص عادی از فایرفاکس استفاده می کنن نمیشه گفت بیاید از IE و Chrome استفاده کنید که!

ابتدا باید ببیند ریشه اصلی مشکل کجاست !

bzoawtn563m239qsblzm.png

هرچی هست در این کد نهفته است ... خوب توی ووکامرس شما می تونه کلاس این کد هرچی باشه برای من Input-text qty هست .. اما اگه دقت بکنید جلوی این کلاس number قرار داره که فایرفاکس عزیز ما با این مورد مشکل داره .. راه حل بنده این هست این کد Number رو به text تغییر بدید که میشه به این صورت

q22k05jvtdbdr61zkrjh.png

اگه الان با فایرباگ , فایرفاکس باشید میبینید بعد از تغییر به جای NAN یا ناعدد .. اعداد به قول قوه ی الهی نمایان میشن ..

خب مشکل به صورت تئوریک حل شده . حالا می مونه این کد کجا قرار داره !

آدرس محل تغییر اصلی فایل :


wp-content/plugins/woocommerce/templates/global/quantity-input.php

پانوشت ! ان مطلب صرفا برای ووکامرس بود ! این مشکل نشات گرفته از همین مشکل فایرفاکس هست ! این مشکل و با این راه حل برای نقاط مختلف وردپرستون هم میتونید اجرا کنید !

تمام ! امیدوارم خوش باشید و کنجکاو .. مشکلات و حل کنید نه اینکه صورت مسئله رو پاک کنید

ویرایش شده توسط macro
لینک به ارسال

سلام جناب Marco

سپاس از ارائه راه حل

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

موفق و سربلند باشید

لینک به ارسال

من برای روشن شدن کل موضوع یه توضیح کلی میدم. که کسی خواست راجبش تحقیق کنه راحت باشه!

این وضعیت فایرفاکس با HTML5 هست . https://wiki.mozilla.org/User%3aMounir.lamouri/HTML5_Forms

و اینم وضعیت این نقص در فایرفاکس که این موضوع از زمانی که فایرفاکس ورژن 28 آمد با شکوفا شدن HTML5 ریپورت شد . ریپورت باگ رو می تونید اینجا مطالعه کنید https://bugzilla.mozilla.org/show_bug.cgi?id=947728

روش های متفاوتی رو پیشنهاد دادن برای رافع این موضوع ولی به نتیجه ای نرسیدن موضع بر میگرده به number input type !

روشی که گفتم رو با تغییر number به tel و text یا date یعنی تغییر خاصیت فیلد تایپ فعلا میشه مشکل رو حل کرد!

لینک به ارسال

حل مشکل با کمک جی کوئری و تغییر خودکار تایپ number به text در فایرفاکس

1. این کد را به functions.php اضافه کنید


function fakhar_browser_body_class( $classes ) {
global $is_lynx, $is_gecko, $is_IE, $is_opera, $is_NS4, $is_safari, $is_chrome, $is_iphone;

if($is_lynx) $classes[] = 'lynx';
elseif($is_gecko) $classes[] = 'gecko';
elseif($is_opera) $classes[] = 'opera';
elseif($is_NS4) $classes[] = 'ns4';
elseif($is_safari) $classes[] = 'safari';
elseif($is_chrome) $classes[] = 'chrome';
elseif($is_IE) {
$browser = $_SERVER['HTTP_USER_AGENT'];
$browser = substr( "$browser", 25, 8);
if ($browser == "MSIE 7.0" ) {
$classes[] = 'ie7';
$classes[] = 'ie';
} elseif ($browser == "MSIE 6.0" ) {
$classes[] = 'ie6';
$classes[] = 'ie';
} elseif ($browser == "MSIE 8.0" ) {
$classes[] = 'ie8';
$classes[] = 'ie';
} elseif ($browser == "MSIE 9.0" ) {
$classes[] = 'ie9';
$classes[] = 'ie';
} else {
$classes[] = 'ie';
}
}
else $classes[] = 'unknown';

if( $is_iphone ) $classes[] = 'iphone';

return $classes;
}
add_filter( 'body_class', 'fakhar_browser_body_class' );

2. تگ body را به این شکل ویرایش کنید


<body <?php body_class(); ?>>

3. این کد را در header.php یا footer.php بگذارید بعد از اسکریپت لود کتابخانه jquery


<script>
jQuery(document).ready(function() {
jQuery(".unknown input[type='number']").each(function() {
jQuery(this).attr("type","text");
});
});
</script>

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...