CKEDitor menghapus nama kelas, bahkan dengan pengecualian dalam konfigurasi

17

CKEditor tampaknya menghapus nama kelas ketika saya beralih antara tampilan HTML dan tampilan Teks Kaya.

Sesuai banyak saran di web, saya telah menambahkan yang berikut ke file config.js:

config.allowedContent = true;

Mengunggah, menghapus cache, dan bahkan langsung pergi ke file JS untuk mengeceknya bukan caching di komputer saya, tetapi masih menghapus kelas.

Apakah ada solusi lain?

Francesca
sumber

Jawaban:

18

Pergi ke "Admin >> Konfigurasi >> CKEditor"; di bawah Profil , pilih profil Anda (misalnya Lengkap ).

Edit profil itu, dan tambahkan "Opsi Lanjutan >> Konfigurasi JavaScript Khusus" config.allowedContent = true;.

foto

Jangan lupa untuk membersihkan cache di bawah "tab Performance."

pengguna19497
sumber
Bekerja untuk saya di Drupal 7 dengan modul CKEditor 7.x-1.13 dan CKEditor 4.3.2. Terima kasih, saya baru saja mulai sakit kepala dengan itu!
Benj
1
Sekarang di bawah "Admin >> Penulisan Konten >> Konfigurasi >> CKEditor".
Hugo
7

Edit profil lengkap dalam Konfigurasi> CKEditor

masukkan deskripsi gambar di sini

Buka bagian Filter Konten Tingkat Lanjut dan pilih Dinonaktifkan masukkan deskripsi gambar di sini

Tidak perlu menambahkan apa pun di bidang Konten Ekstra Diizinkan. Tidak perlu mengubah config.js. [... seperti ini tidak butuh berjam-jam untuk mencari tahu]

Steve
sumber
2
Sekarang di bawah "Admin >> Penulisan Konten >> Konfigurasi >> CKEditor".
Hugo
1

Masalah ini telah diselesaikan di dev (7.x-2.3 saat diterbitkan) sebagai bagian dari CKeditor 4.1 ACF . Anda dapat mencoba untuk memperbarui WYSIWYG Anda atau mencoba solusi di bawah ini.


Di Drupal 7 Anda dapat mencoba kait berikut:

<?php
/**
 * Implements hook_wysiwyg_editor_settings_alter().
 */
function MYMODULE_wysiwyg_editor_settings_alter(&$settings, $context) {
  if ($context['profile']->editor == 'ckeditor') {
    $settings['allowedContent'] = TRUE;
  }
}
?>

atau dengan menggunakan ide lain:

<?php
/**
 * Implements hook_wysiwyg_editor_settings_alter().
 */
function MYMODULE_wysiwyg_editor_settings_alter(&$settings, $context) {
  if ($context['profile']->editor == 'ckeditor') {
      $settings['extraAllowedContent'] = array(
        'img[src,title,alt,style,width,height,class,hspace,vspace,view_mode,format,fid]',
      );
  }
}
?>

atau dengan kode jQuery berikut:

CKEDITOR.replace( textarea_id, {
    allowedContent: true
} );

Terkait:

kenorb
sumber
0

Pergi komando dan nonaktifkan wysiwyg sama sekali.

Jika Anda tahu cara menulis HTML dan CSS dasar, yaitu Anda bukan klien, matikan plugin. Ini juga akan meningkatkan keterampilan HTML / CSS Anda

Saya menghabiskan waktu berhari-hari untuk mencari tahu cara mencegah wysiwyg memotong kelas dan tag pra / kode saya setiap kali saya memuat ulang editor. Saya menyadari bahwa semua yang saya lakukan adalah mencoba untuk menonaktifkan semua fungsi plugin wysiwyg. Jadi saya mematikannya.

Yap, ini bertentangan dengan jawaban saya di atas.

Steve
sumber