أريد أن يتمكن المستخدمون من تحميل ملفات فيديو قصيرة لتضمينها في منشوراتهم، وأريد أن يكون السلوك الافتراضي للمنتدى قابلاً للتكوين لجعل هذه مقاطع الفيديو افتراضيًا التشغيل التلقائي والتكرار، وكتم الصوت. بحيث يمكن استخدام مقاطع الفيديو كبدائل لملفات GIF، بنفس الطريقة التي تعمل بها على Discord (في الواقع، تأتي مقاطع الفيديو في الغالب من Discord، الذي يستخدم الكثير من ملفات .mp4 بدلاً من GIF على ما يبدو).
يوضح هذا الموضوع كيفية كتابة HTML لجعل ملف الفيديو يعمل تلقائيًا ويكرر (مع كتم الصوت).
هذا يعمل، باستثناء أنني لا أستطيع معرفة كيف يمكنني استخدام هذا عندما يكتب المستخدم مشاركته ويقوم بتحميل ملف الفيديو الخاص به. لاحظ كيف في هذا المثال، يتم استخدام عنوان URL الكامل لملف الفيديو. هذا غير متاح للمستخدمين عند تحميل ملفاتهم، أيضًا، إذا تم نقل ملفات المستخدم التي تم تحميلها أو نقلها إلى مزود S3 مختلف أو شبكة توصيل محتوى (CDN)، فسيكون عنوان URL معطلاً أيضًا.
عندما يقوم المستخدم بتحميل ملفه، في مربع الرد يحصل على Markdown مثل هذا؛
لذلك لا يبدو أنه من الممكن للمستخدم ببساطة تحويل هذا إلى HTML المطلوب لملف الفيديو الخاص به للتشغيل التلقائي والتكرار (مع كتم الصوت). هل هناك طريقة متاحة لهذا؟ والأفضل من ذلك، هل هناك طريقة يمكنني بها جعل هذا هو السلوك الافتراضي في جميع أنحاء المنتدى؟ أو على الأقل ترك هذا السلوك ممكّنًا افتراضيًا، والسماح للمستخدم بالانسحاب من إعدادات التشغيل التلقائي والتكرار عند قيامه بالتحميل والنشر.
(إذا لم يكن ذلك ممكنًا حاليًا، فأنا أرغب في تقديم هذا كطلب ميزة )
الطريقة الأولى هي الأسهل، ببساطة إنشاء مكون سمة صغير يستخدم واجهة برمجة تطبيقات المكون الإضافي api.decorateCookedElement للعثور على جميع مقاطع الفيديو في المنشورات وإضافة هذه السمات. (التشغيل التلقائي، التكرار، إلخ)
سيؤدي ذلك إلى تعديل كل HTML مقاطع الفيديو في المنشورات على مستوى الموقع بأكمله. في المحرر، لا يزال يظهر رمز الفيديو بتنسيق markdown الذي ذكرته أعلاه. 
الإيجابيات: يؤثر على جميع مقاطع الفيديو على الموقع (لذلك المقاطع التي تم تحميلها سابقًا أيضًا)
السلبيات: لا يمكن للمستخدمين التحكم فيه لأنه يحدث في المنشورات المنشورة. يؤثر على جميع مقاطع الفيديو، لذلك إذا كان لديك موضوع به الكثير من مقاطع الفيديو وتريد تشغيلها في نفس الوقت، فقد يتسبب ذلك في مشاكل.
الخيار الثاني يتطلب عملاً أكثر قليلاً. إنه نموذج حيث يمكن للمستخدمين التحكم في السمات التي ستتم إضافتها إلى الفيديو الذي تم تحميله. يمكن تشغيله عن طريق إضافة زر معين إلى المحرر أو جعله يعمل تلقائيًا عند اكتشاف تحميل فيديو.
عند الانتهاء، يقوم بإدراج HTML الفيديو في المحرر الذي يحتوي على السمات المضافة.
الإيجابيات: يمكن للمستخدمين التحكم في سمات مقاطع الفيديو الخاصة بهم ويمكنهم اختيار تعطيل التشغيل التلقائي وما إلى ذلك، لذلك ستكون الموضوعات التي تحتوي على الكثير من مقاطع الفيديو جيدة أيضًا.
السلبيات: لن يؤثر على مقاطع الفيديو الأقدم. ولكنها ليست سلبية كبيرة لأن هذه العملية الثانية بأكملها تدور حول كيفية تحكم المستخدمين في مقاطع الفيديو الخاصة بهم.
بالإضافة إلى ذلك
يمكن دمج الطريقة الأولى مع إعداد للمستخدم أو مجموعة. مع هذا يمكن للمستخدمين إعداد سلوك مقاطع الفيديو.
على سبيل المثال: “تمكين التشغيل التلقائي لمقاطع الفيديو” أو الانضمام إلى مجموعة ستنشط التشغيل التلقائي لمقاطع الفيديو وما إلى ذلك …
تعديل: أفكر فقط في أنني نسيت التحميل الكسول، ومن المحتمل أن الطريقة الأولى لا تعمل الآن لأن التحميل الكسول يقوم فقط بتحميل الفيديو إذا نقر المستخدم على زر تشغيل الصورة المصغرة. لم أجربها بعد…
نعم، أعتقد أن الأفضل هو جعله قابلاً للتكوين من قبل المستخدم إذا كانوا يريدون تعيينه أم لا. أتساءل عن مدى صعوبة القيام بذلك؟ هل يمكن اعتبار هذا “مكون سمة”؟