2010-04-12 25 views
15

Tôi muốn người dùng có thể sao chép và dán các thẻ nhúng cho video (youtube, vimeo, v.v ..) vào trình soạn thảo html của tinymce. Tôi đã thử mọi giải pháp tôi có thể tìm thấy trên internet - tuy nhiên tinymce luôn loại bỏ bất kỳ thẻ nhúng nào trong mã nhúng video khi tôi nhấn cập nhật trong trình chỉnh sửa html.Làm cách nào để định cấu hình Tinymce để cho phép nhúng thẻ khi chỉnh sửa html?

Đây là hiện kịch bản TinyMCE init của tôi:

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 
}); 

Nếu tôi tắt TinyMCE của "dọn dẹp" chức năng (dọn dẹp: false) ... mà tôi không muốn làm ... sau đó mọi thứ suôn sẻ như mong muốn

Tôi đã thử nhiều phiên bản extend_valid_elements và các tùy chọn khác nhưng không tìm thấy phiên bản nào hoạt động. Tôi đang làm gì sai?

Cảm ơn trước, Shane

Trả lời

17

Đối với những gì nó có giá trị - sau nhiều đường mòn và lỗi Tôi đã học được rằng bạn phải bao gồm các plugin phương tiện truyền thông để có được media_strict để làm việc. Nếu điều này được ghi lại ở đâu đó thì tôi phải bỏ qua nó. Dưới đây là một kịch bản init cập nhật cho phép tôi để chèn thẻ nhúng qua trình biên tập html trong TinyMCE:

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

này được biết đến để làm việc với TinyMCE ver 3.2.5 & 3.3.8 - nhưng như đã nêu dưới đây có thể có vấn đề với tinymce ver 3.3.5

+1

Điều này phù hợp với tôi trong trình chỉnh sửa nhưng khi bạn gửi dữ liệu bài đăng, mã hóa này sẽ mã hóa một số dấu hiệu < and > nhất định làm thực thể html. Mọi thứ tôi đã thử về các tham số init phụ sẽ không loại bỏ điều này. Có lời khuyên nào không? – DonutReply

+0

Hey Oliver - có vẻ như phiên bản mới nhất của tinymce (3.3.5.1) phá vỡ mã cấu hình ở trên. Một số người dùng trên các bảng hỗ trợ tinymce dường như có cùng một vấn đề. Gần đây, chúng tôi đã nâng cấp để hỗ trợ bảng - và chức năng nhúng youtube ngừng hoạt động. Tôi đã không có thời gian để sửa chữa vấn đề (một lần nữa) - nhưng sẽ đăng câu trả lời khi tôi làm. – jskunkle

+0

Xem lại vấn đề này một lần nữa kể từ khi flash/video nhúng của chúng tôi đã bị hỏng kể từ khi chúng tôi nâng cấp lên tinymce ver 3.3.5 - Tắt nâng cấp lên ver tinym 3.3.8 đã khắc phục được sự cố của chúng tôi. Cũng được cập nhật câu trả lời được chấp nhận (ở trên) với một chút thông tin hơn – jskunkle

1

FYI, tôi cũng có iFrame fix nếu bạn có kế hoạch bao gồm GOOGLE MAPS chẳng hạn.

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

Nếu bạn đang cố gắng đạt được điều này từ plugin tinymce thì mã sau có thể thực hiện thủ thuật trong phần init của plugin.

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[*]'); 
      }); 

Điều này được lấy từ plugin phương tiện.

Các vấn đề liên quan