SlideShare ist ein Scribd-Unternehmen logo
1 von 37
Downloaden Sie, um offline zu lesen
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?

Weitere ähnliche Inhalte

Was ist angesagt?

Advanced SEO for WordPress
Advanced SEO for WordPressAdvanced SEO for WordPress
Advanced SEO for WordPressJulie Kosbab
 
Meta Data: 17 Tips to Deploy Effective Structured Mark Up
Meta Data: 17 Tips to Deploy Effective Structured Mark UpMeta Data: 17 Tips to Deploy Effective Structured Mark Up
Meta Data: 17 Tips to Deploy Effective Structured Mark UpSemantic SEO Solutions
 
Iml140 cs sbasics_week5
Iml140 cs sbasics_week5Iml140 cs sbasics_week5
Iml140 cs sbasics_week5Evan Hughes
 
Simple Tips to Secure your WordPress
Simple Tips to Secure your WordPressSimple Tips to Secure your WordPress
Simple Tips to Secure your WordPressFiroz Sabaliya
 
SEO & IA - A findability challenge
SEO & IA - A findability challengeSEO & IA - A findability challenge
SEO & IA - A findability challengeAlberto Mucignat
 
Understanding SEO For Photographers
Understanding SEO For PhotographersUnderstanding SEO For Photographers
Understanding SEO For PhotographersEvolving SEO
 
Web Scraping In Ruby Utosc 2009.Key
Web Scraping In Ruby Utosc 2009.KeyWeb Scraping In Ruby Utosc 2009.Key
Web Scraping In Ruby Utosc 2009.Keyjtzemp
 

Was ist angesagt? (7)

Advanced SEO for WordPress
Advanced SEO for WordPressAdvanced SEO for WordPress
Advanced SEO for WordPress
 
Meta Data: 17 Tips to Deploy Effective Structured Mark Up
Meta Data: 17 Tips to Deploy Effective Structured Mark UpMeta Data: 17 Tips to Deploy Effective Structured Mark Up
Meta Data: 17 Tips to Deploy Effective Structured Mark Up
 
Iml140 cs sbasics_week5
Iml140 cs sbasics_week5Iml140 cs sbasics_week5
Iml140 cs sbasics_week5
 
Simple Tips to Secure your WordPress
Simple Tips to Secure your WordPressSimple Tips to Secure your WordPress
Simple Tips to Secure your WordPress
 
SEO & IA - A findability challenge
SEO & IA - A findability challengeSEO & IA - A findability challenge
SEO & IA - A findability challenge
 
Understanding SEO For Photographers
Understanding SEO For PhotographersUnderstanding SEO For Photographers
Understanding SEO For Photographers
 
Web Scraping In Ruby Utosc 2009.Key
Web Scraping In Ruby Utosc 2009.KeyWeb Scraping In Ruby Utosc 2009.Key
Web Scraping In Ruby Utosc 2009.Key
 

Andere mochten auch

Food chain preso
Food chain presoFood chain preso
Food chain preso31sk24
 
amrit bani-guru_ravidass_ji
amrit bani-guru_ravidass_jiamrit bani-guru_ravidass_ji
amrit bani-guru_ravidass_jiRavidassia
 
SCC Design/Build Project
SCC Design/Build ProjectSCC Design/Build Project
SCC Design/Build Projectemarks45
 
Dragon Boat Festival
Dragon Boat FestivalDragon Boat Festival
Dragon Boat Festivalshenanning
 
Psicopatología de la_conciencia
Psicopatología de la_concienciaPsicopatología de la_conciencia
Psicopatología de la_concienciaelitat
 
Masaje deportivo (resumen y facilitacion al estudiante basica)
Masaje deportivo (resumen y facilitacion al estudiante basica)Masaje deportivo (resumen y facilitacion al estudiante basica)
Masaje deportivo (resumen y facilitacion al estudiante basica)Docente
 

Andere mochten auch (7)

Food chain preso
Food chain presoFood chain preso
Food chain preso
 
