النقاش حول تعدد اللغات في الموقع على مستوى المحتوى فبالنسبة لتعدد اللغات بالنسبة لهيكلة الموقع فأغلب أُطر العمل توفر ميزة سهلة لترجمة واجهة الموقع لعدة لغات أخرى.
صادفت كثير من المواقع تستخدم إما نطاقات فرعية أو نطاقات أُخرى لتعددية اللغات بشكل كامل على مستوى الموقع سواء الهيكلة والمحتوى وهذا ما يعني إستنساخ البرمجية لكل لغة على حدة بمعنى آخر يكون لدينا عدة مواقع على حسب عدد اللغات هذه الفكرة لا أُحبذها ولكني أراها مُستخدمة على نطاق واسع!
ما أفكر القيام به هو توفير الموقع باللغة الإفتراضية وهي الإنجليزية وإنشاء جداول للغات بحيث يتم إضافة ترجمة اللغة رويداً رويداً حتى تنتهي وحينما يتم تغيير لغة الموقع من جهة الزائر يتم الكشف عن وجود ترجمة للمحتوى باللغة المُختارة ليتم إظهاره وإلا يقوم بشكل تلقائي بإظها اللغة الإفتراضية للمحتوى الغير مُترجم بعد، أرى هذه الطريقة ستوفر الكثير من العمل على الموقع من جهة فريق الإدارة للموقع حيث أن الوحدات في الموقع ثابتة ولكنها تُعرض بعدة لغات أي ما يكفي الفريق هو تغيير سعر وحدة أو إضافة عرض وأو إجراء أي تغيير آخر عليها سيكون هذا التغيير بمثابة تغيير عام يظهر في جميع الترجمات لأن مصدر الوحدة واحد بخلاف الطريقة التي تفصل اللغات كمواقع منفصلة أي العمل المطلوب عليها سيتضاعف بمقدار عدد اللغات التي سيتم تضمينها في الموقع.
هذا الفكرة هي ما اخترتها فهل هناك اسلوب أفضل أو طريقة ذات فاعلية أكثر في هذا الموضوع يُمكن اتباعها؟
تعدد اللغات في الموقع على مستوى المحتوى
بالنسبة للمحتوى الثابت فأنا استخدم إطار العمل Laravel فهو يوفر تعددية اللغات بطريقة سلسة عبر Localization ولكن سأقوم بتوفير أداة للمترجمين بحيث يتم الترجمة وتوليد تلك الملفات تلقائياً بدل من ارسال ملفات الترجمة لهم لإعادة ترجمتها.
- بالضبط نفس الفكرة التي جالت في خاطري حول الأمر واراها الأنسب حتى الآن وشرحتها في ردي على الأخ محمد
ملاحظة جيدة بخصوص التعليقات سأعتمدها لتعيين لغة الردود وفلترتها حسب اللغة، وأيضاً كما أشرت في إظهار إشعار بعدم توفر الترجمة للصفحة الحالية للغة المحددة حتى لا يظن أن هناك خطأ ما
شكراً لك، تحياتي
صحيح فـ Laravel يحتوي على نفس الأمر، فالفكرة أخذت من أسلوب الإطار تقريباً .
يمكنك إضافة صفحة تقوم بسحب المصفوفة من صفحات php، ثم تعرضها على شكل حقول ضمن نموذج، وعند الحفظ يتم إعادة تخزين البيانات في المصفوفة ثم حفظها بنفس الملف الخاص بها، بذلك إن قمت بتعديل على أحد الملفات يدوياً وإضافة صف جديد للمصفوفة، سيظهر كحقل بشكل تلقائي بصفحة الترجمة دون عناء إضافته .
ممتاز، ولكن خطر لدي سؤال، في حال تم إضافة رد بالعربية بصفحة الإنجليزية بسبب عدم توافر الترجمة، بعد توافر الترجمة هل سيتم نقل التعليق للعربية أم يبقى كما هو ؟
العفو صديقي ^^
-رُبما في هذه الحالة كتابة كود للتعرف على لغة الردود وتوجيهها بشكل تلقائي للغتها مع إضافة إمكانية النقل للإداريين في حال صادفوا هذا أثناء تصفحهم الموقع.
سيكون صعب ذلك، فقد تكون أول كلمة انجليزية والباقي باللغة أخرى مثلاً، أو يحتوي على لغتين في الرد وما إلى ذلك، يفضل تركها حسب اللغة التي كان يتصفح بها المستخدم، ويتم نقلها في حال صادفها أحد المدراء .
- يمكن مثلاً تطوير خاصية في حال إضافة لغة ما للمشروع، أن يتم البحث في تعليقات عن تعليقات تحتوي نصوص من تلك اللغة، ثم فلترتها من قبل المدراء أو بطريقة برمجية ونقل غير المناسب لمكانه الجديد .
بالطبع سيتم إختيار لغة التعليق من اللغة الحالية ولكن كما أشرت أنت لفلترة ردود بلغات أُخرى فيما بعد أو الإعتماد على العنصر البشري في هذه الحالة أو عمل برمجية أفضل عبر حساب النسبة الأكبر من النص لصاحب آي لغة ثم توجيه الرد لتك اللغة ربما يكون الأمر مُعقد قليلاً ولكن ربما يظهر أكثر بعد العمل على إضافة كهذه.
أرى في بعض المواقع يتم عرض جميع التعليقات بكل اللغات ولكن يتم إعادة ترتيبها على حسب اللغة الحالية بحيث تظهر التعليقات للغة الحالية في البداية.
الأسلوب البرمجي قد يحتاج لعدة معايير، مثلاً هل النص ضمن اقتباس أم لا، فمثلاً قد يكون التعليق باللغة العربية وبه اقتباس بالانجليزي طويل، وبذلك سيكون النص الإنجليزي أطول مثلاً، لكن إحتمالية ذلك ليست بالكبيرة .
قد يكون السبب عائد لإستخدام إضافة ما لتعليقات، أو خدمة خارجية، لأنه لا فائدة من وجود تعليقات باللغات الأخرى في حين أن الزائر قد لا يجيد سوى اللغة الأم، يمكن وضع ذلك كخيار للإطلاع .
على جانب خدمة مثل يوتيوب تقدم تعدد اللغات للواجهة، لكنها لا تقدم دعم لتعدد المحتوى، بل نفس المحتوى يتبع ترجمة داخلية، أتوقع هذا الأسلوب قد يكون منحصر على المحتوى المرئي أو ما يتم صنعه من قبل المستخدمين (مثلاً فيس بوك يقدم ميزة تجريبية لترجمة النص للغات الاخرى ويظهر النص باللغة الخاصة بالمستخدم في حال توافرها)، كذلك التعليقات على هكذا نظام تكون موحدة مهما كانت اللغة المكتوب بها .
التعليقات