||||\n-|-|-|\n:discourse2: | الملخص | يعرض Right Sidebar Blocks (كتل الشريط الجانبي الأيمن) شريطًا جانبيًا على يمين قوائم المواضيع مع قائمة قابلة للتكوين من الكتل. \n| | المعاينة | المعاينة على Discourse Theme Creator\n:hammer_and_wrench: | رابط المستودع | \u003chttps://github.com/discourse/discourse-right-sidebar-blocks\u003e\n:open_book:|جديد في سمات Discourse؟| دليل المبتدئين لاستخدام سمات Discourse\n\n[wrap=theme-install-button repoUrl="https://github.com/discourse/discourse-right-sidebar-blocks\" repoName="Right Sidebar Blocks"]\nتثبيت مكون السمة هذا\n[/wrap]\n\n[quote]\n\n:discourse2: نظرًا لكونه مكون سمة official تتم صيانته بواسطة فريق Discourse، يمكن تقديم طلبات Support (الدعم)، Bug (الأخطاء)، UX (تجربة المستخدم)، و Feature (الميزات) في الفئات المعنية هنا على Meta، ووضع علامة عليها باستخدام علامة مكون السمة المناسبة. انقر على أحد الروابط أدناه لبدء واحدة. \n\n\u003ckbd\u003e [\u0026nbsp;الدعم](Discourse Meta "اطلب الدعم بشأن تكوين واستخدام كتل الشريط الجانبي الأيمن") \u003c/kbd\u003e \u003ckbd\u003e [\u0026nbsp;خطأ](Discourse Meta "تقرير الخطأ يعني أن شيئًا ما معطل، مما يمنع الاستخدام العادي/النموذجي لمكون السمة") \u003c/kbd\u003e \u003ckbd\u003e [\u0026nbsp;تجربة المستخدم](Discourse Meta "مناقشة حول واجهة المستخدم لكتل الشريط الجانبي الأيمن، وكيفية عرض الميزات (بما في ذلك اللغة وعناصر واجهة المستخدم)") \u003c/kbd\u003e \u003ckbd\u003e [\u0026nbsp;ميزة](Discourse Meta "مناقشة حول كيفية تحسين ميزات كتل الشريط الجانبي الأيمن الحالية وتعزيزها، وكيفية عمل الميزات المقترحة الجديدة")\u003c/kbd\u003e\n\n[/quote]\n\n### الميزات\n\nيتضمن المكون بضع كتل يمكنك عرضها في الشريط الجانبي:\n\n* popular-tags (الوسوم الشائعة)\n* top-contributors (أفضل المساهمين)\n* recent-replies (الردود الأخيرة)\n* category-topics (مواضيع الفئة)\n* custom-html (HTML مخصص)\n* category-list (قائمة الفئات)\n* subcategory-list (قائمة الفئات الفرعية)\n* upcoming-events-list*\n* minimal-gamification-leaderboard** \n\n\u003e:information_source: يجب تمكين دليل المستخدم (user directory) لقائمة أفضل المساهمين ليتم ملؤها. إذا كانت قائمتك فارغة، ابحث عن enable user directory في إعدادات المسؤول للتأكد من تمكينها.\n\n\* متاح فقط عند استخدامه مع إضافة التقويم (Calendar).\n** متاح فقط عند استخدامه مع إضافة التلعيب (Gamification).\n\يمكنك أيضًا استخدام مكونات Ember أخرى ككتل، ما عليك سوى استخدام الاسم الصحيح. على سبيل المثال، يتضمن الكود الأساسي مكون Ember يسمى signup-cta، ويمكنك استخدامه في الشريط الجانبي كما هو. لاحظ أنه لا يمكنك استخدام المكونات التي تتوقع مجموعة من المعلمات، ولكن يمكنك بناء مكون Ember الخاص بك في سمة منفصلة والإشارة إليه بمجرد اسمه في إعداد blocks (الكتل) للشريط الجانبي. \n\يمكنك التحكم في بعض ميزات الكتل المقدمة عبر المعلمات.\n\n| الاسم | الوصف | الافتراضي | القيمة | متاح لـ |\n|—|—|—|—|—|\n| count | يحد من عدد النتائج | يختلف | رقم | جميعها باستثناء custom-html |\n| excerptLimit | يحد من طول مقتطف كل رد | 150 | رقم | recent-replies |\n| id | معرف الفئة | | معرف الفئة (تستخدم category-list فواصل) | category-topics, category-list |\n| content | المحتويات المراد عرضها | | html | custom-html |\n| scopeToCategory | يعرض فقط في الفئة أو الفئة الفرعية X | | معرف الفئة | popular-tags |\n| excludedTags | قائمة الوسوم المستبعدة | | أسماء الوسوم | popular-tags |\n| displayInSpecificCategories | قائمة الفئات التي سيتم عرض الأداة فيها | الكل | أرقام مفصولة بفواصل | popular-tags |\n| id | معرف لوحة المتصدرين | | رقم | minimal-gamification-leaderboard |\n| tag | الوسم المراد عرضه | | اسم الوسم | tag-topics |\n| period | الفترة الزمنية لأفضل المواضيع | weekly | all, yearly, quarterly, monthly, weekly, daily | top-topics |\n| title | عنوان الكتلة | يختلف | سلسلة نصية | tag-topics, category-list, top-contributors |\n| excludedGroupNames | يستبعد المجموعات المحددة | | أسماء المجموعات | top-contributors |\n| order | ترتيب المساهمين | | سلسلة نصية (likes_received أو likes_given) | top-contributors |\n| period | الفترة الزمنية لأفضل المساهمين | yearly | all, yearly, quarterly, monthly, weekly, daily | top-contributors |\n| upcomingDays | الأحداث التي بدأت قبل القيمة المقدمة | 180 | رقم | upcoming-events-list |\n| timeFormat | تنسيق تاريخ/وقت الحدث | LT | تنسيق momentjs | upcoming-events-list |\n\n### الإعدادات\n\n| الاسم | الوصف\n|-|-|\n| blocks | \n| show in routes | للمستخدمين المتقدمين فقط: حدد مسارات قائمة المواضيع التي سيظهر فيها الشريط الجانبي.\u003cbr\u003eأمثلة: discovery.latest, discovery.unread, discovery.new, discovery.top, tag.show, "c/category-slug" (للفئات)، "tag/sample-tag" (للوسوم).\u003cbr\u003eعندما تكون فارغة، يظهر الشريط الجانبي في جميع مسارات الاكتشاف.\n\nblocks: اختر الكتل التي ستعرضها واضبط ترتيبها\n\nshow_in_routes: حدد مسارات قائمة المواضيع التي سيظهر فيها الشريط الجانبي. افتراضيًا، سيظهر في جميع مسارات الاكتشاف باستثناء /categories.\n\n| الترجمة | الافتراضي\n|-|-|\n| top_contributors.heading | أفضل المساهمين\n| top_contributors.view_all | عرض الكل\n| popular_tags.heading | الوسوم الشائعة\n| popular_tags.view_all | عرض الكل\n| recent_replies.heading | الردود الأخيرة\n| subcategory_list.heading | الفئات الفرعية\n| top_topics.heading | أفضل المواضيع\n| category_list.heading | الفئات\n\n### لقطات الشاشة\n\n
\n\nلاحظ أن المكون يأتي مع تصميم أساسي جدًا، والافتراض هو أن المسؤولين الذين يستخدمون المكون سيضيفون تصميمهم الخاص في السمة الخاصة بهم.\n\n### التفاعلات\n\nعند استخدامه بالتزامن مع إضافة تقويم Discourse، يمكنك إضافة كتلة شريط جانبي لأحداثك القادمة. اسم الكتلة هو upcoming-events-list، ويمكن تخصيص تنسيق التاريخ باتباع هذا التركيب (على سبيل المثال، MMMM D, YYYY).\n\n
يسعدني رؤية هذا كـ #مكون_سمة_رسمي! إنه يفتح بالتأكيد عالمًا جديدًا من التخصيصات.
لدي سؤالان:
في الشريط الجانبي، أريد عرض قائمة المواضيع /latest بنفس الطريقة التي تعرض بها category-topics هذه القائمة. هل هذا ممكن؟ recent-replies يقترب من ذلك (خاصة إذا تم إخفاء المقتطف)، لكنني أريد حقًا تضمين المواضيع التي ليس لها ردود.
هل من الممكن عرض الكتل الجانبية في فئات معينة فقط؟ ما أعنيه هو أن المسار الوحيد المعروض هو قائمة مواضيع الفئة، وفقط للفئات التي أحددها.
نعتذر، الوثائق الخاصة بهذا الأمر تفتقر إلى التفاصيل (سأقوم بتحديثها الآن). اسم المعلمة لـ custom-html هو content.
ليس لدينا شيء جاهز لقائمة /latest الكاملة، ولكن يمكنك بناء قائمتك الخاصة وإضافتها إلى التكوين باستخدام اسمها. يجب أن تكون مشابهة جدًا لقوائم الفئات/العلامات، فقط بدون تصفية.
حاليًا، لا، لا يمكنك عرضها في فئات محددة فقط. ومع ذلك، يمكنك استخدام discovery.category في إعداد show in routes، وهذا سيعرض الشريط الجانبي فقط في مسارات الفئات (ولكن في جميعها، وليس مجموعة فرعية).
لقد لاحظت للتو قيدًا على المكون، خاصةً عندما يتعلق الأمر بكتل category-topics و subcategory-list، وهو أن إضافة كتل متعددة من أي من هذين النوعين بمعرفات مختلفة يؤدي دائمًا إلى ظهور مواضيع/قوائم فرعية من الكتلة العلوية في محرر التشغيل (أفترض).
إحدى المشكلات التي أواجهها الآن هي أنه بعد تجربة كتلة subcategory-list حوالي 10-12 مرة، توقفت عن الظهور تمامًا على موقع الاختبار الخاص بنا (انظر الفيديو أدناه).
لا يأخذ المقطع subcategory-list أي معلمة على الإطلاق. عند استخدامه، سيعرض الفئات الفرعية للفئة الحالية بناءً على الفئة الحالية التي انتقلت إليها… لذلك لا معنى لاستخدام هذا المقطع أكثر من مرة.
لهذا السبب أيضًا لا يظهر subcategory-list في الفيديو الخاص بك. إذا كنت على مسار غير فئوي، فلن يظهر هذا المقطع.
بالنسبة لـ category-topics، أرى في الفيديو الخاص بك نفس المعرف مستخدمًا مرتين: 7. لقد أجريت اختبارًا محليًا ومع معرفات مختلفة أحصل على مواضيع مختلفة معروضة (أي لا يمكنني إعادة إنتاج الخطأ المبلغ عنه).
حاليًا، لا، هذا الخيار غير موجود. من المنطقي إضافته، على الرغم من أنني أتخيل أنه يجب أن يدعم معرفات متعددة حتى تتمكن من عرض الكتلة لقائمة من الفئات (أ، ب، ج، على سبيل المثال). يسعدني مراجعة طلبات السحب (PRs) على المستودع، إذا اعتقد المطورون لديك أنه يمكنهم إضافة هذا، فسيكون ذلك رائعًا. (بخلاف ذلك، يمكنني إضافته إلى قائمة الميزات المرغوبة في مكون السمة.)
هل تقصد أ) جلب النتائج وتخزينها مؤقتًا لمدة أسبوع أو ب) جلب أفضل المساهمين للأسبوع الماضي عند كل تحميل؟ هذا الأخير يجب أن يكون سهل الإضافة، والتخزين المؤقت أكثر صعوبة قليلاً.
لست متأكدًا من مكان العثور على الكود الخاص بذلك - هل تمانع في توجيهي؟ أود إلقاء نظرة على تعديل category-topics بحيث يمنحك عدم وجود معرف جميع الفئات (وبالتالي قائمة /latest بشكل فعال)
مرحباً! لست متأكداً مما إذا كانت هذه المكونة تسبب أخطاء. ولكن بمجرد تعطيلها، لا تظهر المزيد من الأخطاء. هل يمكن لأحد أن يلقي نظرة على هذا لمساعدتي في تحديد المشكلة؟ سأكون ممتناً جداً.
مع تمكينها، عند زيارة موضوع معين على سطح المكتب، والنقر على شعار الموقع في الشريط العلوي في محاولة للعودة إلى الصفحة الرئيسية، سيتم نقلي إلى شاشة تحميل لا تختفي أبداً وستظهر أخطاء في وحدة تحكم المتصفح (كما هو موضح أدناه). لم تظهر أي سجلات أخطاء ذات صلة في المسار mysite/logs.
d6ca234baf8d2d5e65f414f31e198fe956d9a939.js?__ws=www.bfsu.cafe:98 Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'findFiltered')
at new CategoryTopics (d6ca234baf8d2d5e65f414f31e198fe956d9a939.js?__ws=www.bfsu.cafe:98:18)
at h.createComponent (base-component-manager.js:37:1)
at h.createComponent (ember-component-manager.js:54:1)
at C.create (manager.js:558:1)
at Object.evaluate (runtime.js:3301:1)
at Object.evaluate (runtime.js:1312:1)
at Dt.evaluateSyscall (runtime.js:5232:1)
at Dt.evaluateInner (runtime.js:5188:1)
at Dt.evaluateOuter (runtime.js:5180:1)
at Wt.next (runtime.js:6191:1)
at Wt._execute (runtime.js:6175:1)
at Wt.execute (runtime.js:6166:1)
at qt.handleException (runtime.js:5369:1)
at Kt.handleException (runtime.js:5605:1)
at Lt.throw (runtime.js:5302:1)
at Be.evaluate (runtime.js:2580:1)
at Lt._execute (runtime.js:5285:1)
at Lt.execute (runtime.js:5266:1)
at Ht.rerender (runtime.js:5634:1)
at Er.render (index.js:7578:1)
at index.js:7896:1)
at It (runtime.js:5074:1)
at Rr._renderRoots (index.js:7876:1)
at Rr._renderRootsTransaction (index.js:7928:1)
at Rr._revalidate (index.js:7970:1)
at invoke (backburner.js:351:1)
at p.flush (backburner.js:241:1)
at h.flush (backburner.js:447:1)
at q._end (backburner.js:999:1)
at _boundAutorunEnd (backburner.js:648:1)
CategoryTopics @ d6ca234baf8d2d5e65f414f31e198fe956d9a939.js?__ws=www.bfsu.cafe:98
createComponent @ base-component-manager.js:37
createComponent @ ember-component-manager.js:54
create @ manager.js:558
(匿名) @ runtime.js:3301
evaluate @ runtime.js:1312
evaluateSyscall @ runtime.js:5232
evaluateInner @ runtime.js:5188
evaluateOuter @ runtime.js:5180
next @ runtime.js:6191
_execute @ runtime.js:6175
execute @ runtime.js:6166
handleException @ runtime.js:5369
handleException @ runtime.js:5605
throw @ runtime.js:5302
evaluate @ runtime.js:2580
_execute @ runtime.js:5285
execute @ runtime.js:5266
rerender @ runtime.js:5634
render @ index.js:7578
(匿名) @ index.js:7896
It @ runtime.js:5074
_renderRoots @ index.js:7876
_renderRootsTransaction @ index.js:7928
_revalidate @ index.js:7970
invoke @ backburner.js:351
flush @ backburner.js:241
flush @ backburner.js:447
_end @ backburner.js:999
_boundAutorunEnd @ backburner.js:648
Promise.then(异步)
n @ backburner.js:28
flush @ index.js:46
_scheduleAutorun @ backburner.js:1218
_end @ backburner.js:1009
_boundAutorunEnd @ backburner.js:648
Promise.then(异步)
n @ backburner.js:28
flush @ index.js:46
_scheduleAutorun @ backburner.js:1218
_end @ backburner.js:1009
_boundAutorunEnd @ backburner.js:648
Promise.then(异步)
n @ backburner.js:28
flush @ index.js:46
_scheduleAutorun @ backburner.js:1218
_end @ backburner.js:1009
_boundAutorunEnd @ backburner.js:648
Promise.then(异步)
n @ backburner.js:28
flush @ index.js:46
_scheduleAutorun @ backburner.js:1218
_ensureInstance @ backburner.js:1206
scheduleOnce @ backburner.js:845
k @ index.js:522
queueRerender @ mount-widget.js:124
scheduleRerender @ widget.js:319
rerenderResult @ widget.js:365
F @ hooks.js:207
(匿名) @ hooks.js:247
dispatch @ jquery.js:5430
_.handle @ jquery.js:5234
frame:251 لقد قمت بتجاهل العلامة، ولكن ملفات تعريف الارتباط الخاصة بالجهات الخارجية معطلة في متصفحك، لذا ستعود العلامة في المرة التالية التي تزور فيها الصفحة.
أرى معلومات حول هذه المكونة في ملف js المذكور في السطر الأول من سجل الخطأ أعلاه.
لاحظت أن رأسي وتذييلي بالكامل يختفيان على مستوى العالم عندما أقوم بتمكين هذا (كل شيء في ملفي header.html و footer.html). هل كان هذا مقصوداً؟ ولكن لتجاوز هذا، يتعين علي استخدام PluginAPI لإضافة رأس/تذييل يدوياً.