amrit bani-guru_ravidass_ji
amrit bani-guru_ravidass_jiamrit bani-guru_ravidass_ji
amrit bani-guru_ravidass_ji
 
SCC Design/Build Project
SCC Design/Build ProjectSCC Design/Build Project
SCC Design/Build Project
 
Dragon Boat Festival
Dragon Boat FestivalDragon Boat Festival
Dragon Boat Festival
 
Modern wireless communications_ASRao
Modern wireless communications_ASRaoModern wireless communications_ASRao
Modern wireless communications_ASRao
 
Psicopatología de la_conciencia
Psicopatología de la_concienciaPsicopatología de la_conciencia
Psicopatología de la_conciencia
 
Masaje deportivo (resumen y facilitacion al estudiante basica)
Masaje deportivo (resumen y facilitacion al estudiante basica)Masaje deportivo (resumen y facilitacion al estudiante basica)
Masaje deportivo (resumen y facilitacion al estudiante basica)
 

Ähnlich wie Getting the most out of Radiant

Frontend for developers
Frontend for developersFrontend for developers
Frontend for developersHernan Mammana
 
Advanced CSS Troubleshooting & Efficiency
Advanced CSS Troubleshooting & EfficiencyAdvanced CSS Troubleshooting & Efficiency
Advanced CSS Troubleshooting & EfficiencyDenise Jacobs
 
Advanced CSS Troubleshooting
Advanced CSS TroubleshootingAdvanced CSS Troubleshooting
Advanced CSS TroubleshootingDenise Jacobs
 
Does my DIV look big in this?
Does my DIV look big in this?Does my DIV look big in this?
Does my DIV look big in this?glen_a_smith
 
Freelancer Weapons of mass productivity
Freelancer Weapons of mass productivityFreelancer Weapons of mass productivity
Freelancer Weapons of mass productivityGregg Coppen
 
Beginner & Intermediate Guide to HTML5/CSS3 In Drupal
Beginner & Intermediate Guide to HTML5/CSS3 In DrupalBeginner & Intermediate Guide to HTML5/CSS3 In Drupal
Beginner & Intermediate Guide to HTML5/CSS3 In DrupalMediacurrent
 
HTML5, just another presentation :)
HTML5, just another presentation :)HTML5, just another presentation :)
HTML5, just another presentation :)François Massart
 
Source Ordered Templates - - Joomla!Days NL 2009 #jd09nl
Source Ordered Templates - - Joomla!Days NL 2009 #jd09nlSource Ordered Templates - - Joomla!Days NL 2009 #jd09nl
Source Ordered Templates - - Joomla!Days NL 2009 #jd09nlJoomla!Days Netherlands
 
Node.js 기반 정적 페이지 블로그 엔진, 하루프레스
Node.js 기반 정적 페이지 블로그 엔진, 하루프레스Node.js 기반 정적 페이지 블로그 엔진, 하루프레스
Node.js 기반 정적 페이지 블로그 엔진, 하루프레스Rhio Kim
 
Death of a Themer - Frontend United - 14 April 2013
Death of a Themer - Frontend United - 14 April 2013Death of a Themer - Frontend United - 14 April 2013
Death of a Themer - Frontend United - 14 April 2013Matt Fielding
 
Twitter bootstrap
Twitter bootstrapTwitter bootstrap
Twitter bootstrapdennisdc
 
2022 HTML5: The future is now
2022 HTML5: The future is now2022 HTML5: The future is now
2022 HTML5: The future is nowGonzalo Cordero
 
2015 rubyconf - 百大媒體網站從 Wordpress 到 Rails 的大小事
2015 rubyconf - 百大媒體網站從 Wordpress 到 Rails 的大小事2015 rubyconf - 百大媒體網站從 Wordpress 到 Rails 的大小事
2015 rubyconf - 百大媒體網站從 Wordpress 到 Rails 的大小事Ronald Hsu
 
Lessons learned while building Omroep.nl
Lessons learned while building Omroep.nlLessons learned while building Omroep.nl
Lessons learned while building Omroep.nltieleman
 
