• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Getting the most out of Radiant
 

Getting the most out of Radiant

on

  • 1,517 views

 

Statistics

Views

Total Views
1,517
Views on SlideShare
1,016
Embed Views
501

Actions

Likes
0
Downloads
1
Comments
0

6 Embeds 501

http://hardcoreforkingaction.com 466
http://jomz.gorilla-webdesign.be 18
http://www.hardcoreforkingaction.com 9
http://www.slideshare.net 5
http://feeds.feedburner.com 2
http://webcache.googleusercontent.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Getting the most out of Radiant Getting the most out of Radiant Presentation Transcript

    • Getting the most out of Radiant ‘cause I had to come up with a title there and then
    • Hi! • 26/m/Ghent • Co-owner of Gorilla webdesign • github.com/jomz • twitter.com/jomz • hardcoreforkingaction.com
    • Agenda • Radiant? • 5 free tips we had to learn by experience • Where Radiant is going
    • “Radiant is a no-fluff, open source content management system designed for small teams”
    • Simple admin interface
    • Pages have page parts
    • Snippets can hold re-used markup
    • Layouts and Radius put everything together
    • Bring your own meat • navigation_tags • future_publishing • nested_layouts • wym_editor • mailer • index_page • paperclipped • trike_tags • locked_page_parts • ...
    • Bring your own meat • navigation_tags • future_publishing • nested_layouts • wym_editor • mailer • index_page • paperclipped • trike_tags • locked_page_parts • ...
    • Bring your own meat • navigation_tags • future_publishing • nested_layouts • wym_editor • mailer • index_page • paperclipped • trike_tags • locked_page_parts • ...
    • Bring your own meat • navigation_tags • future_publishing • nested_layouts • wym_editor • mailer • index_page • paperclipped • trike_tags • locked_page_parts • ...
    • Bring your own meat • navigation_tags • future_publishing • nested_layouts • wym_editor • mailer • index_page • paperclipped • trike_tags • locked_page_parts • ...
    • Bring your own meat • navigation_tags • future_publishing • nested_layouts • wym_editor • mailer • index_page • paperclipped • trike_tags • locked_page_parts • ...
    • Free tip #1: Use nested layouts and part inheriting
    • inside your ‘master’ layout: <div id="content" class="clearfix"> <r:content_for_layout/> </div>
    • “1-col” layout: <r:inside_layout name="master"> <div id="content_main"> <r:content /> </div> </r:inside_layout> “2-col” layout: <r:inside_layout name="master"> <div id="content_main"> <r:content part="body" /> </div> <div id="content_sec"> <r:content part="nav_sec" /> <r:content part="content_sec" /> </div> </r:inside_layout>
    • <div id="content"> <r:if_content part="breadcrumb" inherit="true"> <div id="breadcrumb"> <r:content part="breadcrumb" inherit="true" /> </div> </r:if_content> <div id="content_main"> <r:content part="pre-body" inherit="true" /> <r:unless_content part="read-more"> <r:content /> </r:unless_content> <r:content part="read-more" /> <r:content part="post-body" inherit="true" /> </div> <r:if_content part="nav-sec, content-sec" inherit="true" find="any"> <div id="content_sec"> <r:content part="nav-sec" inherit="true" /> <r:content part="content-sec" inherit="true" /> </div> </r:if_content> </div>
    • <div id="content"> <r:if_content part="breadcrumb" inherit="true"> <div id="breadcrumb"> <r:content part="breadcrumb" inherit="true" /> </div> </r:if_content> <div id="content_main"> <r:content part="pre-body" inherit="true" /> <r:unless_content part="read-more"> <r:content /> </r:unless_content> <r:content part="read-more" /> <r:content part="post-body" inherit="true" /> </div> <r:if_content part="nav-sec, content-sec" inherit="true" find="any"> <div id="content_sec"> <r:content part="nav-sec" inherit="true" /> <r:content part="content-sec" inherit="true" /> </div> </r:if_content> </div>
    • Free tip #2: Keep radius tags away from your (dumb) clients
    • Free tip #3: Use fragment caching for larger sites
    • Free tip #4: Keep your radius tidy
    • <a href="<r:url />"><r:title /></a> and <a href="<r:url />" class="foo">To another page</a> could be written as <r:link /> and <r:link class="foo">To another page</r:link>
    • <r:parent><r:url /></r:parent> could be written as <r:parent:url />
    • <ul><r:children:each><r:unless_url matches="foo"> ... </r:unless_url></r:children:each></ul> could be written as <ul><r:children:each:unless_url matches="foo"> ... </r:children:each:unless_url></ul>
    • <r:parent> <r:assets:each limit="1"> <r:link /> </r:assets:each> </r:parent> could be written as <r:parent:assets:first:link />
    • Free tip #5: Snippets can “yield”
    • make_popup snippet: <div class="popup_box"> <a class="close_popup_link">x</a> <r:yield/> </div> call with a double tag: <r:snippet name="make_popup"> Content for my snippet </r:snippet>
    • A real life example
    • If you do need to write an extension • Use shared_layouts extension railsyou don’t have to use (and maintain) a so layout • Freeze radiant (so that you can see)what you are doing • Let your backend controllerfor free from Admin::ResourceController inherit CRUD actions and flash messages • Upload to github to receive free updates
    • What’s happening in Radiant world?
    • Radiant extensions can now be gems! • Gems have a nice dependency system • One ‘gem up to date bring several Radiant instances update’ can
    • Radiant 0.9 coming up! • Brand new interface with reworked tabs • Internationalisation (for the backend) • On Rails 2.3.5, working on Rails 3
    • Radiant extensions may soon be engines! • Spree (e-commerce platform) hasofan extension system based on that Radiant • Radiant andeffort tocommunities are looking into a joint Spree bring extensions to the next level (engines or something like it)
    • some Github profiles to keep an eye on • github.com/radiant • github.com/saturnflyer • github.com/kbingman • github.com/spanner • github.com/jgarber • github.com/johnmuhl
    • Questions?