الربط بالمخطط المخصص

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

نقوم بإعداد بيئة ديسكورس الداخلية الجديدة الخاصة بنا وتمكنت من إعداد مخطط عنوان URL مخصص للربط بمورد داخلي على الشبكة. أردت إضافة زر سهل عند إنشاء منشور جديد، وهو ما تمكنت من القيام به، ولكنني أرغب في استخدام النص المميز كعنوان للرابط وكذلك للرابط الفعلي نفسه. حاليًا، أستخدم فقط تطبيق “apply surround” لإدراج ما نحتاجه في رابط، ولكن يتعين علينا تغيير عنوان الرابط يدويًا، انظر الكود أدناه.

<script type="text/discourse-plugin" version="1.0">
api.onToolbarCreate(toolbar => {
    toolbar.addButton({
        id: "dms_button",
        group: "fontStyles",
        icon: "fab-wikipedia-w",
        perform: e => e.applySurround("[id_here](INET://", ')')
    });
});
</script>

يدخل المستخدم 123456 > يقوم بتطبيق هذا حول النص المميز [id_here](INET://123456)

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

إذًا، تريد أن يظهر النص الذي تحدده مرتين؟
لا أعتقد أن هذه الوظيفة ستسمح لك بذلك؟
هل فكرت في تجاوز منطق onebox للعمل مع بروتوكولك؟

تعمل البروتوكول بشكل جيد، يمكنني استخدام inet:// حسب الحاجة ولكن كنت أبحث فقط عن طريقة سهلة للمستخدم لإدراج عنوان URL المخصص في منشور. في النموذج السابق (phpbb) قمنا بإنشاء bbcode مخصص للرابط الذي نجح، ومع ذلك كنت أبحث عن حل أسهل مع discourse.

هل يدعم Discourse بالفعل الـ oneboxing للروابط inet://؟

لا، ليس بشكل افتراضي. لذا، ما تشير إليه هو إنشاء إضافة onebox لـ inet:// والتي ستقوم بتنسيق الرابط بالطريقة التي أحتاجها؟

لذا، عندما يدخل المستخدم inet://12345، سيحتوي معاينة onebox فعليًا على الرابط المنسق بشكل صحيح؟

كان اقتراحي هو أنه بدلاً من القيام بشيء منخفض المستوى في المُنشئ، قم بتعديل نظام الـ oneboxing “ببساطة” لتنسيق روابط inet:// تمامًا مثل روابط https://.

على وجه التحديد، أشير إلى الطريقة التي يقوم بها بالتنسيق بشكل مضمن مثل هذا: Dark/Light Mode Toggle - #20 by jordan.vidrine

كل ما كان علي فعله هو لصق الرابط، وقامت Discourse بالنظر إلى الهدف وأنشأت عنوانًا مرتبطًا لطيفًا لي من علامات og.

يفترض هذا بالطبع أن مؤسستك تتحكم في علامات og على الصفحات المرتبطة المستهدفة.