ViA Bootstrap 4
ViA Bootstrap 4ViA Bootstrap 4
ViA Bootstrap 4imdurgesh
 
WordPress Optimization & Security - ThinkVisibility 2012, Leeds
WordPress Optimization & Security - ThinkVisibility 2012, LeedsWordPress Optimization & Security - ThinkVisibility 2012, Leeds
WordPress Optimization & Security - ThinkVisibility 2012, LeedsBastian Grimm
 
Lessons learned while building Omroep.nl
Lessons learned while building Omroep.nlLessons learned while building Omroep.nl
Lessons learned while building Omroep.nlbartzon
 
Advanced WordPress Optimization - iGaming Supershow 2012
Advanced WordPress Optimization - iGaming Supershow 2012Advanced WordPress Optimization - iGaming Supershow 2012
Advanced WordPress Optimization - iGaming Supershow 2012Bastian Grimm
 
Rapid development with Rails
Rapid development with RailsRapid development with Rails
Rapid development with RailsYi-Ting Cheng
 
[2010]我有一个梦想
[2010]我有一个梦想[2010]我有一个梦想
[2010]我有一个梦想Twinsen Liang
 

Ähnlich wie Getting the most out of Radiant (20)

Frontend for developers
Frontend for developersFrontend for developers
Frontend for developers
 
Advanced CSS Troubleshooting & Efficiency
Advanced CSS Troubleshooting & EfficiencyAdvanced CSS Troubleshooting & Efficiency
Advanced CSS Troubleshooting & Efficiency
 
Advanced CSS Troubleshooting
Advanced CSS TroubleshootingAdvanced CSS Troubleshooting
Advanced CSS Troubleshooting
 
Does my DIV look big in this?
Does my DIV look big in this?Does my DIV look big in this?
Does my DIV look big in this?
 
Freelancer Weapons of mass productivity
Freelancer Weapons of mass productivityFreelancer Weapons of mass productivity
Freelancer Weapons of mass productivity
 
Beginner & Intermediate Guide to HTML5/CSS3 In Drupal
Beginner & Intermediate Guide to HTML5/CSS3 In DrupalBeginner & Intermediate Guide to HTML5/CSS3 In Drupal
Beginner & Intermediate Guide to HTML5/CSS3 In Drupal
 
HTML5, just another presentation :)
HTML5, just another presentation :)HTML5, just another presentation :)
HTML5, just another presentation :)
 
Source Ordered Templates - - Joomla!Days NL 2009 #jd09nl
Source Ordered Templates - - Joomla!Days NL 2009 #jd09nlSource Ordered Templates - - Joomla!Days NL 2009 #jd09nl
Source Ordered Templates - - Joomla!Days NL 2009 #jd09nl
 
Node.js 기반 정적 페이지 블로그 엔진, 하루프레스
Node.js 기반 정적 페이지 블로그 엔진, 하루프레스Node.js 기반 정적 페이지 블로그 엔진, 하루프레스
Node.js 기반 정적 페이지 블로그 엔진, 하루프레스
 
Death of a Themer - Frontend United - 14 April 2013
Death of a Themer - Frontend United - 14 April 2013Death of a Themer - Frontend United - 14 April 2013
Death of a Themer - Frontend United - 14 April 2013
 
Twitter bootstrap
Twitter bootstrapTwitter bootstrap
Twitter bootstrap
 
2022 HTML5: The future is now
2022 HTML5: The future is now2022 HTML5: The future is now
2022 HTML5: The future is now
 
2015 rubyconf - 百大媒體網站從 Wordpress 到 Rails 的大小事
2015 rubyconf - 百大媒體網站從 Wordpress 到 Rails 的大小事2015 rubyconf - 百大媒體網站從 Wordpress 到 Rails 的大小事
2015 rubyconf - 百大媒體網站從 Wordpress 到 Rails 的大小事
 
Lessons learned while building Omroep.nl
Lessons learned while building Omroep.nlLessons learned while building Omroep.nl
Lessons learned while building Omroep.nl
 
