SlideShare una empresa de Scribd logo
1 de 37
Descargar para leer sin conexión
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?

Más contenido relacionado

La actualidad más candente

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
 

La actualidad más candente (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
 

Destacado

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
 

Destacado (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)
 

Similar a 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
 

Similar a 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]我有一个梦想
 

Último

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????blackmambaettijean
 

Último (20)

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
What is Artificial Intelligence?????????
What is Artificial Intelligence?????????What is Artificial Intelligence?????????
What is Artificial Intelligence?????????
 

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