تترك الشركات التي تخدم مصر والخليج والعملاء الدوليين فرصة مهمة حين تكتفي بلغة واحدة. يوسّع الموقع العربي والإنجليزي جمهورك، لكنه يزيد أيضًا ما ينبغي ضبطه. نستعرض هنا قرارات هندسية نتخذها لبناء تطبيقات Laravel متعددة اللغات، استنادًا إلى تجارب مثل موقع Enseval الثنائي اللغة ونظام إدارة الاستوديو Inngez.
قرر كيف تظهر اللغة في عناوين URL
الخيارات الشائعة ثلاثة: بادئة مثل /ar/about، أو نطاق فرعي مثل ar.example.com، أو نطاق مستقل لكل لغة. تكون البادئة أبسط تشغيلًا وأسهل لمحركات البحث غالبًا. أيًا كان اختيارك، حافظ على الاتساق واجعل لكل صفحة عنوانًا متوقعًا في اللغتين.
Route::prefix('{locale}')
->where(['locale' => 'en|ar'])
->group(function () {
Route::get('/about', AboutController::class)->name('about');
});
أضف وسيطًا يقرأ اللغة من المسار ويضبطها عبر App::setLocale() مع قيمة احتياطية عند غيابها أو عدم صحتها. أعد توجيه النطاق المجرد إلى اللغة المناسبة حسب تفضيل محفوظ أو اللغات المقبولة في المتصفح، مع إبقاء خيار التبديل اليدوي متاحًا دائمًا.
اتجاه RTL نظام تخطيط لا رقعة CSS
تقرأ العربية من اليمين إلى اليسار، ولذلك ينبغي عكس الواجهة كلها لا النص وحده. اضبط dir="rtl" ووسم اللغة في العنصر الجذري، واستخدم الخصائص المنطقية بدل اليمين واليسار. توفر Tailwind CSS أدوات مثل ms-4 وps-4 تنعكس تلقائيًا، فتحتفظ بمجموعة مكونات واحدة.
اختبر التفاصيل المنسية
- اعكس الأيقونات الاتجاهية كالأسهم وعلامات التقدم.
- تحقق من الأرقام وأرقام الهاتف وأسماء المنتجات اللاتينية ضمن النص العربي.
- اختبر النماذج والجداول ومحددات التاريخ في الاتجاهين.
- امنح قوالب البريد وفواتير PDF العناية نفسها.
الخطوط أهم مما تتوقع
اختر خطًا عربيًا متقنًا، ووازن أوزانه وأحجامه مع الحروف اللاتينية كي تبدو الصفحات المختلطة متناسقة. تحتاج العربية غالبًا إلى حجم أكبر قليلًا وتباعد أسطر أوسع لراحة القراءة. حمّل الأوزان الضرورية فقط واستخدم إعدادات عرض تمنع تأخر النص على الاتصالات البطيئة.
نظم الترجمات
يدعم Laravel ملفات PHP وJSON للترجمة. استخدم JSON المرتبط بالعبارة الإنجليزية لعناصر الواجهة القصيرة، ومفاتيح منظمة للنصوص السياقية الأطول. أما المحتوى الذي يديره المحررون، كالمقالات وصفحات الخدمات، فخزنه في قاعدة البيانات كي يعدله غير المطورين من لوحة الإدارة. افصل نسخ اللغات عن بعضها بوضوح، واربط كل ترجمة بسجل المصدر نفسه؛ بهذه الطريقة يستطيع المحرر معرفة النص الذي يحتاج إلى تحديث، ويظل تغيير العبارة في لغة واحدة قابلًا للمراجعة دون البحث في ملفات التطبيق. ضع كذلك إجراءً لمراجعة الروابط والبيانات الوصفية عند الترجمة، وحدد من يعتمد النسخة قبل نشرها للزوار.
خطط للجمع والمتغيرات
للغة العربية صيغ جمع أكثر من الإنجليزية. استخدم أدوات الجمع في Laravel مع قواعد الصيغ والمتغيرات بدل تركيب الجمل نصيًا.
SEO بلغتين
تحتاج محركات البحث إلى إشارات واضحة. خصص عنوان URL لكل لغة، وأضف وسوم hreflang المتبادلة والروابط القانونية، وترجم العناوين والأوصاف لا المتن فقط، وأدرج النسختين في خريطة الموقع. تجنب إعادة توجيه برامج الزحف تلقائيًا حسب الموقع كي لا تحجب إحدى النسختين.
أنشئ سير تحرير قابلًا للتوسع
التحدي الأصعب ليس الشيفرة بل إبقاء اللغتين متزامنتين. حدد مسؤول الترجمة، وطريقة عرض المحتوى الناقص، وما يحدث عند تغيير المصدر. اعرض اللغة الافتراضية بوضوح بدل صفحة فارغة، ونبّه المحررين إلى الترجمات التي أصبحت أقدم من النص الأصلي.
قائمة تحقق قبل الإطلاق
- كل صفحة عامة موجودة باللغتين ومبدل اللغة ينقل إلى الصفحة المقابلة.
- ينعكس التخطيط سليمًا، بما فيه النماذج والجداول والأيقونات.
- تُترجم العناوين والأوصاف والبيانات المنظمة وخرائط الموقع.
- تُترجم الرسائل الإلكترونية والتحقق وصفحات الأخطاء.
- تتبع التواريخ والأرقام والعملات إعداد المستخدم، مع إظهار الجنيه المصري بوضوح عند الحاجة.
- يستطيع المحررون رصد الترجمات الناقصة وإصلاحها.
إنشاء اللغتين معًا منذ أول دورة تطوير أقل كلفة من إضافة العربية لاحقًا. إذا كنت تخطط لموقع أو منصة ثنائية اللغة، تصفح مشاريعنا أو خدماتنا أو تحدث إلى نارمار عن متطلباتك.



