مهدی سمیعیان
5 سال پیش توسط مهدی سمیعیان مطرح شد
4 پاسخ

مشکل تصاویر در ادیتور ckeditor

آپلود تصویر داخل ادیتور به خوبی انجام میشه و توی پست منتشر شده هم به خوبی نمایش داده میشه. ولی وقتی میخوام پست رو ویرایش کنم عکس درست نمایش داده نمیشه.
متوجه شدم که اشکال از فارسی کردن آدرس تصویر هست. یعنی وقتی داخل ادیتور میخواد تصویری که قبلا آپلود کردم رو نمایش بده اگه عدد توی آدرس باشه به صورت فارسی عدد رو توی قسمت src درج می کنه که باعث میشه تصویر توی ادیتور درست نمایش داده نشه.
برای اینکه این اتفاق نیفته چه راهی وجود داره؟


ثبت پرسش جدید
حسام موسوی
تخصص : طراح و برنامه نویس
@hesammousavi 5 سال پیش مطرح شد
0

سلام خوب شما در کد‌های جاوااسکریپت از کدی برای فارسی سازی اعداد استفاده کردید ؟
مشخص اصلا که چنین کاری انجام دادید


مهدی سمیعیان
تخصص : برنامه نویس وب/اندروید
@mahdidev 5 سال پیش مطرح شد
0

@hesammousavi
سلام
من از پنل ادمین که شما معرفی کردید استفاده میکنم PersianAdminLTE
یه اسکریپت بنویسم که تگ های ایمیج داخل ادیتور رو فارسی نکنه؟
شما راه حل بهتری سراغ دارید؟


Hadihpn
@Persnb 4 سال پیش مطرح شد
0

@hesammousavi @mahdidev سلام. مشکل بالا را تونستید رفع کنید؟ ممنون میشم اگر به من هم بگید


مهدی سمیعیان
تخصص : برنامه نویس وب/اندروید
@mahdidev 4 سال پیش مطرح شد
1

@Persnb
بله
توی پنل admin lte یک اسکریپت وجود دارد که اعداد را به فارسی تغییر میدهد و هنگام ویرایش و ذخیره مجدد ادرس تصویر اشتباه می شود. برای این حل این مشکل باید این اسکریپت را متوقف کنید.
فانکشنی با نام ConvertNumberToPersion وجود دارد که داخلش یک شرط اضافه کردم که چک می شود در صورتی که مقدار از textarea دریافت می شود کانورت نشود

  function ConvertNumberToPersion() {
        let persian = { 0: '۰', 1: '۱', 2: '۲', 3: '۳', 4: '۴', 5: '۵', 6: '۶', 7: '۷', 8: '۸', 9: '۹' };
        function traverse(el) {

          if(el.type == 'textarea')
          {
            return;
          }
            if (el.nodeType == 3) {

                var list = el.data.match(/[0-9]/g);
                if (list != null && list.length != 0) {
                    for (var i = 0; i < list.length; i++)
                        el.data = el.data.replace(list[i], persian[list[i]]);
                }
            }
            for (var i = 0; i < el.childNodes.length; i++) {
                traverse(el.childNodes[i]);
            }
        }
        traverse(document.body);
    }

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام