2015-01-30 3 views
4

CakePHP 프레임 워크에서 현재 TinyMCE (버전 : 3.3.9.2 (2010-09-29))를 사용 중이고 Advance Themes 파일 tiny_mce/themes/advanced/editor_template.js을 수정하려고합니다 (Microdata 구문을 사용할 수 있도록합니다. http://www.tinymce.com/develop/bugtracker_view.php?id=4469tinymce extended_valid_elements for Microdata

이 디버그 조각을 참조하는

extended_valid_elements : "p[itemtype|itemscope|itemprop|id|class|style|title|dir<ltr?rtl|lang|xml::lang|onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup]", 

및/또는

extended_valid_elements : "@[itemtype|itemscope|itemprop|id|class|style|title|dir<ltr?rtl|lang|xml::lang|onclick|ondblclick|onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|onkeydown|onkeyup]", 

: 다음 문자열을 추가하여 .ORG 어휘) 그러나 파일을 수정하고 새로 고침하면 <p itemtype="def">This is some content.</p>또는<div itemscope itemtype="http://schema.org/Movie">This is some content.</div>을 HTML 소스 편집기에서 테스트 할 때 모든 내용이 삭제됩니다.

누구나 수정 방법이나 TinyMCE가 구조화 된 데이터를 계속 스트립하기위한 아이디어가 있습니까?

답변

0

TinyMCE v3.4 이전에는 설정 옵션 cleanup과 다른 옵션 verify_html이있었습니다. 해당 옵션을 false으로 설정해보십시오. This thread은 속성이 extended_valid_elements에 나열된 경우에도 일부 속성 제거가 여전히 발생한다고 제안하는 것으로 보입니다.

필자는이 문제에 대해 직접적으로 생각하고 TinyMCE가 가능한 한 자유 주의적으로 설정된 configs로 잘못된 HTML을 수정하는 데 적극적이라는 희미한 기억을 가지고 있습니다. TinyMCE 포럼에서 해당 스레드를 찾을 수 있다면 일부 링크에서 편집 할 것입니다.

또 다른 문제는 CakePHP의 유효성 검사 일 수 있습니다. 이전 버전의 CakePHP는 HTML을 걸러 낼 수있는 Sanitize 클래스를 가지고 있습니다. 문자열이 HTML Purifier과 같은 라이브러리를 통해 실행되고 있지 않은지 확인하십시오.