الصفحة الرئيسية المخصصة للمجموعات

[اقتباس=“Moin، المشاركة: 82، الموضوع: 199623”]
لم تعد هذه الإعدادات مُشارًا إليها في الكود ولكنها لا تزال جزءًا من settings.yml.
[/اقتباس]

آه! آسف. لقد فاتني ذلك.

همم. نعم. أتساءل لماذا أزلت الدعم لتلك الإعدادات. أعتقد ربما يمكنك تغييرها في النواة الآن؟

سأرى ما إذا كان ذلك في النواة، وإذا كان الأمر كذلك، فسأزيل تلك الإعدادات.

أو ربما حدث شيء في النواة أدى إلى تعطيل تلك التغييرات. سأرى ما يمكنني اكتشافه. . . .

3 إعجابات

ما زلت غير متأكد من سبب حذفي لدعم الصفحات الرئيسية الافتراضية والمجهولة من قبل. لقد أعدت تلك الصفحات.

الآن إذا كانت هناك custom_default_homepage فإنه يستخدمها ما لم يكن هناك تطابق للمجموعة. إذا كانت هناك anon_page والمستخدم مجهول، فإنه يستخدمها.

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

إليك الكود:

      let url = null;

      if (settings.custom_default_homepage) {
        url = settings.custom_default_homepage.replace(/^\/+/g, "");
      }

      if (user) {
        if (user.primary_group_name  settings.group_page_map) {
          let groupMap = settings.group_page_map.replace(",", ":").split("|");
          const mapEntry = groupMap.find((value) =>
            RegExp(user.primary_group_name).test(value)
          );
          if (mapEntry) {
            url = mapEntry.split(":")[1].replace(/^\/+/g, "");
          }
        }
      } else if (settings.anon_page) {
        url = settings.anon_page.replace(/^\/+/g, "");
      }

وبعد ذلك يقوم بتغيير الصفحة الرئيسية فقط إذا كان url يحتوي على قيمة.

8 إعجابات

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

هدفي هو أن يتم تضمين جميع المستخدمين في مجموعة افتراضية وأن يتم إعادة توجيههم جميعًا إلى صفحة بديلة عند تسجيل الدخول.

يجب أن تكون مجموعتهم الأساسية لكي يتم تفعيل هذا الـ TC. هذا جزء من التصميم، حتى لا يكون هناك تعارض عندما يكون المستخدم عضواً في أكثر من مجموعة مع إعادة توجيه.

إعجابَين (2)

هل يعتبر مستوى الثقة 0 مجموعة صالحة؟ هل سيكون هذا هو الإعداد الصحيح لخريطة صفحة المجموعة (Group Page Map)؟ trust_level_0:/discourse-ai/ai-bot/conversations. هذا هو الإعداد الحالي الذي قمت بتعيينه.

لا، لا يمكن استخدام مجموعات مستوى الثقة لأنها لا يمكن أن تكون أساسية.

يمكنك التحايل على ذلك باستخدام إضافة المجموعات الديناميكية (dynamic groups plugin) لإنشاء مجموعة مطابقة إذا كان ذلك حيويًا بالنسبة لك.

3 إعجابات

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

إعجاب واحد (1)

آه. حسناً. أعتقد أن نسخة مختلفة من هذا تم إرسالها في إشعار البريد الإلكتروني الخاص بي. أنا أحب هذه الإجابة أكثر. :slight_smile:

إعجابَين (2)

كنت أعرف ذلك! هل ما زلت تستخدم إشعارات البريد الإلكتروني؟؟ هذا عتيق بعض الشيء يا جاي!

إعجابَين (2)

بـ “الجميع”، قصدت “عام”، وليس المجموعة الزائفة. سأقوم بتحرير مشاركتي حتى لا تكون مضللة.

إعجابَين (2)

أنا كبير في السن جدًا. وإلى جانب ذلك، أنا مسجل الدخول إلى ميتا لمدة لا تزيد عن 10 ساعات في اليوم، ولا أريد أن يفوتني أي شيء!

5 إعجابات

أولاً، شكراً جزيلاً للجميع على المساعدة في هذا الأمر! أقدر ذلك كثيراً!

هذا أمر محير بالنسبة لي.

