안녕하세요 ![]()
두 가지 방식으로 구현할 수 있을 것 같다는 생각을 하고 있습니다.
첫 번째 방식이 가장 쉽습니다. 플러그인 API인 api.decorateCookedElement를 사용하여 게시물 내의 모든 비디오를 찾아 해당 속성(autoplay, loop 등)을 추가하는 작은 테마 컴포넌트를 만드는 것입니다.
이 방식은 사이트 전체의 게시물 내 모든 비디오의 HTML을 수정합니다. 컴포저(Composer)에는 위에서 언급한 마크다운 비디오 코드가 그대로 표시됩니다.

장점: 사이트 내 모든 비디오에 적용됩니다(이전에 업로드된 비디오도 포함).
단점: 게시된 게시물에서 처리되므로 사용자가 이를 제어할 수 없습니다. 모든 비디오에 적용되므로, 많은 비디오가 있는 주제에서 이 비디오들이 동시에 재생되기를 원할 경우 문제가 발생할 수 있습니다.
두 번째 옵션은 조금 더 작업이 필요합니다. 사용자가 업로드된 비디오에 어떤 속성이 추가될지 제어할 수 있는 모달입니다. 컴포저에 특정 버튼을 추가하여 트리거하거나, 비디오 업로드를 감지하면 자동으로 트리거되도록 설정할 수 있습니다.
완료되면 추가된 속성을 포함하는 비디오 HTML이 컴포저에 삽입됩니다.
<video width="100%" height="100%" preload="metadata" controls="" autoplay>
<source src="https://www.simscale.com/forum/uploads/default/original/3X/d/6/d6fab77fb56eeb98ef660d682f344dba4bbb66ce.mp4">
<a href="https://www.simscale.com/forum/uploads/default/original/3X/d/6/d6fab77fb56eeb98ef660d682f344dba4bbb66ce.mp4">/forum/uploads/default/original/3X/d/6/d6fab77fb56eeb98ef660d682f344dba4bbb66ce.mp4</a>
</video>
이것의 훌륭한 예로는 Insert Video 테마 컴포넌트가 있습니다.
장점: 사용자가 비디오 속성을 제어할 수 있으며, autoplay 등을 비활성화하도록 선택할 수 있으므로 비디오가 많은 주제에서도 문제가 되지 않을 것입니다.
단점: 이전의 비디오에는 적용되지 않습니다. 하지만 이 두 번째 프로세스 전체가 사용자가 자신의 비디오를 제어하는 방법에 관한 것이므로 큰 단점은 아닙니다.
추가
첫 번째 방법은 사용자 설정 또는 그룹과 결합할 수 있습니다. 이렇게 하면 사용자가 비디오 동작을 설정할 수 있습니다.
예를 들어: 비디오 자동 재생 활성화 또는 비디오 자동 재생 등을 활성화하는 그룹에 가입하는 것 등…
수정: lazy load를 잊고 있었다는 생각이 들었습니다. lazy load는 사용자가 섬네일 재생 버튼을 클릭할 때만 비디오를 로드하기 때문에, 첫 번째 프로세스가 현재 작동하지 않는 것일 수 있습니다. 아직 테스트해 보지 않았습니다… ![]()