SlideShare a Scribd company logo
1 of 21
Download to read offline
Panels 3:
The Power of
Chaos Magic
          Matt Cheney
       October 17th, 2009
        BADCamp 2009
in a galaxy far far away..

 Panels 2 - Tips and Tricks (BADCamp 08)
Panels is our Best Hope
•   Marshall Content

•   Drag & Drop Layout

•   Configurable in the UI

•   Views 2 + CCK Integration

•   Killer API

•   Exportable Elements

         “what do you want in your CMS?”
What Does it Do?
What Does it Do?
A Little History....
             Panels 1 (5.x)
A Little History....
Panels 2 (5.x)                      Panels 2 (6.x)




                 the long road...
A Little History....
   panels 3.0 released
         9.19.09
The Panels Paradigm
No Blocks   Every Page is a Panel
A Tour of Panels
                                 Mini Panels
          Panel Pages
                                          OG
                          Panel Nodes
          Layouts
                             Views 2
         Node Overrides
                             Field Placement

          Panel Styling
                                 Blocks
Panels and Chaos Tools
                   Chaos Tools
               a shared suite of APIs and tools
              to allow for wizardly development
                  drupal.org/project/ctools


                        Panels
                a system of layout and pane
               control to create your website

                 drupal.org/project/panels
The Panels/CTools API
    /**
     * Implementation of hook_ctools_plugin_directory() to let
     * the system know we implement task and task_handler plugins.
     */
    function module_name_ctools_plugin_directory($module, $plugin) {
      return 'plugins/' . $plugin;
    }



              module/plugins/content_types/
              module/plugins/layouts/
              module/plugins/contexts/
              module/plugins/arguments/
              module/plugins/tasks/
Extending Panels: Panes
      hook_ctools_content_types()

          A recipe for a custom panel pane...

    module_custompane_ctools_content_types()
                       +
    module_custompane_content_type_render()
                       +
   module_custompane_content_type_edit_form()
                       +
module_custompane_content_type_edit_form_submit()



  more information in the ctools_plugin_example module
Extending Panels: Layouts
   hook_panels_layouts()
  A recipe for a custom panel layout...

            layout_name.css
                    +
             layout_name.inc
                    +
          layout_name.tpl.php
                    +
            layout_name.png
Content Creation in Panels

  •   Panels “Content Types”:
      Not Just for CCK!

  •   Create Content:
      Images/Feeds/Embeds


             status:
  http://drupal.org/node/451928
Front Page Scheduling

•   Add Date Field to Panel
    Node Content Type

•   Create Custom Callback to
    Find Current Page

•   return node_view($node)!
                                                 status:
                               http://drupal.org/project/panels_scheduler
panels-pane.tpl.php
Variables available:
 * - $pane->type: the content type inside this pane
 * - $pane->subtype: the subtype, if applicable. If a view
it will be the view name; if a node it will be the nid, etc.
 * - $content->title: The title of the content
 * - $content->content: The actual content                         status:
 * - $content->links: Any associated links              http://drupal.org/node/583172
 * - $content->more: An optional 'more' link                  (now in Panels 3.1!)
 * - $content->admin_links: Administrative links
 * - $content->feeds: Any feed icons or associated with
the content

 Why This Matters?

 <div class="panel-pane panel-pane-<?php print $pane->type; ?>">
Node/% Overrides
•   Better Node View Control   •   The Power of Context

•   Customized Sidebars        •   Layout UI that Makes Sense
OG Panels

 •   OG + Panels = Great

 •   A model for how to
     have users manage
     groups


              status:
http://drupal.org/project/og_panels
Total Admin Control
•   Views 2 + Panels 3
    = Admin 5000

•   Flexible +
    Customizable

•   The Content
    Admin Solution

                    status:
    http://drupal.org/project/total_control
The Future Is Now
      released

More Related Content

Similar to Panels 3.0: The Powers Of Chaos Magic

10 steps to becoming a panels pro
10 steps to becoming a panels pro10 steps to becoming a panels pro
10 steps to becoming a panels pro
Green For All
 
Intro to Theming Drupal, FOSSLC Summer Camp 2010
Intro to Theming Drupal, FOSSLC Summer Camp 2010Intro to Theming Drupal, FOSSLC Summer Camp 2010
Intro to Theming Drupal, FOSSLC Summer Camp 2010
Emma Jane Hogbin Westby
 
Architecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling ToolArchitecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling Tool
Adriaan Venter
 
Introduction To Drupal
Introduction To DrupalIntroduction To Drupal
Introduction To Drupal
Lauren Roth
 
Drupal Panels: An Introduction
Drupal Panels: An IntroductionDrupal Panels: An Introduction
Drupal Panels: An Introduction
Chris Parsons
 

Similar to Panels 3.0: The Powers Of Chaos Magic (20)

Panels - Creating Multi Column Layouts Through The Web - Drupal Camp Vienna 2...
Panels - Creating Multi Column Layouts Through The Web - Drupal Camp Vienna 2...Panels - Creating Multi Column Layouts Through The Web - Drupal Camp Vienna 2...
Panels - Creating Multi Column Layouts Through The Web - Drupal Camp Vienna 2...
 
Drupal @ MediaCamp Athens
Drupal @ MediaCamp Athens Drupal @ MediaCamp Athens
Drupal @ MediaCamp Athens
 
10 steps to becoming a panels pro
10 steps to becoming a panels pro10 steps to becoming a panels pro
10 steps to becoming a panels pro
 
Drupal Theme Development - DrupalCon Chicago 2011
Drupal Theme Development - DrupalCon Chicago 2011Drupal Theme Development - DrupalCon Chicago 2011
Drupal Theme Development - DrupalCon Chicago 2011
 
Design to Theme @ CMSExpo
Design to Theme @ CMSExpoDesign to Theme @ CMSExpo
Design to Theme @ CMSExpo
 
Features++
Features++Features++
Features++
 
Staying Sane with Drupal NEPHP
Staying Sane with Drupal NEPHPStaying Sane with Drupal NEPHP
Staying Sane with Drupal NEPHP
 
Rapid site production with Drupal
Rapid site production with DrupalRapid site production with Drupal
Rapid site production with Drupal
 
Intro to drupal_7_architecture
Intro to drupal_7_architectureIntro to drupal_7_architecture
Intro to drupal_7_architecture
 
Intro to Theming Drupal, FOSSLC Summer Camp 2010
Intro to Theming Drupal, FOSSLC Summer Camp 2010Intro to Theming Drupal, FOSSLC Summer Camp 2010
Intro to Theming Drupal, FOSSLC Summer Camp 2010
 
D2 k word_format
D2 k word_formatD2 k word_format
D2 k word_format
 
DrupalEasy: Intro to Theme Development
DrupalEasy: Intro to Theme DevelopmentDrupalEasy: Intro to Theme Development
DrupalEasy: Intro to Theme Development
 
Architecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling ToolArchitecture Specification - Visual Modeling Tool
Architecture Specification - Visual Modeling Tool
 
ExtBase workshop
ExtBase workshop ExtBase workshop
ExtBase workshop
 
Building and Deployment of Drupal sites with Features and Context
Building and Deployment of Drupal sites with Features and ContextBuilding and Deployment of Drupal sites with Features and Context
Building and Deployment of Drupal sites with Features and Context
 
Introduction To Drupal
Introduction To DrupalIntroduction To Drupal
Introduction To Drupal
 
Magento mega menu extension
Magento mega menu extensionMagento mega menu extension
Magento mega menu extension
 
IBM Drupal Users Group Discussion on Managing and Deploying Configuration
IBM Drupal Users Group Discussion on Managing and Deploying ConfigurationIBM Drupal Users Group Discussion on Managing and Deploying Configuration
IBM Drupal Users Group Discussion on Managing and Deploying Configuration
 
Drupal Panels: An Introduction
Drupal Panels: An IntroductionDrupal Panels: An Introduction
Drupal Panels: An Introduction
 
Zend Framework 2
Zend Framework 2Zend Framework 2
Zend Framework 2
 

More from Chapter Three (6)

Drupal as a winning Web Platform
Drupal as a winning Web PlatformDrupal as a winning Web Platform
Drupal as a winning Web Platform
 
Pantheon @ Drupal Down Under
Pantheon @ Drupal Down UnderPantheon @ Drupal Down Under
Pantheon @ Drupal Down Under
 
Enterprise Drupal
Enterprise DrupalEnterprise Drupal
Enterprise Drupal
 
A Match Made In The Cloud
A Match Made In The CloudA Match Made In The Cloud
A Match Made In The Cloud
 
High Performance Drupal
High Performance DrupalHigh Performance Drupal
High Performance Drupal
 
Drupal In The Cloud
Drupal In The CloudDrupal In The Cloud
Drupal In The Cloud
 

Recently uploaded

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Recently uploaded (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
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
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 

Panels 3.0: The Powers Of Chaos Magic

  • 1. Panels 3: The Power of Chaos Magic Matt Cheney October 17th, 2009 BADCamp 2009
  • 2. in a galaxy far far away.. Panels 2 - Tips and Tricks (BADCamp 08)
  • 3. Panels is our Best Hope • Marshall Content • Drag & Drop Layout • Configurable in the UI • Views 2 + CCK Integration • Killer API • Exportable Elements “what do you want in your CMS?”
  • 6. A Little History.... Panels 1 (5.x)
  • 7. A Little History.... Panels 2 (5.x) Panels 2 (6.x) the long road...
  • 8. A Little History.... panels 3.0 released 9.19.09
  • 9. The Panels Paradigm No Blocks Every Page is a Panel
  • 10. A Tour of Panels Mini Panels Panel Pages OG Panel Nodes Layouts Views 2 Node Overrides Field Placement Panel Styling Blocks
  • 11. Panels and Chaos Tools Chaos Tools a shared suite of APIs and tools to allow for wizardly development drupal.org/project/ctools Panels a system of layout and pane control to create your website drupal.org/project/panels
  • 12. The Panels/CTools API /** * Implementation of hook_ctools_plugin_directory() to let * the system know we implement task and task_handler plugins. */ function module_name_ctools_plugin_directory($module, $plugin) { return 'plugins/' . $plugin; } module/plugins/content_types/ module/plugins/layouts/ module/plugins/contexts/ module/plugins/arguments/ module/plugins/tasks/
  • 13. Extending Panels: Panes hook_ctools_content_types() A recipe for a custom panel pane... module_custompane_ctools_content_types() + module_custompane_content_type_render() + module_custompane_content_type_edit_form() + module_custompane_content_type_edit_form_submit() more information in the ctools_plugin_example module
  • 14. Extending Panels: Layouts hook_panels_layouts() A recipe for a custom panel layout... layout_name.css + layout_name.inc + layout_name.tpl.php + layout_name.png
  • 15. Content Creation in Panels • Panels “Content Types”: Not Just for CCK! • Create Content: Images/Feeds/Embeds status: http://drupal.org/node/451928
  • 16. Front Page Scheduling • Add Date Field to Panel Node Content Type • Create Custom Callback to Find Current Page • return node_view($node)! status: http://drupal.org/project/panels_scheduler
  • 17. panels-pane.tpl.php Variables available: * - $pane->type: the content type inside this pane * - $pane->subtype: the subtype, if applicable. If a view it will be the view name; if a node it will be the nid, etc. * - $content->title: The title of the content * - $content->content: The actual content status: * - $content->links: Any associated links http://drupal.org/node/583172 * - $content->more: An optional 'more' link (now in Panels 3.1!) * - $content->admin_links: Administrative links * - $content->feeds: Any feed icons or associated with the content Why This Matters? <div class="panel-pane panel-pane-<?php print $pane->type; ?>">
  • 18. Node/% Overrides • Better Node View Control • The Power of Context • Customized Sidebars • Layout UI that Makes Sense
  • 19. OG Panels • OG + Panels = Great • A model for how to have users manage groups status: http://drupal.org/project/og_panels
  • 20. Total Admin Control • Views 2 + Panels 3 = Admin 5000 • Flexible + Customizable • The Content Admin Solution status: http://drupal.org/project/total_control
  • 21. The Future Is Now released