2012-03-29 10 views
5

Folks,TinyMCE: Copia-Incolla di Google Docs

La mia azienda ha bisogno per sostenere il seguente flusso di lavoro: - C'è contenuti ricchi sempre creati in Google Documenti (con semplice formattazione - grassetto/corsivo, così come collegamenti ipertestuali) - Il contenuto viene quindi incollato in un CMS interno che utilizza TinyMCE.

Problema: tutta la formattazione si perde quando si incolla roba in

già provato il plugin "incolla da Word" - non funziona..

Si prega di avvisare. Grazie!

UPDATE: Ho ridotto il problema a Google Chrome. Firefox funziona bene. Ho anche usato i callback paste_pre_processing() - i dati vengono corrotti prima di entrare.

+0

+1 buona domanda, ma non facile. puoi mostrarci cosa viene incollato nell'editor, come hai configurato lo stagno? – Thariama

+0

Ho anche problemi durante l'incollamento da Google Documenti. A volte il contenuto viene semplicemente "cancellato" quando si incolla o si invia a DB. Ne ho provato alcuni proprio ora e sembrava funzionare bene, ma sembra inaffidabile, il che è un problema. Hai avuto fortuna fino ad ora? – Sam

risposta

3

Ho finito per rinunciare al plugin Incolla in TinyMCE. Invece, ho usato la proprietà valid_styles non documentata di TinyMCE. Questo ha risolto il problema bene per il mio scenario. Ecco il frammento di configurazione che abbiamo utilizzato:

valid_elements: "a[href|title|target],del,b,strong,del,i,blockquote,p,br,em,ul,li,ol,span[style]", 
valid_styles : { '*' : 'font-weight,font-style,text-decoration' }, 
1

Il tuo problema è un problema piuttosto complesso.

Per prima cosa è necessario assicurarsi che tinymce non rimuova tag e attributi di tag che riconosce non validi (osservare più da vicino le opzioni di configurazione di tinimce valid_elements e valid_children).

In secondo luogo sarà necessario implementare una propria gestione del processo di incolla. Ci sono tre modi per farlo. L'opzione più dispendiosa in termini di tempo è scrivere un plug in incolla personalizzato e sostituire quello specificato. Le altre opzioni sono modi per configurare i plugin di pasta e definire le proprie funzioni con cui interagire e modificare il contenuto incollato. Le sequenze paste_pre_processing e paste_post_processing sono la strada da percorrere qui.