[ar] [ca] [cpf] [de] [en] [es] [fr] [it]

يتوجه هذا منتدى المساعدة هذا الى المستخدمين والمستخدمات الظرفيينز قبل طرح اي سؤال، الرجاء البحث في الموقع وزيارة الروابط المفيدة. اذا كنتم لا تجدون أجوبة، إطرحوا أسئلتكم في القسم المناسب وزودوها بعناوين واضحة.

Sujets : 160 Sujets résolus :  54 %

34 من الزوار الآن


الصفحة الأساسية > منتدى SPIP >  تصميم الصفحات النموذجية > لماذا لا يعمل #LANG_DIR في موقع عربي متعدد اللغة؟

لماذا لا يعمل #LANG_DIR في موقع عربي متعدد اللغة؟

بقلم Jatropha Multifida - 7 كانون الأول (ديسمبر) 2016 14:02 - أجوبة : 12

تحية طيبة

سبق وأن طرحت سؤالا بالخصوص، ورغم أنني قمت بحلول صعبة جداً وهي أن أخصص لكلا لغتي الموقع صفحة نمط خاص بها، إلا أنني أعتبر هذا غير اجباري مادام نظام سبيب يتولى قلب الصفحات.

المشكلة تبدو حتى في الصفحات النموذجية الافتراضية، ولكي أثبت هذا، قمت بتحميل آخر اصدارة من سبيب، وقمت بعمل قسمين مع تفعيل تعدد اللغات وجعل العربية افتراضية، وكذا تفعيل $forcer_lang = true; في ملف الخيارات..

لكن ماذا يحدث؟

يحدث أنه عند زيارة القسم بالرابط ?lang=fr تبقى الاتجاهات عربية في علبة البحث (مثلاً الزر على اليسار وليس اليمين) وعند رؤية مصدر الصفحة في المتصفح يحدث أمراً مزعجاً، فسبيب لازال يعتبر الصفحة عربية والدليل أن الـ #LANG_DIR لا يعمل بشكل صحيح كما يلي:

  1. <html dir="rtl" lang="ar">

وهذا طبعاً باستخدام الصفحات الافتراضية.

فلماذا لا يعمل عندي هذا الخيار:

  1. <html dir="#LANG_DIR" lang="#LANG">