ViA Bootstrap 4
ViA Bootstrap 4ViA Bootstrap 4
ViA Bootstrap 4
 
WordPress Optimization & Security - ThinkVisibility 2012, Leeds
WordPress Optimization & Security - ThinkVisibility 2012, LeedsWordPress Optimization & Security - ThinkVisibility 2012, Leeds
WordPress Optimization & Security - ThinkVisibility 2012, Leeds
 
Lessons learned while building Omroep.nl
Lessons learned while building Omroep.nlLessons learned while building Omroep.nl
Lessons learned while building Omroep.nl
 
Advanced WordPress Optimization - iGaming Supershow 2012
Advanced WordPress Optimization - iGaming Supershow 2012Advanced WordPress Optimization - iGaming Supershow 2012
Advanced WordPress Optimization - iGaming Supershow 2012
 
Rapid development with Rails
Rapid development with RailsRapid development with Rails
Rapid development with Rails
 
[2010]我有一个梦想
[2010]我有一个梦想[2010]我有一个梦想
[2010]我有一个梦想
 

Kürzlich hochgeladen

Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 

Kürzlich hochgeladen (20)

Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 

Getting the most out of Radiant

  • 1. Getting the most out of Radiant ‘cause I had to come up with a title there and then
  • 2. Hi! • 26/m/Ghent • Co-owner of Gorilla webdesign • github.com/jomz • twitter.com/jomz • hardcoreforkingaction.com
  • 3. Agenda • Radiant? • 5 free tips we had to learn by experience • Where Radiant is going
  • 4. “Radiant is a no-fluff, open source content management system designed for small teams”
  • 7. Snippets can hold re-used markup
  • 8. Layouts and Radius put everything together
  • 9. Bring your own meat • navigation_tags • future_publishing • nested_layouts • wym_editor • mailer • index_page • paperclipped • trike_tags • locked_page_parts • ...
  • 10. Bring your own meat • navigation_tags • future_publishing • nested_layouts • wym_editor • mailer • index_page • paperclipped • trike_tags • locked_page_parts • ...
  • 11. Bring your own meat • navigation_tags • future_publishing • nested_layouts • wym_editor • mailer • index_page • paperclipped • trike_tags • locked_page_parts • ...
  • 12. Bring your own meat • navigation_tags • future_publishing • nested_layouts • wym_editor • mailer • index_page • paperclipped • trike_tags • locked_page_parts • ...
  • 13. Bring your own meat • navigation_tags • future_publishing • nested_layouts • wym_editor • mailer • index_page • paperclipped • trike_tags • locked_page_parts • ...
  • 14. Bring your own meat • navigation_tags • future_publishing • nested_layouts • wym_editor • mailer • index_page • paperclipped • trike_tags • locked_page_parts • ...
  • 15. Free tip #1: Use nested layouts and part inheriting
  • 16. inside your ‘master’ layout: <div id="content" class="clearfix"> <r:content_for_layout/> </div>
  • 17. “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>
  • 18. <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>
  • 19. <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>
  • 20. Free tip #2: Keep radius tags away from your (dumb) clients
  • 21. Free tip #3: Use fragment caching for larger sites
  • 22.
  • 23. Free tip #4: Keep your radius tidy
  • 24. <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>
  • 25. <r:parent><r:url /></r:parent> could be written as <r:parent:url />
  • 26. <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>
  • 27. <r:parent> <r:assets:each limit="1"> <r:link /> </r:assets:each> </r:parent> could be written as <r:parent:assets:first:link />
  • 28. Free tip #5: Snippets can “yield”
  • 29. 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>
  • 30. A real life example
  • 31. 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
  • 32. What’s happening in Radiant world?
  • 33. Radiant extensions can now be gems! • Gems have a nice dependency system • One ‘gem up to date bring several Radiant instances update’ can
  • 34. Radiant 0.9 coming up! • Brand new interface with reworked tabs • Internationalisation (for the backend) • On Rails 2.3.5, working on Rails 3
  • 35. 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)
  • 36. 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