يوفر Discourse الآن مكون سمة official لدعم حالة الاستخدام هذه:
المحتوى الأصلي
لست متأكدًا من أن جعل شعار Discourse الرئيسي يرتبط بموقع خارجي هو فكرة رائعة لمعظم المواقع، ولكن هناك استثناءات حيث يكون من المنطقي توجيه المستخدمين إلى موقع ويب خارجي عند النقر على شعار Discourse الرئيسي. إذا كنت ترغب في القيام بذلك، فإليك الطريقة.
إنشاء مكون سمة جديد
ملاحظة، سيتم استخراج هذا القسم من الدليل إلى موضوع مخصص قريبًا.
انقر على رابط “المكونات” من الشريط الجانبي لصفحة “المشرف / التخصيص / السمات”. ثم، من أسفل الشريط الجانبي، انقر على زر “تثبيت”:
في النافذة المنبثقة التي تفتح، انقر على رابط “إنشاء جديد”:
قم بتسمية مكون السمة الخاص بك وتأكد من تحديد نوع “مكون”. ثم انقر على زر “إنشاء”:
بعد ذلك، سيتم توجيهك إلى الصفحة الرئيسية لمكون السمة.
إضافة الكود إلى مكون السمة
يجب إضافة الكود لتجاوز عنوان 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>
انقر على زر “حفظ” لحفظ التغييرات. ارجع إلى الصفحة الرئيسية لمكون السمة بعد القيام بذلك، ثم انقر على رابط “إضافة الكل إلى السمات” لإضافة المكون الجديد إلى جميع سمات موقعك:








