Встраивание видео YouTube с новым кодом встраивания iframe в TinyMCE - PullRequest
8 голосов
/ 14 февраля 2011

Я попробовал старый код для встраивания видео с YouTube в TinyMCE, и он отлично работает. Некоторые пользователи могут не осознавать, что им нужно нажать на опцию старого кода встраивания в ссылке на код встраивания YouTube, чтобы добавить ее.

Я хочу упростить для пользователей и позволить им просто скопировать новый код для встраивания напрямую и вставить его в TinyMCE, и все готово.

Новый код для вставки выглядит следующим образом:

<iframe title="YouTube video player" width="640" height="390" 
        src="http://www.youtube.com/embed/VvJ037b_kLs" 
        frameborder="0" allowfullscreen></iframe> 

Как заставить TinyMCE принять новую версию кода для вставки YouTube с помощью iframe?

Я работаю над сборкой сайта CakePHP.

Ответы [ 2 ]

9 голосов
/ 19 августа 2011

Я думаю, что использование "extended_valid_elements" лучше, чем редактирование исходных настроек.

Смотрите, что: TinyMCS - extended_valid_elements

8 голосов
/ 16 февраля 2011

По умолчанию TinyMCE отфильтровывает тег iframe по соображениям безопасности. Вы можете добавить этот тег и его атрибуты в список разрешенных HTML-элементов.

См. http://tinymce.moxiecode.com/wiki.php/Configuration:valid_elements

Набор правил по умолчанию:

tinyMCE.init({
        // ... other configurations
        valid_elements : "@[id|class|style|title|dir<ltr?rtl|lang|xml::lang|onclick|ondblclick|"
+ "onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|"
+ "onkeydown|onkeyup],a[rel|rev|charset|hreflang|tabindex|accesskey|type|"
+ "name|href|target|title|class|onfocus|onblur],strong/b,em/i,strike,u,"
+ "#p,-ol[type|compact],-ul[type|compact],-li,br,img[longdesc|usemap|"
+ "src|border|alt=|title|hspace|vspace|width|height|align],-sub,-sup,"
+ "-blockquote,-table[border=0|cellspacing|cellpadding|width|frame|rules|"
+ "height|align|summary|bgcolor|background|bordercolor],-tr[rowspan|width|"
+ "height|align|valign|bgcolor|background|bordercolor],tbody,thead,tfoot,"
+ "#td[colspan|rowspan|width|height|align|valign|bgcolor|background|bordercolor"
+ "|scope],#th[colspan|rowspan|width|height|align|valign|scope],caption,-div,"
+ "-span,-code,-pre,address,-h1,-h2,-h3,-h4,-h5,-h6,hr[size|noshade],-font[face"
+ "|size|color],dd,dl,dt,cite,abbr,acronym,del[datetime|cite],ins[datetime|cite],"
+ "object[classid|width|height|codebase|*],param[name|value|_value],embed[type|width"
+ "|height|src|*],script[src|type],map[name],area[shape|coords|href|alt|target],bdo,"
+ "button,col[align|char|charoff|span|valign|width],colgroup[align|char|charoff|span|"
+ "valign|width],dfn,fieldset,form[action|accept|accept-charset|enctype|method],"
+ "input[accept|alt|checked|disabled|maxlength|name|readonly|size|src|type|value],"
+ "kbd,label[for],legend,noscript,optgroup[label|disabled],option[disabled|label|selected|value],"
+ "q[cite],samp,select[disabled|multiple|name|size],small,"
+ "textarea[cols|rows|disabled|name|readonly],tt,var,big"
});

добавить следующее в конец списка

,iframe[src|title|width|height|allowfullscreen|frameborder]

Я бы не рекомендовал разрешать пользователям размещать тег iframe на общедоступном веб-сайте.

...