وهل هنالك خطأ في الروابط عندي، والتي أستخدمها في الصفحات المخصصة، وهي كما يلي:

  1. [(#URL_RUBRIQUE|parametre_url{lang,#ENV{lang}})]

أرجو أن أجد لديكم الإفادة.


  • هل لا يزال الموقع في الجهاز المحلي؟
    قد بكون اعداد الخادم فيه غير سليم.

    حاول وضع الموقع على جهاز خدمة حقيقي.


  • ها قد وضعت الموقع على خادم حقيقي:

    http://cordak.org/spip.php?rubrique2&lang=fr

    وكما يظهر جلياً فإن مربع البحث بالفرنسية يتجه اتجاه عربي، وعند الضغط على مصدر الصفحة يظهر أن سبيب رغم الرابط للنسخة الفرنسية من القسم lang=fr فإنه يعتبر الصفحة عربية كما يظهر من المصدر:

    1. <html dir="rtl" lang="ar">

    مع العلم أن الصفحة الرئيسية لا تحدث فيها هذه المشكلة، تظهر فقط في الأقسام والمقالات.


  • يبدو أن المشكلة لها طابع متعلق بالأقسام والمقالات الغير مترجمة..

    فالمشكلة الأساسية تبلورت كما يلي: عند الضغط على الصفحة الرئيسية، أو أي من الصفحات الأخرى مثل الأتصال بنا أو الصفحات المخصصة، وذلك من خلال اللغة المختارة، يتعامل سبيب بشكل صحيح مع الإتجاهات، فيجعل العربية RTL والفرنسية LTR وذلك في رأسية الموقع (HTML dir=#LANG_DIR)، إلا أنه في الأقسام والمقالات يجب أن يوجد قسم أو مقال مترجم لكي تظهر الإتجاهات بشكل صحيح.. وهذه لعمري مشكلة عويصة، فليست كل الأقسام والمقالات بحاجة لترجمة على اعتبار أن لغة الموقع الأم هي الأساسية.

    فهل يمكن لمطوري سبيب أن يدلونا على طريقة -نحن المستخدمين العرب- لكي نتغلب على هذه المشكلة المحبطة، مع العلم أن اتجاه أوراق الأنماط CSS يعمل بشكل صحيح وهذا لا يحل المشكلة مادام إتجاه html dir لا يعمل.


  • هذا تصرف غير طبيعي.

    التصرف الطبيعي هو تصرف موقع المنتدى الذي نحن فيه الان.

    ما هي بيانات الدخول الى المجال الخاص في موقعك؟


  • هذه معلومات الدخول:
    المستخدم: test
    المرور: 123456
    www.cordak.org/ecrire


  • هذه معلومات الدخول:

    المستخدم: test
    المرور: 123456

    www.cordak.org/ecrire

    هذا الموقع التجريبي يستخدم squelettes-dist التي تأتي مع النظام مع تعديل طفيف إضافة #MENU_LANG ويمكن الولوج إلى أحد القسمين أو صفحة الإتصال بنا لرؤية أن الإتجاه لا يتغير البتة مع تغيير اللغة.

    وعندما أقول أن الإتجاه لا يتغير فأنا لا أعني أن float لا يتم وأن العناصر فعلاً تذهب من اليمين لليسار أو العكس عند تغيير اللغة، ذلك يحدث كما أشرت آنفاً أن direction_css تعمل بدون مشاكل، إنما أعني أنه في رأسية الموقع html dir عند فتح مصدر الصفحة من المتصفح لا تتغير فيها اللغة المختارة واتجاهها مما يتسبب فيما يظهر على زر استمارة البحث والأقواس وقائمة الهرمية... إلخ من انعكاس في الإتجاه.


  • اهلا

    القضية قضية خيارات.
    انت حددت اللغة الافتراضية لكل العناصر (اقسام ومقالات) بالعربية وهذا ما يحدد اتجاه الصفحة RTL واتحاه العناصر كمربع البحث وتذكر ان علامة لا تؤثر على اتحاه الصفحة ابدا.

    لذلك ما تفعله المواقع المتعددة اللغات في spip هو:
    اذا لم تقم بتفعيل قائمة اللغات للمقالات (في اعداد تعدد اللغات)

    انشاء قسم اساسي لكل لغة ووضع المقالات ذات اللغة نفسها في القسم المناسب. وهكذا يأخذ المقال لغة القسم المنتمي اليه. وعندما تكون في صفحة قسم او مقال يصبح اتحاه الصفجة حسب لغة القسم فقط.

    اما اذا قمت بتفعيل لخيار قائمة اللغات للمقالات

    فيمكنك انشاء اقسام فعلية (مع تحديد لغتها) ووضع المقالات في اي قسم مع الانتباه الى اختيار لغة المقال. هكذا عندما تكون في صفجة قسم يكون اتجاه الصفحة حسب لغة القسم واذا كنت في صفحة مقال يكون اتجاه الصفجة حسب لعة المقال.


  • مرحبا

    شكراً على هذه الإضاءة المفيدة والتي نبهتني إلى ما لم أكن أعرفه حول فائدة تفعيل/عدم تفعيل خيار قائمة اللغات للمقالات، كنت أحسبها لترجمة المقالات وحسب.

    لكن مشكلتي فيما يبدو أظهرت "ثغرة" للغات التي تكتب من اليمين لليسار، عند إنشاء موقع متعدد اللغة في سبيب.

    إن سبيب يقوم بتغيير الإتجاه بشكل صحيح html dir لصفحة نموذجية (ليست مقال ولا قسم مثل: الصفحة الرئيسية، اتصل بنا، الصفحات المخصصة.. إلخ) دون الحاجة لترجمة أو خيار لتفعيل قائمة اللغات أو اللغة الافتراضية للموقع، لكنه يصر على أن يكون اتجاه الصفحة html dir بحسب لغة القسم رغم اختيار الزائر للغة التصفح (!)، مع أنه لا يفعل ذلك للصفحة الرئيسية والصفحات النموذجية ولا "يصر" على إظهارها بلغة الموقع!!!

    إن هذه نقطة سلبية تمنع المستخدم العربي ومستخدمي اللغات التي تكتب من اليمين لليسار من إنشاء موقع متعدد اللغة بشكل صحيح، على اعتبار أن المستخدمين الذين تكتب لغاتهم من اليسار لليمين LTR لا يواجهون إطلاقاً سلبيات هذه المشكلة ولا يتفطنون لمساوئها.

    وسأضرب مثال على هذا:

    نفترض أن لدينا موقع ثقافي عربي-فرنسي، ذو واجهة متعددة اللغة (ترجمة عناوين الأقسام والإتصال بنا والصفحة الرئيسية)، وجميع أقسامه عربية سوى قسم واحد مخصص للكتب يضم 160 عنواناً كلها بالفرنسية، وكل كتاب على شكل مقال، ولغة القسم المحتوي على الكتب هي الفرنسية وكذا مقالاته، ونريد للزائر العربي أن يرى القسم بإتجاه صحيح RTL بلغة تصفحه التي أختارها. لن يحدث هذا إطلاقاً بل سيظهر القسم LTR مما يضر التصميم واتجاهات العناصر والأزرار والأسهم... إلخ.

    نتطلع لأن تحل هذه المشكلة المتعلقة بـ html dir للأقسام والمقالات وأن تكون مثل الصفحات النموذجية تتبع للغة الزائر واتجاهها.

    إن الحل الوحيد والغير مقنع الذي توصلت إليه، أن أحذف حلقة RUBRIQUES من الصفحة النموذجية للقسم وأضطر أن أجعل لكل قسم من موقعي صفحة مستقلة (!) يتم الوصول إليها عن طريق #URL_PAGE وليس #URL_RUBRIQUE، ويمكن تصور الخسارة وراء ظهور الروابط في الموقع كصفحات وليس بمميزات العناوين الحرة التي أخترتها لموقعي من إعداد عناوين URL.


  • يبدو ان المثال الذي تضربه هو عن موقع غير مصمم بشكل صحيح.

    اذهب الى http://www.middleeastwatch.net/ وتصفحه (المعلومات قديمة ولكنه مثال مفيد على تعدد اللغات).

    وقل لي اذا كان الذي تشاهده صحيحاً ام لا واين الخطأ.


  • ممتاز

    هاهي المشكلة تظهر بوضوح عند تصفح القسم التالي من الموقع المعروض بالعربية:

    http://www.middleeastwatch.net/-Documents-.html?lang=ar

    سنلاحظ أن:

    1. رأسية الصفحة انجليزية:

    1. <html dir="ltr" lang="en">

    2. عنوان القسم "وثائق" ذهب لليسار

    3. مربع البحث زره ذهب لليمين

    طبعاً هذا كله بسبب الإتجاه html dir الغير صحيح..

    وهذه هي المشكلة الأساسية: سبيب لا يغير رأسية اللغة html dir لأن لغة القسم على مايبدو انجليزية، ويبقى المتصفح العربي يعاني من فقدان الإتجاه الصحيح.

    وكما أسلفت سابقاً، هذه مشكلة نعاني منها نحن مستخدمي اللغات من اليمين لليسار عند تعدد اللغات في سبيب، لأن سبيب لا يفرض الإتجاه html dir للأقسام والمقالات عند تغيير اللغة ويصر على لغة القسم الإفتراضية، خلافاً للصفحات النموذجية الأخرى التي يفرض عليها الإتجاه بشكل سليم.

    سبيب لا يفرض على المتصفح أن تظهر له الصفحة الأساسية باللغة الأساسية للموقع، بل يظهرها بشكل سليم بالإتجاه الصحيح باللغة المختارة، فلماذا يفرض لغة الأقسام والمقالات عند الظهور؟! وقد يكون هناك قسم غير مترجم ولا داعي لترجمته اذا كان مثلاً رزم من عناوين الكتب والصور!!

    ليتنا نجد حل لهذه المشكلة. فأهل اللغات LTR لن ينتبهوا لأي مشكلة ولو كان الموقع بكل اللغات الأوروبية الأربع والعشرين لأن اتجاههم واحد LTR. وإننا لنرجو أن ينتبه مطوري سبيب -وهم بطبيعة الحال ذوو اتجاه "يساري LTR" - من معاناتنا نحن مستخدمي سبيب العرب عند تطوير موقع متعدد اللغات.


  • الان فهمت ما تقصد.
    كل ذلك له حلول ولكن لم يتثنى لي الوقت لاعتمادها.

    انصحك بالذهاب الى العنوان التالي فانه مفيد في هذا المجال:

    http://programmer.spip.net/-Multilinguisme-

    (انه بالفرنسية والانكليزية)


  • شكراً جزيلاً

    سوف أقرأ أقسام ومقالات الرابط الذي تفضلت به بعناية وأبحث فيه لعله يتم الإشارة لطريقة لجعل سبيب يفرض لغة الزائر (واتجاه الزائر) على الأقسام والمقالات

    وفي غضون ذلك أرجو أن يتسنى لك وقت لإعتماد الحلول التي أشرت لوجودها

    سوف أعود بالنتيجة بعد القراءة والتطبيق لمحتوى الرابط المزود.




الاجابة على السؤال

« لماذا لا يعمل #LANG_DIR في موقع عربي متعدد اللغة؟ »

المفاتيح

يمكنك تعليم صفحة المنتدى هذه بواسطة مفاتيح تعتبرها مناسبة. وستتيح هذه المفاتيح سهولة اكبر للزوار في الاهتداء الى ما يهمهم:


التثبيت والتحديث

إستخدام المجال الخاص

إدارة الموقع وإعداده

إنشاء الصفحات النموذجية

عرّف بنفسك :
  • دخول تسجيل