فروشگاه ویرچومارت از قدیمی ترین و پر امکانات ترین کامپوننت های فروشگاهی جوملا هست که بسیاری از جوملا کاران قدیمی ترجیح دیم با این کامپوننت کار کنن. مشکلی که این کامپوننت داره این هست که فیلد های انتخاب ( selector field ) قسمت مدیریت در زبان فارسی غیر فعال هستند. در این مطلب که کپی شده از انجمن جوملا هست با روش حل این مشکل آشنا و می توانید از این کامپوننت بصورت فارسی نیز استفاده کنید.
سلام و خسته نباشید و با امید سربلندی برای همه شما.
امشب هم تصمیم گرفتم راه حل یکی دیگه از مشکلاتی که باعث میشه کاربر ها نتونن از بهترین فروشگاه ساز جوملا (البته نه فقط به نظر من مخصوصا از نظر آماری) استفاده کنن رو با شما مطرح کنم.
اینم جزو سوالاتی هست که مدام شما از من میپرسیدید.
مشکل:
خب اول بگیم مشکل چی هست.
فکر کنم دیگه کسی نمونده باشه که با جوملا و کامپوننت فوق العاده ویرچومارت کار کرده باشه ولی ندونه وقتی شما زبان رو روی فارسی در مدیریت یا قسمت کاربری تنظیم کنید. دیگه drop down های واحد پولی یا کشور و ... و کلا هرچی drop down وجود داره تو سیستم ویرچومارت در بخش های مختلف مدیریت مثل ثبت محصول یا یا وثبت و ویرایش مجموعه و ... و یا کاربری مثل فرم ثبت نام و ... از کار میافته.
خب این مشکل باعث شده خیلی ها مشکل رو اینقدر بزرگ کنن که بگن نمیشه از این سیستم تو زبان فارسی استفاده کرد و کلا به همین دلیل خیلی مظلوم واقع شده این سیستم و بر عکس کشور های چپ چین زبان در کشور ها راست چین زبان مثل کشور عزیز ما از محبوبیت کمتری برخوردار باشه.
راه حل مشکل:
گام اول: تشخیص مشکل
مشکل از اونجایی پیش میاد که فایل مربوط به جی کوئری dropdown ها فقط برای حالت ltr نوشته شده و به همین خاطر مقادیری که میگیره بر اساس left است و عملا باعث میشه تو حالت rtl درست نمایش داده نشه. به همین خاطر شما برای هر دو حالت یه فایل مختف رو لود کنید.
گام دوم: حل مشکل بخش1: قرار دادن فایل مناسب در جای درست.
فایل chosen.jquery_rtl.min.js پیوست شده رو دانلود کنید و در مسیر زیر کپی کن
joomla root\components\com_virtuemart\assets\js
گام سوم: حل مشکل بخش2: معرفی فایل به سیستم.
خب تا اینجا فایل رو کپی کردید و در جای درست گذاشتید حالا باید فایل رو به سیستم معرفی کنیم.
پس به مسیر زیر برید و فایل vmjsapi.php رو با یک editor باز کنید.
joomla root\administrator\components\com_virtuemart\helpers\vmjsapi.php
فایل رو که باز کردید در خطر 482 خط زیر
vmJsApi::addJScript('chosen.jquery.min',false,false);
به این صورت اصلاح کنید.
if(JFactory::getDocument()->direction == 'rtl')
{
vmJsApi::addJScript('chosen.jquery_rtl.min',false,false);
}
else
{
vmJsApi::addJScript('chosen.jquery.min',false,false);
}
تموم شد و رفت و این مشکل هم به آسونی آب خوردن مثل همیشه حل شد.
اگه خواستید استایل ها رو هم یکم بهتر کنید باید فایل های css این سیستم رو تغییر بدید.
نکته مهم : در این سیستم قابلیت پشتیبانی از کد های css برای حالت rtl تو قسمت کاربری تعبیه شده ولی فایل ها رو نذاشتن. شما میتونید سه تا فایل زیر که اسمشون رو نوشتم در آدرس زیر بسازید و کد های حالت ltr رو با توجه به حالت rtl ویرایش کنید و توشن ذخیره کنید. دقیقا برای حالت ltr این فایل ها به همین نام و فقط با پسوند rtl وجود دارد که خودتون برید اینجا میبینیدشون.
اسم سه تا فایل:
vm-rtl-common.css
vm-rtl-reviews.css
vm-rtl-site.css
آدرسی که باید ذخیره کنید فایل ها رو:
joomla root\components\com_virtuemart\assets\css
لینک دانلود فایل گفته شده در آموزش از آپلودسنتر انجمن:
http://jupload.ir/do.php?filename=joomlaforum.ir_14655019071.zip
باز دوستان اگه مشکلی یا سوالی داشتن مطرح کنن در خدمتم.
موفق و سربلند باشید.