ما هي اسهل طريقة لبناء #موقع متعدد اللغات
(المستخدم يختار اللغة في الصفحة الرئيسية و محتوى الموقع يتغير تلقائيا بحسب الاختيار ) ؟
1- تقوم ببناء الموقع كاملاً بأحد اللغات
2- تقوم بعمل مجلد للغة مثلاً lang و به ملف لغة مثلاً ar.php
3- تقوم بعمل متغير على شكل array يحتوى على كافة العبارات المدرجة فى الموقع
$lang = array(); $lang["hi"] = "مرحباً"; $lang["send"] = "إرسال";
4- استبدل العبارات فى ملفات الموقع بمتغيرات اللغة
5- تقوم بإختيار أحدى اللغات لتكون إفتراضية
6- قبل عرض صفحات الموقع تقوم بالبحث فى الكوكيز هل يوجد لغة مخزنه ؟
لا : استخدم الإفتراضية , قم بتضمين ملف اللغة
نعم : استخدم اللغة المخزنه , قم بتضمين ملف اللغة
7 - عند الضغط على رابط تغيير اللغة , قم بتعيينها فى الكوكيز , عند إعادة تحميل الموقع سيتم إختيار اللغة الجديده و تضمين ملفاتها
إن كان الموقع بصفحات ثابتة (no server side code) فيمكن صنع ملف لكل لغة للصفحة الواحدة، أو فصل ملفات كل لغة في مجلد
وإن كان الموقع يعتمد على لغة برمجية فالحلول كثيرة ويفضل أن تحدد اللغة للحصول على إجابة أفضل، فلكل لغة خصائص وتختلف عن غيرها
يمكن مثلا استخدام الجلسات sessions أو المحفوظات "الكوكيز" cookies
أيضا بحيلة بسيطة يمكن استخدام الروابط لاستدعاء ملف اللغة المطلوبة
IF URL has "/en/"
include en.file
ENDIF
اسهل طريقة هي استخدام sessions
موضوع سابق في نفس السياق
وقد أشرت إلى طريقة اتبعتها حتى أستغني عن تكرار المجلدات والتصميم
استخدم الكوكيز أفضل بكثير برأيي ... لماذا؟
لأن الكوكي يخزن في جهاز المستخدم ( الضيف ) ، أما السيشن يخزن في الخادم .. لذلك لو عملت السيشن فسيحسب من مساحة موقعك أما الكوكي فلا .
وبرأيي عمل عدة صفحات كل صفحة بلغة أفضل وذلك من ناحية عملية.
في حالة كنت تستخدم ووردبريس يمكنك استخدام اضافة مثل polylang
مجتمع لمناقشة وتبادل الخبرات حول تطوير الويب. ناقش أحدث التقنيات، اللغات، والأدوات في عالم تطوير المواقع والتطبيقات. شارك مشاريعك، اسأل عن نصائح، وتعاون مع مطورين محترفين وهواة.
صمم موقعك كاملا بالسحب والإفلات بدون خبرة برمجية، واحجز مكانك على الإنترنت.