اذهب إلى المحتوى
  • 0

كيف أغير تنسيقات الموقع لتتناسب مع اللغة العربية

Dana Dalloul

السؤال

Recommended Posts

  • 0

لا يوجد كود محدد يقوم بعمل هذا الشيء لجميع المواقع, بل أنت تقوم بتصميم الموقع بما يتناسب مع اتجاه الموقع, فمثلا اذا كان الموقع باللغة العربية نحتاج أن نجعل اتجاه الكتابة من اليمين الى اليسار باستخدام css كالتالي

html{
	direction:rtl
}

ثم بعد ذلك نحتاج أن نقوم بتصميم العناصر ووضع تنسيقاتها بما يتناسب مع شكل التصميم ولغة التصميم, لو كان لديك موقع باللغة الانجليزية وتحتاج أن تحوله للغة العربية تحتاج أن تغير الكثير في تنسيقاته بحيث تحول التنسيقات التالية

float:right		=> float:left والعكس
margin-right	=> margin-left والعكس

وبالطبع تستطيع وضع التنسيقات التي تريد والتي تراها مناسبة

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

هناك العديد من الطرق لعمل ذلك :

إما عبر إستخدام الصفة dir في عناصر HTML

أو عن طريق إستخدام الخاصية direction في CSS

أو حتى عن طريق JavaScript ليتحقق من لغة محتوى عناصر HTML وإضافة الكود المناسب بناءً على لغة نص العنصر

لكن إذا كان الموقع يحتوي على لغات متعددة فيجب أن يكون الأمر تلقائياً بسحب لغة النص الموجود في العنصر

في HTML5 والذي هي أحدث نسخة من HTML يمكنك إستخدام هذه الخاصية وإستخدام هذا الكود

<html dir="auto">

والمتصفح سيقوم تلقائياً بالتعرف على نوع النص الموجود ويقوم بتحديد الإتجاه بناءً على أول نص عناصر HTML

رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

بالنسبة لتغير إتجاه عرض الموقع (من اليمين إلى اليسار أو من اليسار إلى اليمين) فيمكن عمل ذلك من خلال خاصية direction في CSS كالتالي:

/* لتغير إتجاه كامل الموقع */
html {
	direction: rtl; /* Right To Left */
}

/* كما يمكن تغير إتجاه عنصر معين فقط كالتالي*/
.post-container {
	direction: rtl;
}

عند إستخدام الخاصية السابقة قد تواجه الكثير من المشاكل والأخطاء في الموقع، وذلك بسبب خواص مثل margin و padding و float والتي يكون لها إتجاه معين (يمين أو يسار) وعند تغير إتجاه الموقع من خلال خاصية direction فإنك يجب أن تقوم بتغير قيمة هذه الخواص وغيرها من الخواص يدويًا وسيختلف هذا الأمر بالطبع من موقع إلى آخر، إن لم يكن لديك خبرة بالأمور البرمجة فيمكنك أن تقوم بتوظيف مستقل من أحد مواقع العمل الحر ليقوم بتغير إتجاه الموقع.

أما بالنسبة إلى تغير لغة الموقع (من العربية إلى الإنجليزية على سبيل المثال)، فيجب أن تقوم بعمل الكثير من التغيرات أولها أن تقوم بتجميع كل نصوص الموقع في ملف json مثلًا أو في قاعدة بيانات، وتقوم بعمل مثل هذا الملف مرة أخرى بلغة مختلفة بشرط أن يتفق الملفان في المفاتيح، كالتالي:

// en.json
{
    "website title": "Website Name",
    "description": "a blog about technology"
}
// ar.json
{
    "website title": "اسم الموقع",
    "description": "مدونة تتحدث حول التكنولوجيا"
}

يوجد العديد من المكتبات والحزم التي تقوم بعمل هذا الأمر ويختلف الأمر حسب التقنيات المستخدمة في إنشاء الموقع (ووردبريس، Laravel، Express.js)، ومن أمثلة هذه الحزم والمكتبات:

  • react-i18next
  • laravel-localization
  • multilingual 
رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...