it-swarm.dev

come impedire a JCE di rimuovere / sostituire div su copia / incolla

Ho provato tante cose e ancora non riesco a farlo funzionare.

In Joomla 2.5.20, con JCE 2.3.4.4, su un Mac, ho il seguente scenario:

Nell'editor, ho una serie di div, e se li seleziono (visivamente trascinando il cursore o tramite un clic nel percorso) e li copio con cmd + copia, quando lo incollo (tramite il collegamento, o la finestra di dialogo incolla), il contenuto incollato non ha <div> perché sono stati convertiti in <br>'S!

Una cosa che ho notato è che il contenuto incollato nella finestra di dialogo incolla ha i div, quindi la conversione/rimozione viene eseguita quando si inserisce nell'editor, non durante la copia!

Vorrei che non rimuovesse il <div> né convertirlo in nient'altro.

Ho provato ad aggiungere div ai "keep tags" (profili> [il mio profilo]> parametri del plugin> appunti) ma ciò peggiora, non solo rimuove il <div> tag ma anche qualsiasi altro tag.

Sto usando il super amministratore, che non ha filtri di testo, e il profilo JCE non ha il "cleanup HTML" né "validate HTML". Tutti gli altri filtri in JCE sono disattivati ​​(non rimuovere gli attributi di classe, ecc.).

Qualcuno ha una soluzione per questo?

2
jackJoe

Capisco cosa stai cercando di realizzare, ma non credo che troverai un WYSIWYG che ti permetterà di copiare il testo, quindi incollarlo con l'html intatto e confido che non si romperà. Tutto ciò che serve è che il tuo utente incolli il testo con il cursore nella posizione sbagliata di un carattere, e il tutto va a segno.

Anche usando un templater, come NoNumber, l'utente può distruggerlo inserendo il modello mentre si trova ancora all'interno di un'altra div - che, a proposito, JCE forzerà.

Esiste un equilibrio di costruzione attenta quando si raccolgono blocchi ripetuti di dati che un utente potrebbe dover aggiungere o rimuovere. Se disponi di dati coerenti, ti consiglio di utilizzare un CCK. K2 o Sobipro sono quelli che ho usato. Se hai dati meno coerenti, crea ogni blocco come articolo (con un modello, quindi quando ne creano uno nuovo, possono semplicemente inserire un nuovo modello), quindi caricare quella categoria con un modulo.

In realtà non vogliamo che i nostri clienti giochino nelle loro aree del modulo, se possibile, quindi inseriremo il loro contenuto in un articolo (quando personalizzato html), quindi cariceremo quel contenuto in un modulo con NoNumber Articoli ovunque, quindi cariceremo quel modulo in il nostro layout. Se dobbiamo creare due colonne di contenuto, spesso ogni colonna ottiene il proprio articolo e questi vengono quindi caricati tramite modulo nella pagina per garantire che non possano interrompere la struttura.

Abbiamo iniziato a farlo grazie al nostro passaggio al design reattivo e ha fatto una GRANDE differenza. Riceviamo pochissime chiamate dai clienti che hanno distrutto i loro layout di contenuto.

Quindi, so che questa non è una vera risposta alla tua domanda - è più di un 'se hai raggiunto quel punto che il tuo layout è troppo complesso per essere modificato dai tuoi clienti, è tempo di ripensare a come presenti quel contenuto al tuo utenti.

2
Faye

Se stai incollando nella vista con stile, fai clic sul pulsante "Editor del codice sorgente".

JCE Source Code Editor Button

Questo ti darà una vista come questa: JCE Source Code view

Incolla il codice HTML nella posizione desiderata.

Se trovi utile il pulsante a schermo intero quando guardi la vista del codice sorgente in quanto non è così stretta ...

JCE Full Screen mode button

0
Craig