Come impedire a CKEditor 3.6.3.7474 di rimuovere i tag <script>


8

Con Full HTMLi filtri abilitati e correlati disattivati, CKEditor rimuoverà tutti i <script>tag dal contenuto che sta modificando. Gli editor che creano contenuti per questo particolare sito devono essere in grado di incorporare cose come queste nei contenuti che stanno creando:

    <img src="http://s2.thingpic.com/images/TD/zKWJQJiFBsp3oP1etNC1.png" width="560" class="alwaysThinglink"/>
<script charset="utf-8" src="//www.thinglink.com/jse/embed.js#286861458501795840"></script>

In teoria possiamo farlo funzionare disabilitando CKEditor e lavorando direttamente con HTML, ma in pratica non funziona: gli editor non sono esperti di HTML. Sanno abbastanza per uscire temporaneamente dalla modalità Rich Text, incollare quanto sopra e quindi tornare alla modalità Rich Text. Ma se vanno di nuovo a modificare quel contenuto, CKEditor rimuove i <script>tag quando apre il contenuto.

Come posso interrompere questo comportamento e lasciare che CKEditor lasci i <script>tag in posizione? C'è un'impostazione nascosta da qualche parte per quello?

A proposito, stiamo usando CKEditor insieme al Wysiwyg 7.x-2.1modulo.

E sì, in generale consentire <script>è molto male, ma in questo caso le uniche persone che hanno accesso al formato HTML completo sono gli editor (che sono affidabili).

Grazie!

Risposte:


14

Puoi risolverlo andando nella sezione "Opzioni avanzate" del tuo profilo CKEditor e aggiungendo la seguente stringa nell'area di testo: config.allowedContent = true;

Questo ha risolto il problema per me.


1
non vedo un'opzione avanzata in d8 dove sarebbe?
Diana,

9

Mi stavo imbattendo anche in questo, ed è stato molto frustrante.

Per me, il problema era con il plug-in Teaser Break in bundle con il modulo Wysiwyg. Disabilitare quel pulsante per il mio profilo Wysiwyg ha risolto il problema per me.

Puoi disabilitare il plug-in wysiwyg di Teaser Break in Amministrazione ›Configurazione› Creazione contenuto ›Profili Wysiwyg (/ admin / config / content / wysiwyg).

Sono molto interessato a sapere se questo risolve anche il tuo problema o se hai riscontrato un problema diverso. Ho appena presentato un nuovo bug per questo a http://drupal.org/node/1801166 .


Grazie! "config.allowedContent = true;" non ha funzionato per me.
Andrey Minogin,

2

Penso che tu stia cercando l'impostazione:

  • pagina admin / config / content / ckeditor / edit / advanced (sostituisci advanced con il nome del tuo profilo).
  • scheda Filtro contenuto avanzato.
  • impostato su Disabilitato.

In alternativa puoi impostarlo su Abilitato e aggiungere il tag di script in "Contenuti extra consentiti", ma con gli script consentiti, puoi anche consentire qualsiasi cosa.

Questa impostazione proviene dal modulo CKEditor, quindi vale per quando non si utilizza il modulo Wysiwyg. Quando si utilizza wysiwyg <Immagino che tu debba scoprire cosa fa questa impostazione, probabilmente impostando alcune opzioni in CKEditor.

A proposito: perché usare wysiwyg in mezzo invece di cercare l'intero set di funzionalità di CKEditor. Ho smesso di usare wysiwyg quando è uscito CKeditor 4 e wysiwyg non è stato in grado di offrire supporto per questo per molto tempo. Dato che uso sempre e solo CKEditor, che senso ha avere nel mezzo wysiwyg?


0

Hai controllato le impostazioni del formato testo? In modo che non sia selezionato "Limita tag HTML"? Ad ogni modo, penso che il modulo Ckeditor senza il modulo WYSIWYG sia più stabile.


per favore espandi i dettagli
monymirza il

0

Vecchia vecchia domanda, ma un altro modo per gestirlo è disabilitare il WYSIWYG per impostazione predefinita. Se il WYSIWYG non si attiva (attiva o altro) in modalità modifica, il tag dello script non viene rimosso. Nel mio caso d'uso questo funziona.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.