Registering a custom plugin in the rich text editor

Permalink
According to
https://documentation.concrete5.org/developers/packages/overview...
"In general, when building a package, you'll start by building your item of functionality (block type, theme, etc…) in your application/ folder, and installing it manually through the Concrete5 dashboard. When it's done and ready to go, you move it into a package folder"

That is really what I want to do, register a custom plugin in the ckeditor, get it working the way I want, and eventually move it into a package, but I can't seem to figure out "where" my code should go. I know somewhere in the application/ folder, but where? Based on
https://documentation.concrete5.org/developers/interface-customizati... it implies it needs to be done through a package. How do I prototype something like this without creating a package?

derekairdrie
 
mnakalay replied on at Permalink Reply
mnakalay
Hello.

I can offer 2 solutions.

The first one is to buy my package that allows you to add any plugin to CKeditor:https://www.concrete5.org/marketplace/addons/ckeditor-pluginator/...

That won't help you to get your plugin in a package though.

The second one, if you prefer doing it yourself manually, is to follow the explanation I provided here:https://www.concrete5.org/community/forums/themes/how-to-add-a-plugi...

I hope this helps.
derekairdrie replied on at Permalink Reply
derekairdrie
Thanks! To clarify, is there a way to do this (or similar tasks) without creating a package?
mnakalay replied on at Permalink Best Answer Reply
mnakalay
Yes. Instead of putting code in the package's controller's on_start method, you can put it in an on_start event in the file application/bootstrap/app.php

There's even an example in the file itself showing how to register events.

As for the CKeditor plugin itself, put it anywhere you want and make sure to put the proper path in its plugin.js file and modify the code everywhere the path is used