As part of the project http://ndla.no we have created this module which makes it possible to insert any node into other nodes. ie) Inserting node of content type X into node 123. This is done via an easy to use interface (via WYSIWYG API) for the user where he/she searches for the node to insert (although you could go hardcore and write the tags manually).
Every content type has its own template, by default via Drupal's own templating system, this can (and should) be overridden.
Contentbrowser uses tags which means that no url's are hardcoded into the node's body.
Contentbrowser can be what you are looking for if:
- You use any kinda of media-module (video, audio etc) and want to reuse those nodes in blog posts and articles
- You have used imagebrowser / insertnode but need more control via hooks and templates
- Your users simply can't live with the thought of having images (any content really) at the top of their nodes. They must have them anywhere of their pleasing within the contents of the node body
- You don't feel like running complex regular expressions on your node content when the design changes
- You know how to code PHP*
*) Contentbrowser will work without you knowing PHP. However you will not be able to customize the templates.
TinyMCE is the only tried and tested editor which is known to work, CKEditor is known not to work (yet, patches welcome).