3

I have the CKeditor plugin installed by itself (i.e. not using WYSIWYG module.) Then, it uses a CKEditor library located in sites/all/libraries/ckeditor. This works fine. I'd like to add more plugins to it; namely, the footnotes plugin. (For the moment, please refrain from "just download a new library from ckeditor.com and replace it"; there were other issues/considerations involved.)

Now, I see this everywhere when I try to look for a solution

config.extraPlugins = 'footnotes';

I tried adding that to admin/config/content/ckeditor/edit// -> Advanced Options -> Custom JavaScript configuration, but it white screens the editor.

I tried adding it to the config.js in sites/all/libraries/ckeditor like below, but it had no effect.

CKEDITOR.editorConfig = function( config ) {
  config.extraPlugins = 'footnotes';
};

I can't really add it to a ckeditor.config.js file, dump that file in my theme, and choose "Yes" for "Load ckeditor.config.js from the theme path", since (for content creation/editing) it uses the admin theme which is different from the theme we're developing.

So, I'm at a loss. The only other thing I can think of is to use a hook in the module we have for the site, but I'm not sure if that's write/what hook would be called.

Is it just me, or does it seem like clear documentation on how to manage CKEditor in Drupal is severely lacking? Any help would be appreciated.

UPDATE: After some testing, it looks like the "Custom JavaScript configuration" is supposed to work, but it is possibly broken for CKEditor 4.4+ I read something (can't seem to find it now) that suggested the plugin/widget import was broken on 4.4+, so I changed to 4.3 and the extraPlugins worked. Now, I wasn't able to get footnotes working (which is what kicked this whole thing off), but some other plugins that previously failed during the same steps now work on 4.3. So, there's that. I'm wondering now if it's something with footnotes itself.

1 Answer 1

5

Here are the steps about how I am doing it:

  1. install CKEditor using the CKEditor module and NOT through using the wysiwyg module.

  2. Put plugin in sites/all/modules/ckeditor/plugins and NOT in /sites/all/modules/ckeditor/ckeditor/plugins

  3. Go to /admin/config/content/ckeditor and click edit on the profile you're using.

  4. Under Editor Apperance, from Available buttons, drag up your plugin icon to the Current tool bar.

    enter image description here

    enter image description here

  5. Scroll down a bit and you will see a Plugins section.

enter image description here

  1. Checkmark your plugin and save changes.

PS: Here is my CkEditor Global Profile settings /admin/config/content/ckeditor/edit/

enter image description here

7
  • Thanks for response, and the effort.+1, but I have two problems with this: How do you handle updating the module, since everything in sites/all/modules/ckeditor will be replaced? Second, I want/need the library to be in sites/all/libraries/ckeditor, and for those Global Profile settings to point THERE, not the modules folder. I don't think that changes anything (besides those settings, of course), but I wanted to make sure the distinction is clear. Jan 8, 2016 at 6:36
  • 1
    @SlakeFistcrunch I just upload the new ckeditor module via FTP and just use overwrite files; thus, the plugins don't get erased. I've never used the libraries way, but I imagine it's the same steps.
    – No Sssweat
    Jan 8, 2016 at 7:19
  • 2
    When using Drush, the overwrite issue occurs and then you do lose all your additional plugins (this actually happened to me recently). In this case the libraries folder is the only option, which indeed can be set in the last screenshot as provided by @NoSssweat. Mar 12, 2016 at 12:17
  • @NoSssweat I have some what similar problem. I tried library way as well. See my question
    – Umair
    Jan 14, 2017 at 10:49
  • 1
    @Umair follow my answer. Make sure you are editing the correct filter in Step 3.
    – No Sssweat
    Jan 14, 2017 at 10:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.