What are extensions?
From the Radiant blog: "Extensions are vertical slices of a Rails application, or mini-applications if you will, that are inserted into Radiant at runtime. In many ways, they tackle the same problem as Rails Engines, which allow you to drop a pre-built application into your own and use it as if it were the same app. The execution of this feat has been quite arduous, and you can read more about it on John’s blog. Suffice it to say, with a minimal amount of boilerplate, you can have your own custom models, views, controllers, and libraries running inside Radiant. That’s the power of extensions."
Read the full post here: http://radiantcms.org/blog/2007/01/23/how-to-getting-mental/#extended
How do I install an extension?
If you've checked out Radiant using subversion
The best way to install an extension is using svn:externals
cd /path/to/radiant svn propedit svn:externals vendor/extensions
your editor should start up. Then add a line for the extension you'd like to use
extension_name http://example.com/svn/extension_name/trunk
save your changes then do an update
svn update vendor/extensions
If you're using the Radiant gem
You can export the extension into your vendor/extensions directory
cd /path/to/radiant svn export http://example.com/svn/extension_name/trunk vendor/extensions/extension_name
For extensions that don't use subversion
If the extension author provides a .zip or .tar.gz file, just extract it into your vendor/extensions directory
cd /path/to/radiant cd vendor/extensions tar zxf /path/to/extension.tar.gz
Migrate your database for extensions
An extension may require that you update your database. Radiant provides a simple migration to get you up to speed:
$ rake db:migrate:extensions
Now your extensions should be ready to go! (Extension developers should remember to always update their README files or provide adequate information on the use and function of your extension elswhere).
Available Extensions
Radiant Extensions
http://dev.radiantcms.org/radiant/browser/trunk/extensions
(Note: install via Subversion from http://dev.radiantcms.org/svn/radiant/trunk/extensions)
Aggregation
Collects the children of multiple pages to be treated as one for iteration using r:children:each. Compatability: 0.6.1
Import Export
Uses Rake to export your Radiant database to a .yml file that can be later reloaded. Compatability: 0.6.1
LDAP
Edit and test LDAP queries from the admin interface, you can also use LDAP query results from a Radius tag in a page. Compatability: 0.6.1
Mailer
Sends email from Radiant pages. Compatability: 0.6.1
Reorder
Adds order attributes to the Page model and allows you to arbitrarily reorder pages. Compatability: 0.6.1
Search
Adds tags for a site search box and a tag set and Page Type for a results page. Compatability: 0.6.1
Third-Party Extensions
Blog Tags: http://seansantry.com/svn/radiant/extensions/blogtags/trunk
Provides useful tags for blogs, like getting the next and previous articles or showing the post time in words (eg, "Posted by Sean 2 days ago")
Comments: http://svn.artofmission.com/svn/plugins/radiant/extensions/comments/
Adds blog-like comment functionality to Radiant (still very alpha)
Copy Move: http://darcs.bigchieflabs.com/radiant/extensions/copy_move/rdoc/
It allows for a page to be copied (or moved) under a new parent.
CSS: http://www.sharedhostlogic.com/css.tar.gz
Allows pages to be rendered as CSS
Default Page Parts: http://darcs.bigchieflabs.com/radiant/extensions/default_page_parts/rdoc/
With this extension you can create a page of DefaultPageParts type and specify the default parts of all its children.
Dynamic: http://darcs.bigchieflabs.com/radiant/extensions/dynamic/rdoc/
With this extension you can create a page of Dynamic type that will be updated every time that one of its children will be created/saved/destroyed.
Enkoder Tags: http://seansantry.com/svn/radiant/extensions/enkodertags/trunk
Provides tags for enkoding email addresses (or arbitrary content) using Dan Benjamin's Enkoder to block spam harvesters
Event Calendar (iCal): http://svn.fn-group.com/radiant_extensions/event_calendar
Create calendars in Radiant admin which have iCal subscriptions attached to them. Retrieve events to each calendar through refreshes from the iCal subscription. Works best when used in conjunction with an iCal publishing front-end app like Google Calendars or .Mac and a cron job setup on your server to run the refresh automatically every hour or more.
Flickr Tags: http://seansantry.com/svn/radiant/extensions/flickrtags/trunk
Provides a tag for embedding a Flickr slideshow like the one in my portfolio.
Gallery: http://darcs.bigchieflabs.com/radiant/extensions/gallery/rdoc/
Language Redirect: https://svn1.hosted-projects.com/medlar/language_redirect_extension
Redirects the browser to a different page root based on the accepted locale.
Maruku Text Filter: http://tinyurl.com/yr96bz
Mediawiki Filter: http://www.bitcetera.com/en/products/mediawiki_filter
Support for (some of the) Mediawiki markup on Radiant pages.
Page Attachments: http://svn.seancribbs.com/svn/rails/plugins/extensions/page_attachments
Page Attributes: https://dev.eyebeam.org/svn/radiant-partatts/radiant/vendor/extensions/
This extension/hack of Radiant gives all your pages an "attributes" tab where you can add named strings, bools, links, and files... (and then reference them from r: tags). See http://dev.eyebeam.org/projects/radiant-partatts/wiki/radiant-partatts.
RadiantOnRails: svn://rubyforge.org/var/svn/radiantonrails/trunk
Allows for a Ruby on Rails application to integrate with the features offered by Radiant CMS.
Record Tags: http://www.boardgamerspastime.com/downloads/radiant/extensions/record_tags.zip
Adds tags for displaying database records. A natural front end for custom, back-end models.
Resizing Text Area: http://svn.somedutchguy.com/projects/show/3
RSS Reader 0.2: www.scidept.com/content/rss_reader-0.2
Smooth Gallery: http://svn.somedutchguy.com/projects/show/1 (Currently offline)
VIM: http://www.raphinou.com/radiant.vim
Allows you to edit Radiant pages from VI.
Virtual Domain: http://silverinsanity.com/~benji/radiant/virtual_domain-1.2.1.tar.gz
Makes each top-level page the root of a different website (based on the host name).
WYSIWYG Text Editor (based on TinyMCE): http://tinyurl.com/2xfegp
