Как настроить Tinymce, чтобы разрешить вставлять теги при редактировании HTML? - PullRequest
15 голосов
/ 13 апреля 2010

Я бы хотел, чтобы пользователи могли копировать и вставлять теги для вставки видео (youtube, vimeo и т. Д.) В html-редактор tinymce. Я пробовал каждое решение, которое я могу найти в Интернете - однако tinymce всегда удаляет любые теги встраивания в коде встраивания видео, когда я нажимаю обновить в редакторе html.

Вот мой текущий сценарий инициализации tinymce:

tinyMCE.init({
    mode: "textareas",
    valid_elements: "*[*]",
    extended_valid_elements: "embed[width|height|name|flashvars|src|bgcolor|align|play|loop|quality|allowscriptaccess|type|pluginspage]",
    theme: "advanced",
    theme_advanced_buttons1: "code",
    media_strict: false
});

Если я отключу функцию «очистки» от tinymce (cleanup: false) ... что я не хочу делать ... тогда все будет работать как надо

Я перепробовал много версий extended_valid_elements и других опций, но не нашел ничего, что работает. Что я делаю неправильно?

Спасибо заранее, Шейн

Ответы [ 3 ]

17 голосов
/ 21 апреля 2010

Для чего это стоит - после долгих ошибок и ошибок я узнал, что вы должны включить медиа-плагин, чтобы заставить media_strict работать.Если это где-то задокументировано, я, должно быть, пропустил это.Вот обновленный скрипт инициализации, который позволил мне вставлять теги внедрения через html-редактор в tinymce:

tinyMCE.init({ 
    mode: "textareas",      
    plugins: "media",
    theme: "advanced", 
    theme_advanced_buttons1: "code", 
    media_strict: false 
}); 

Известно, что это работает с tinymce ver 3.2.5 и 3.3.8 - но, как указано ниже,есть проблемы с tinymce ver 3.3.5

3 голосов
/ 19 сентября 2011

Если вы пытаетесь добиться этого с помощью плагина tinymce, то следующий код может помочь вам в разделе инициализации плагинов.

ed.onPreInit.add(function() {
              // Allow video elements
              ed.schema.addValidElements('object[id|style|width|height|classid|codebase|*],param[name|value],embed[id|style|width|height|type|src|*],video[*],audio[*],source[*]');
            });

Это взято из медиа-плагина.

1 голос
/ 31 мая 2010

К вашему сведению, у меня также есть iFrame fix, если вы планируете, например, включить GOOGLE MAPS.

extended_valid_elements: "iframe[src|width|height|name|align], embed[width|height|name|flashvars|src|bgcolor|align|play|loop|quality|allowscriptaccess|type|pluginspage]",
...