لقد قمت بتثبيت هذه الإضافة دون أي مشاكل وقمت بتعيين trust_level_0 في الإعدادات لجعلها المجموعة الأساسية. تمت إضافة جميع الأعضاء في الموقع إلى المجموعة. يظهر جميع المستخدمين هذه المجموعة كمجموعة أساسية الآن.

في الصفحة الرئيسية المخصصة لإعدادات مكون المجموعات، هذا ما قمت بتعيينه.

عند الوصول إلى الصفحة، لا يزال المستخدمون في مجموعة Community-Core الأساسية يصلون إلى /latest. إذا قمت بتغيير صفحة المجهول إلى شيء آخر غير /latest عند تسجيل الدخول، فسيتم عرض المستخدمين في أي صفحة معروضة في هذا الحقل، لذا فهذا هو إعادة التوجيه الذي يحدث.

أنا أستخدم سمة Canvas Screen وقمت بالتغيير إلى الافتراضي للاختبار بنفس النتيجة.

لقد قمت أيضاً بتعطيل جميع مكونات السمة والإضافات لمعرفة ما إذا كان هذا يساعد دون نجاح.

أعتقد أن هناك شيئاً ما أفتقده قد يكون واضحاً للآخرين أو قد تكون هناك مشكلة في المكون.

هل نظرت في المفتش ورأيت المجموعة الأساسية في وسم الجسم؟

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

عند النقر بزر الماوس الأيمن على موقعك واختيار “فحص” (inspect)، يمكنك رؤية ما يطلبه pfaffman.
على سبيل المثال، أرى هذا في صفحة إدارة المستخدمين الخاصة بي (/admin/users/{user_id}/{username})


وبما أن هذا حسابي، فعند النقر بزر الماوس الأيمن واختيار “فحص” (inspect)، أرى

هناك يمكنك رؤية “testgroup” في <body>

هذا ما قصدته، لكنني أتذكر/أرى الآن أن المكون يحصل على المجموعة الأساسية من نموذج المستخدم، وليس من CSS.

لذا، ربما ابحث عن مستخدم في مسار المستخدم الإداري، وأضف .json إلى عنوان URL. ثم تحقق مما هي مجموعته الأساسية وابحث (في المتصفح) عن primary_group: true وتحقق من أن الاسم يطابق تمامًا الحالة التي استخدمتها في تكوين السمة.

إعجابَين (2)

مرحباً بالجميع،

شكراً على التوضيح. لقد اتبعت هذه التعليمات واستخدمت عنوان URL لـ .json لتأكيد اسم المجموعة بالضبط.

اسم المجموعة الأساسية هو بالفعل Community-Core، مع الأحرف الكبيرة والشرطة، وهو بالضبط ما أدخلته في إعدادات مكون السمة.

للأسف، لا يزال الأمر لا يعمل. لا يزال إعادة توجيه صفحة المجهول ساري المفعول. لذا، يجب أن تكون المشكلة شيئًا آخر.

هل يمكن للآخرين تأكيد أن هذا يعمل لديهم؟

هل لديك أي أفكار أخرى يمكنني التحقق منها؟

لا. إذا كان ينتقل إلى صفحة المجهول وليس إلى “الصفحة الرئيسية الافتراضية المخصصة”، فهذا يعني أنه لا يعثر على المستخدم عندما يحدث ذلك

      const user = api.getCurrentUser();

لا أعرف كيف يمكن أن يحدث ذلك إذا كان المستخدم قد سجل دخوله بالفعل.

آه، هل حاولت إعادة تحميل الصفحة؟

إعجاب واحد (1)

شكراً جاي، لقد حاولت إعادة التحميل. لقد جربت تعديلات عديدة على عناوين URL وما شابه ذلك. إنه بالتأكيد يقوم بتحميل صفحة Anon. إذا قمت بتغيير ذلك، فإنه ينتقل إلى تلك الصفحة ويظهر أيضًا /latest في عنوان URL للمتصفح.

لقد بحثت وأفترض أنه لا توجد طريقة أخرى لإعادة التوجيه ببساطة. كان الأمر أسهل مع مواقع PHP. ما زلت مبتدئًا في Discourse.

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