When I go to /civicrm/admin/ckeditor at the end of the page I see "Adavanced options" which simply links me to the Api documenation of CKEditor - but how can I define these advanced option in CiviCRM?

2 Answers 2


Right below that link is a set of dropdowns to select the advanced options.

enter image description here

  • hmmm... I don't see these options. I have an error in my browser console Failed to load resource: the server responded with a status of 404 () -> /libraries/civicrm/core/ext/ckeditor4/js/ck-options.json". I installed CiviCRM on Drupal 9 with composer using civicrm/civicrm-asset-plugin to move javascipt into a web accessible folder which usually works well. May the problem be related to that configuration? May 2, 2022 at 13:57
  • I see this file in remaining in vendor/civicrm/civicrm-core/ext/ckeditor4/js/ck-options.json but it needs to be place in httpdocs/libraries... - why is this file not moved during composer install??? May 2, 2022 at 14:03
  • 1
    See lab.civicrm.org/dev/civicrm-asset-plugin/-/blob/master/…. The idea is it doesn't copy everything because that would be insecure, but json does seem safe here. You could put in a PR against that extension to update the list. See also you can do a local customization in your drupal root composer.json: lab.civicrm.org/dev/civicrm-asset-plugin/-/tree/master#options
    – Demerit
    May 2, 2022 at 16:54
  • thank you so much! May 3, 2022 at 7:19

Thanks to Demerit.

The solution for now is to add the file to the composer.json:

"civicrm-asset": {
    "path": "httpdocs/libraries/civicrm",
    "url": "/libraries/civicrm",
    "assets:core": {
        "include": ["js/**", "css/**", "ang/**", "templates/**.png", "templates/**.jpg", "ext/ckeditor4/js/ck-options.json"],
        "exclude-dir": [".git", "/CRM"]

After that run composer civicrm:publish and the options appear under /civicrm/admin/ckeditor.

I created an issue for the plugin: https://lab.civicrm.org/dev/civicrm-asset-plugin/-/issues/20

Your Answer

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

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