نص مستورد ملون

مرحبًا،

ندير منتدى جديدًا مستضافًا يعتمد على Discourse منذ شهر، ونحن معجبون جدًا به. لدينا بالفعل 2000 مستخدم.

نحاول نقل النصوص الملونة من منتدى phpBB السابق، لكننا لا نستطيع جعلها تعمل في المنتدى الجديد: [color=#BFBFBF]رمادي - “جاهز للتحديث”[/color]، [color=#FF8000]برتقالي - الرقم القديم[/color]، أو [color=#00BF00]أخضر - الرقم الحالي[/color].

نقدر أي اقتراحات تقدمونها.

هل فكرت في استخدام إضافة BBCode؟

هل يمكن استخدام هذا في منتدى مستضاف؟

عندما استوردنا ما يقرب من مليون مشاركة من vB إلى Discourse، قمنا بإزالة جميع أكواد الألوان BBcode أثناء عملية الهجرة.

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

إن استيراد الأكواد المتداخلة BBcode فوضوي للغاية، بالطبع! إنه “قابل للتنفيذ”، لكننا قررنا أن الجهد المبذول لا يستحق العناء (بالإضافة إلى أنه يضيف قيمة قليلة لأن خطوط الألوان المسماة، مقارنة بالفئات، تجعل التصميم صعباً).

نأمل أن يكون هذا مفيداً.

هل هي متداخلة (BBCode داخل BBCode)؟
هل هناك بديل للحصول على نص ملون؟

لا، يجب استخدام BBCode. يمكنك التداخل ولكن فقط إذا كان ذلك منطقيًا (مثل HTML تمامًا). قد توجد بعض الأكواد غير المُطبَّقة.

يستخدم ملـفـي Discourse Frotz plugin التداخل بنجاح لدمج الخط واللون ولون الخلفية. لاحظ حرف ‘N’ الأحمر على البوصلة في لقطة الشاشة.

ستحتاج إلى سؤال مُضيفك عما إذا كان بإمكانه تثبيت هذا الملحق الرسمي.

مرحبًا @ianm

عينة الكود التي قدمتها ليست متداخلة.

تجربتنا مع إضافة BBCode الرسمية كانت أنها لا “تعمل بشكل جيد” مع BBCode المتداخل. ومع ذلك، إذا لم يكن لديك BBCode متداخل، فمن “الأرجح جدًا” أن هذه ليست مشكلة بالنسبة لهجرتك.

كان لدينا في هجرة موقعنا عقود من BBCode المتداخل (مئات الآلاف)، وكان ذلك مشكلة ضخمة (حتى مع إضافة BBCode الرسمية التي نستخدمها اليوم)، لذا قمنا ببساطة بإزالة جميع أكواد الألوان (وبعض وسوم الكود الأخرى التي لم نكن بحاجة إليها). لم يشتكِ أي مستخدم من غياب لون النص في منشور يعود إلى 5 سنوات، ولن يشتكي أحد.

جعل BBCode المهاجر يعمل بشكل صحيح ليس بسيطًا مثل “استخدام إضافة BBCode الرسمية”. إذا كانت هجرة كبيرة لسنوات من مجموعات مختلفة من BBCode المتداخل بهذه البساطة، لكانت مدة هجرتنا الكاملة أسابيع بدلاً من أشهر. إنها شيء يجب تجربته firsthand وليست “نظرية”، بل هي ببساطة هكذا. إضافة BBCode الرسمية جيدة، ونستخدمها، ولكن فقط بعد إزالة الكثير من BBCode المتداخل.

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

بالطبع، يجب على كل موقع اتخاذ خياراته الخاصة بشأن المقايضات أثناء الهجرة. يمكنني القول إن لدينا بعض “أشخاص REGEX الأذكياء جدًا” عملوا لشهور لجعل هجرتنا “مثالية”، ومعظم الوقت المستغرق كان بسبب BBCode. الإضافات الرسمية والمكتبات البرمجية (gems) لهذا الغرض كانت “تقريبًا أوليًا جيدًا” لكنها تركت الكثير مما يُرغب به في الهجرة النهائية، لذا كتبنا الكثير من Ruby gsub() REGEX لتنظيفها.

أتمنى لك التوفيق وأتمنى أن يكون هذا المنظور العملي “من ساحة معركة الهجرة” مفيدًا. لا شك أن الهجرة من منتدى قديم إلى آخر يمكن أن تكون “معقدة للغاية” إذا كان هدفك هو هجرة “مظهر رائع” بدلاً من نوع من “الهجرة غير المنظمة”.

كودك يعمل بشكل جيد كما هو في إضافة BBCode:

image

هنا، أضفت مستوى واحدًا من التداخل:

image

ماذا عن مستويين؟

image

ماذا عن ثلاثة، مع مجموعة أكثر تعقيدًا قليلاً؟

image

شكرًا لك على تأكيد أنه يعمل في تلك الإضافة. سأرى ما إذا كان يمكن إضافته إلى منتدانا المضيف :thinking:

نعتذر، لكن إضافة BBCode غير متوفرة في خطتي Standard أو Business. تُدرج الإضافات المتاحة في كل خطة من هذه الخطط هنا: Plugin directory | Discourse - Civilized Discussion.

ومع ذلك، يمكن تثبيت إضافة BBCode وأي إضافات رسمية أخرى من Discourse في خطتنا Enterprise.