htmlpurifier에서 프로알라에디터가 충돌이 있어서 질문을

htmlpurifier에서 프로알라에디터가 충돌이 있어서 질문을

QA

htmlpurifier에서 프로알라에디터가 충돌이 있어서 질문을

본문

검색을 많이해봤는데 워낙에 쓰시는분들도 없다보니

답변얻기가 좀 어려울거 같지만 혹시나 하고 여쭤봅니다

 

1.영상을 올리게되면 프로알라 에디터에서 자동으로 붙는 클래스는 => fr-video fr-dvb fr-draggable 입니다

ps. fr-video 나 fr-dvb는 영상크기 조절하는 클래스로 설정되어있어요

 

2.htmlpurifier에서 비디오태그 허용을 한후 video를 올리고 글을 다 쓴 상태에서

 


<p> <---단락--->
<span class="fr-video fr-dvb fr-draggable">
<video class="fr-draggable" controls="" src="/data/froala/23.09/영상이름.mp4"></video>
</span>
</p><---단락--->

이런식으로 나와야하는게 정상적인 출력인데요

 

에디터에서 글을 쓰고 있는 상태에선 위에처럼 나오지만

정작 글이 업로드 된후에는


<p><span class="fr-video fr-dvb fr-draggable"></span></p>
<video class="fr-draggable" controls="" src="/data/froala/23.09/영상이름.mp4"></video>

위 내용처럼 비디오태그가 클래스안에?(혹은 P태그안에?) 못들어가고 튕겨져 나와요 ( 영상은 잘 출력이 됩니다만..클래스가 붙질 않아서 크기제어가 안되고 전체화면으로 나오는중 )

 


htmlpurifier에서 video는 허용이 되는데 fr-video fr-dvb fr-draggable 이런 에디터 클래스가 허용이 안되는가도 생각을 해봤지만

이미지나 유튜브 글들이 쓰여질때는 제대로 fr-클래스가 붙어서 나와요

htmlpurifier에서 해본건

 


1. $config->set('HTML.AllowedElements', 'p, a, ul, ol, li, h1, h2, h3, h4, h5, h6, br, strong, em, b, i');
// 지정해서 추가해보기

2. $config->set('HTML.Allowed', 'span[name|id|class]'); 
// span 허용해보기

3. $def->addAttribute('span', 'class*', new HTMLPurifier_AttrDef_Enum(
      array('allowed')
    ));
// video정의 쪽에 추가 해보기

 

기본적으로 위에처럼 해봤고 화이트리스트로 해보는건 여러문제가 동반한다고 해서 엄두를 못냈어요

htrmlpurifier에서 id를 지정해놓는다라는건 메뉴얼을보니깐 후속문제는 책임 못진다고 써있길래 그 또한 시도를 못했구요.

 

질문)

 

1.htmlpurifier에서 하는게 설정하는게 맞는건지...

 

2.아니면 htmlpurifier에서 비디오태그만 통과시키고

view페이지에서 비디오태그를 검색해서 클래스를 직접 붙여줘야하는지...방향을 아에 못잡고 있어서..

조언을 혹시 얻을수 있을까 하고 글을 적어봅니다~

이 질문에 댓글 쓰기 :

답변 1

클래스 설정에서 처리하는 게 좋은 방법이라고 생각합니다. 또한 비디오 태그를 허용하고 싶다면, HTMLPurifier 설정에서 비디오 태그를 허용하도록 구성하면 되구요.

또한 다음 과 같이 설정하면 span 태그 안에 있는 클래스 이름이 HTMLPurifier에 의해 제거되지 않고 유지됩니다.

$config = HTMLPurifier_Config::createDefault();

$config->set('HTML.Allowed', 'span[class]');

만약 비디오 태그를 사용하고 싶다면, 태그를 추가로 허용할 수 도있습니다

$config->set('HTML.Allowed', 'span[class], video[src|controls]');

도움이 되셔길 바라며 항상 느림의 미학으로 찬찬히 화이팅!~응원할께요

 

답변을 작성하시기 전에 로그인 해주세요.
전체 128
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT