رابط لموقع خارجي من شعار ديكوريس الرئيسي

:information_source: يوفر Discourse الآن مكون سمة official لدعم حالة الاستخدام هذه:

المحتوى الأصلي

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

إنشاء مكون سمة جديد

:warning: ملاحظة، سيتم استخراج هذا القسم من الدليل إلى موضوع مخصص قريبًا.

انقر على رابط “المكونات” من الشريط الجانبي لصفحة “المشرف / التخصيص / السمات”. ثم، من أسفل الشريط الجانبي، انقر على زر “تثبيت”:

في النافذة المنبثقة التي تفتح، انقر على رابط “إنشاء جديد”:

قم بتسمية مكون السمة الخاص بك وتأكد من تحديد نوع “مكون”. ثم انقر على زر “إنشاء”:

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

إضافة الكود إلى مكون السمة

يجب إضافة الكود لتجاوز عنوان URL الافتراضي للشعار الرئيسي إلى قسم HEAD في مكون السمة الخاص بك. للوصول إلى محرر المكون، انقر على زر “تحرير CSS/HTML”:

في المحرر الذي يفتح، انقر على رابط “Head”:

اعتمادًا على الظروف المختلفة، أضف مقتطفات الكود التالية إلى قسم HEAD في المحرر لتعديل عنوان URL الذي يشير إليه شعار الصفحة الرئيسية. لاحظ أنك بحاجة إلى استبدال https://example.com في الكود بعنوان URL الكامل للصفحة الرئيسية لموقعك الخارجي:

  • لتغيير الرابط إلى عنوان URL ثابت:
<script type="text/discourse-plugin" version="1.3.0">
    api.registerValueTransformer("home-logo-href", () => "https://example.com")
</script>
  • لإرجاع عنوان URL ديناميكي بناءً على المستخدم الحالي:
<script type="text/discourse-plugin" version="1.3.0">
    api.registerValueTransformer("home-logo-href", () => {
      const currentUser = api.getCurrentUser();
      return `https://example.com/${currentUser.username}`;
    })
</script>
  • لإرجاع عنوان URL بناءً على إعداد مكون السمة:
<script type="text/discourse-plugin" version="1.3.0">
    api.registerValueTransformer("home-logo-href", () => {
      return settings.example_logo_url_setting;
    })
</script>

انقر على زر “حفظ” لحفظ التغييرات. ارجع إلى الصفحة الرئيسية لمكون السمة بعد القيام بذلك، ثم انقر على رابط “إضافة الكل إلى السمات” لإضافة المكون الجديد إلى جميع سمات موقعك:

11 إعجابًا

:+1: شكراً جزيلاً على المشاركة!


لقد أضفته في وسم الرأس (header tag) ولكنه لم يؤثر

بالنسبة لي، يعمل بشكل مثالي.
هل قمت بتحديث “إعادة تحميل قوية” لموقعك باستخدام Ctrl + F5؟


لقد استخدمت Command+R وحتى أنني قمت بتشغيل وضع التصفح المتخفي، ولكنه لم ينجح بعد

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

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

ومع ذلك، أدركت أنه سيغير أيضًا رابط الشعار الصغير الذي يحل محل الشعار الكامل عند عرض عنوان موضوع في الرأس. على سبيل المثال، الأيقونة هنا فقط في meta:

image

هذا يبدو غير بديهي. هل من الممكن إضافة وسيطة أخرى للدالة بحيث لا تؤثر على الشعار الصغير؟

بسبب Upcoming Header Changes - Preparing Themes and Plugins أعتقد أنه يجب تغيير هذا إلى


    api.registerValueTransformer("home-logo-href", () => "\u003cfull_url_of_your_website_homepage\u003e");
إعجابَين (2)