WYSIWYG CKEditor config.js tidak digunakan?

10

Saya telah menginstal dan mengkonfigurasi modul WYSIWYG (dev terbaru) untuk menggunakan CKEditor, dan saya telah mengunduh versi terbaru CKEditor (rilis lengkap terbaru) ke sites/all/libraries. Saya dapat menggunakan editor.

Saya perlu menyesuaikan beberapa hal tambahan, jadi saya menerapkan perubahan konfigurasi ke config.js di sites/all/libraries/ckeditor/config.js. Namun, sepertinya file ini bahkan tidak digunakan atau dibaca sama sekali. Saya menguji hipotesis ini dengan menyesuaikan stok config.jssebagai berikut:

CKEDITOR.editorConfig = function( config ) {
    // Define changes to default configuration here. For example:
    config.allowedContent = true;
    alert('Hello!');
};

alert('World!');

Setiap kali saya memuat editor, saya harapkan untuk mendapatkan satu atau dua tanda, satu mengatakan baik Hello!atau World!atau keduanya. Namun, tidak ada jendela peringatan yang diluncurkan.

Bagaimana cara menyesuaikan konfigurasi CKEditor saat menggunakan modul WYSIWYG?

Lester Peabody
sumber

Jawaban:

13

Ini membutuhkan beberapa penelitian, tetapi saya menemukan artikel ini yang menjelaskan cara melakukannya.

Daging artikel adalah pengait berikut, yang mendefinisikan file konfigurasi khusus:

<?php
/**
 * Implements hook_wysiwyg_editor_settings_alter()
 */
function MODULENAME_wysiwyg_editor_settings_alter(&$settings, $context)
{
    // The $context variable contains information about the wysiwyg profile we're using
    // In this case we just need to check that the editor being used is ckeditor
    if ($context['profile']->editor == 'ckeditor')
    {

        // The $settings variable contains all the config options ckeditor uses. 
        // The array keys correspond directly with any setting that can be applied 
        // to CKEditor - as outlined in the CKEditor docs: 
        // http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.config.html 
        // Another way to override configuration is to use your own configuration javascript
        // file. In this case, we're going to add our own configuration file that will
        // Hold our stylesSet customizations... 
        $settings['customConfig'] = base_path() . drupal_get_path('module', 'MODULENAME') . '/ckeditor_custom_config.js';
    }
}
Scott Joudry
sumber
Ini bekerja dengan baik untuk saya. Masalahnya adalah Anda memerlukan modul khusus tambahan untuk benar-benar mengkonfigurasi CKEditor. Setelah Anda melakukan ini, itu berfungsi dengan baik dan Anda memiliki kontrol penuh atas CKEditor.
Eric Steinborn
Ini berfungsi sebagian untuk saya. Tidak semua pengaturan di ckeditor_custom_config.js merasa terhormat, tetapi ada juga yang. Lainnya berfungsi jika Anda memasukkannya langsung ke $settingsvariabel fungsi modul . Membingungkan
commonpike
-1

Saya memiliki masalah yang sama, dan ternyata CKEditor melakukan caching file config.js. Bahkan tanpa menekan control-F5 akan menyelesaikan itu: Saya harus menghapus cache secara manual dari pengaturan browser.

Semoga ini bisa membantu seseorang =)

Toby Webb
sumber
Seharusnya tidak di-cache jika Anda menonaktifkan agregasi file JS di /admin/config/development/performancedan membersihkan cache Anda di sana juga. Semoga ini membantu menghentikan seseorang membuat 100 file berbeda untuk 100 commit berbeda.
Eric Steinborn
-3

Yang perlu Anda lakukan adalah mengedit /sites/all/modules/ckeditor/ckeditor.config.jsalih-alih ckeditor/config.jsfile.

Vojtech Vitek
sumber
3
Anda seharusnya tidak meretas modul contrib. Terutama tanpa informasi seputar memberikan tambalan (jika ini adalah perbaikan bug, yang ini bukan.) Drupal.org/node/1054616
Christian
1
Versi WYSIWYG tidak tinggal di sana.
circusdei