SlideShare una empresa de Scribd logo
1 de 24
Descargar para leer sin conexión
and the Future of WordPress Plugins


                                by Mark Jaquith

                                   markjaquith.com
                               coveredwebservices.com
                                    @markjaquith

Saturday, September 26, 2009
BP 1.1 FTW

Saturday, September 26, 2009
What is BuddyPress?
                    • a WordPress MU plugin
                    • a “social layer”
                    • extensible
                    • fond of eating its own dog
                               food
                    • under your control
Saturday, September 26, 2009
What it can do
                    • Extended         • Groups
                           Profiles
                                       • Wire
                    • Private
                           Messaging   • Activity Streams
                    • Friends          • Forums
                    • Blogs            • Status updates

Saturday, September 26, 2009
Cafeteria Style

                    • Use only what you want
                    • Could just use it for extended profiles



Saturday, September 26, 2009
Saturday, September 26, 2009
Saturday, September 26, 2009
Installation
                    • Install WPMU (2.8.4a currently)
                    • Use plugin installer to install
                               BuddyPress
                    • Set up themes

Saturday, September 26, 2009
Theme Setup
         For WPMU 2.8.x:

         Add the themes to your themes dir:

         $ cd wp-content/themes/
         $ ln -s ../plugins/buddypress/bp-themes/bp-sn-parent bp-sn-parent
         $ ln -s ../plugins/buddypress/bp-themes/bp-default bp-default

         Future versions of WPMU (2.9+) will skip this step by allowing BP to
         tell WPMU about its default themes.




Saturday, September 26, 2009
Theme Setup
         Enable your BP theme in WPMU Site
         Admin, for the main blog




         Activate the BP Members theme for the
         site's main blog

Saturday, September 26, 2009
Core Files          Theme Files




Saturday, September 26, 2009
Pretty URLs
       http://bp.site/members/mark/skills/edit/buddypress/seattle




Saturday, September 26, 2009
Pretty URLs
       http://bp.site/members/mark/skills/edit/buddypress/seattle



                               $bp['current_component']
                                           $bp['current_action']
                                                          $bp['action_variables'][0]
                                                                     $bp['action_variables'][1]




Saturday, September 26, 2009
Adding Menus
     bp_core_new_nav_item(
         array(
             'name' => __('Item Name', 'i18n-domain'),
             'slug' => 'item-slug',
             'position' => 50,
             'show_for_displayed_user' => true,
             'screen_function' => 'item_handler',
             'default_subnav_slug' => 'index',
             'item_css_id' => 'your-css-id'
         ));



Saturday, September 26, 2009
Adding Submenus
     bp_core_new_subnav_item( array(
          'name' => __( 'Child', 'i18n-domain' ),
          'slug' => 'child-slug',
          'parent_url' => $bp->loggedin_user->domain . '/item-slug',
          'parent_slug' => 'item-slug',
          'screen_function' => 'child_handler_function'
        ));




Saturday, September 26, 2009
Handlers
        function handler_function() {
            // Logic here
            bp_core_load_template( 'item-name/index' );
            // Loads item-name/index.php
        }




Saturday, September 26, 2009
Custom components


                    • Download the BP Skeleton Component
                    • Learn by doing



Saturday, September 26, 2009
BuddyPress 1.1
                    • Consolidated WP/BP themes
                    • Crazy-simple bbPress install
                    • Groups API
                    • more...

Saturday, September 26, 2009
bbPress



Saturday, September 26, 2009
Theme Architecture


                    • No more dual themes
                    • BP themes are WP child
                               themes




Saturday, September 26, 2009
WP/WPMU Merge

                    • 2010
                    • Will make BuddyPress available
                               on any WordPress install
                    • Consolidation of developer
                               resources


Saturday, September 26, 2009
BP Consulting
                    •Nascent market
                    •Rapidly expanding demand
                    •Premium prices
                    •???
                    •Profit
Saturday, September 26, 2009
Plugins Today
                    • Often single author
                    • High rate of abandonment
                    • Highly variable quality
                    • Unendorsed
                    • Multiple competing solutions
Saturday, September 26, 2009
Canonical Plugins

                    • Multi-author
                    • High quality
                    • Supported
                    • Implicit endorsement

Saturday, September 26, 2009

Más contenido relacionado

La actualidad más candente

Sustainable Drupal Theming with Fusion
Sustainable Drupal Theming with FusionSustainable Drupal Theming with Fusion
Sustainable Drupal Theming with Fusionsheenadonnelly
 
Starting up a cost free library portal for small-funded libraries
Starting up a cost free library portal for small-funded librariesStarting up a cost free library portal for small-funded libraries
Starting up a cost free library portal for small-funded librariesMaria Cecilia Ayson
 
My uploads ia
My uploads iaMy uploads ia
My uploads ianc7
 
#SitecoreJSS and #SitecoreSXA together. Is It Real? First experience!
#SitecoreJSS and #SitecoreSXA together. Is It Real? First experience!#SitecoreJSS and #SitecoreSXA together. Is It Real? First experience!
#SitecoreJSS and #SitecoreSXA together. Is It Real? First experience!Vadzim Papko
 
Child Themes and CSS in WordPress
Child Themes and CSS in WordPressChild Themes and CSS in WordPress
Child Themes and CSS in WordPressMatthew Vaccaro
 
Senior Project at USF - Mapping with Adobe Flex and Google Maps (Dec 2010)
Senior Project at USF - Mapping with Adobe Flex and Google Maps (Dec 2010)Senior Project at USF - Mapping with Adobe Flex and Google Maps (Dec 2010)
Senior Project at USF - Mapping with Adobe Flex and Google Maps (Dec 2010)Matthew King
 
Exploring WordPress Multisite
Exploring WordPress MultisiteExploring WordPress Multisite
Exploring WordPress MultisiteLisa Sabin-Wilson
 
WordPress Crash Course
WordPress Crash CourseWordPress Crash Course
WordPress Crash CourseHeather Acton
 
Understanding WordPress Multisite
Understanding WordPress MultisiteUnderstanding WordPress Multisite
Understanding WordPress MultisiteRyan Imel
 
WordPress 101 - Self-Administered Small Business Web Sites and/or Blogs; Wor...
WordPress 101 - Self-Administered Small Business Web Sites and/or Blogs;  Wor...WordPress 101 - Self-Administered Small Business Web Sites and/or Blogs;  Wor...
WordPress 101 - Self-Administered Small Business Web Sites and/or Blogs; Wor...Michael Yublosky
 

La actualidad más candente (11)

Sustainable Drupal Theming with Fusion
Sustainable Drupal Theming with FusionSustainable Drupal Theming with Fusion
Sustainable Drupal Theming with Fusion
 
Starting up a cost free library portal for small-funded libraries
Starting up a cost free library portal for small-funded librariesStarting up a cost free library portal for small-funded libraries
Starting up a cost free library portal for small-funded libraries
 
My uploads ia
My uploads iaMy uploads ia
My uploads ia
 
#SitecoreJSS and #SitecoreSXA together. Is It Real? First experience!
#SitecoreJSS and #SitecoreSXA together. Is It Real? First experience!#SitecoreJSS and #SitecoreSXA together. Is It Real? First experience!
#SitecoreJSS and #SitecoreSXA together. Is It Real? First experience!
 
Child Themes and CSS in WordPress
Child Themes and CSS in WordPressChild Themes and CSS in WordPress
Child Themes and CSS in WordPress
 
Senior Project at USF - Mapping with Adobe Flex and Google Maps (Dec 2010)
Senior Project at USF - Mapping with Adobe Flex and Google Maps (Dec 2010)Senior Project at USF - Mapping with Adobe Flex and Google Maps (Dec 2010)
Senior Project at USF - Mapping with Adobe Flex and Google Maps (Dec 2010)
 
Plana Inici
Plana IniciPlana Inici
Plana Inici
 
Exploring WordPress Multisite
Exploring WordPress MultisiteExploring WordPress Multisite
Exploring WordPress Multisite
 
WordPress Crash Course
WordPress Crash CourseWordPress Crash Course
WordPress Crash Course
 
Understanding WordPress Multisite
Understanding WordPress MultisiteUnderstanding WordPress Multisite
Understanding WordPress Multisite
 
WordPress 101 - Self-Administered Small Business Web Sites and/or Blogs; Wor...
WordPress 101 - Self-Administered Small Business Web Sites and/or Blogs;  Wor...WordPress 101 - Self-Administered Small Business Web Sites and/or Blogs;  Wor...
WordPress 101 - Self-Administered Small Business Web Sites and/or Blogs; Wor...
 

Similar a WordPress Plugins and the Future of BuddyPress

Similar a WordPress Plugins and the Future of BuddyPress (17)

What I Hate About Wordpress
What I Hate About WordpressWhat I Hate About Wordpress
What I Hate About Wordpress
 
Facebook on Rails
Facebook on RailsFacebook on Rails
Facebook on Rails
 
WordCamp UK 2009 presentation
WordCamp UK 2009 presentationWordCamp UK 2009 presentation
WordCamp UK 2009 presentation
 
JRubyConf 2009
JRubyConf 2009JRubyConf 2009
JRubyConf 2009
 
NoTube User Model slides
NoTube User Model slidesNoTube User Model slides
NoTube User Model slides
 
WordPress Recipes
WordPress RecipesWordPress Recipes
WordPress Recipes
 
Get Ready for JIRA 5 - AtlasCamp 2011
Get Ready for JIRA 5 - AtlasCamp 2011Get Ready for JIRA 5 - AtlasCamp 2011
Get Ready for JIRA 5 - AtlasCamp 2011
 
Flash Lite Optimization
Flash Lite OptimizationFlash Lite Optimization
Flash Lite Optimization
 
Yet Another Wordpress SEO
Yet Another Wordpress SEOYet Another Wordpress SEO
Yet Another Wordpress SEO
 
Using Drupal
Using DrupalUsing Drupal
Using Drupal
 
Performance Strategies
Performance StrategiesPerformance Strategies
Performance Strategies
 
Rango
RangoRango
Rango
 
SEO Basics
SEO   BasicsSEO   Basics
SEO Basics
 
100% JS
100% JS100% JS
100% JS
 
Social Engaged Tourism
Social Engaged TourismSocial Engaged Tourism
Social Engaged Tourism
 
RubyConf 2009
RubyConf 2009RubyConf 2009
RubyConf 2009
 
Minimum Marketable Features @ BarCamp Shanghai
Minimum Marketable Features @ BarCamp ShanghaiMinimum Marketable Features @ BarCamp Shanghai
Minimum Marketable Features @ BarCamp Shanghai
 

Más de Mark Jaquith

Cache Money Business
Cache Money BusinessCache Money Business
Cache Money BusinessMark Jaquith
 
Creating and Maintaining WordPress Plugins
Creating and Maintaining WordPress PluginsCreating and Maintaining WordPress Plugins
Creating and Maintaining WordPress PluginsMark Jaquith
 
Coding, Scaling, and Deploys... Oh My!
Coding, Scaling, and Deploys... Oh My!Coding, Scaling, and Deploys... Oh My!
Coding, Scaling, and Deploys... Oh My!Mark Jaquith
 
WordPress Security - WordCamp Phoenix
WordPress Security - WordCamp PhoenixWordPress Security - WordCamp Phoenix
WordPress Security - WordCamp PhoenixMark Jaquith
 
WordPress Custom Post Types
WordPress Custom Post TypesWordPress Custom Post Types
WordPress Custom Post TypesMark Jaquith
 
Writing Your First WordPress Plugin
Writing Your First WordPress PluginWriting Your First WordPress Plugin
Writing Your First WordPress PluginMark Jaquith
 
Writing Secure Plugins — WordCamp New York 2009
Writing Secure Plugins — WordCamp New York 2009Writing Secure Plugins — WordCamp New York 2009
Writing Secure Plugins — WordCamp New York 2009Mark Jaquith
 
"State of the Word" at WordCamp Mid-Atlantic, by Mark Jaquith
"State of the Word" at WordCamp Mid-Atlantic, by Mark Jaquith"State of the Word" at WordCamp Mid-Atlantic, by Mark Jaquith
"State of the Word" at WordCamp Mid-Atlantic, by Mark JaquithMark Jaquith
 
Secure Coding With Wordpress (BarCamp Orlando 2009)
Secure Coding With Wordpress (BarCamp Orlando 2009)Secure Coding With Wordpress (BarCamp Orlando 2009)
Secure Coding With Wordpress (BarCamp Orlando 2009)Mark Jaquith
 
Wordcamp Charlotte: WordPress Today and Tomorrow
Wordcamp Charlotte: WordPress Today and TomorrowWordcamp Charlotte: WordPress Today and Tomorrow
Wordcamp Charlotte: WordPress Today and TomorrowMark Jaquith
 
Secure Coding with WordPress - WordCamp SF 2008
Secure Coding with WordPress - WordCamp SF 2008Secure Coding with WordPress - WordCamp SF 2008
Secure Coding with WordPress - WordCamp SF 2008Mark Jaquith
 
Amping up your WordPress Blog
Amping up your WordPress BlogAmping up your WordPress Blog
Amping up your WordPress BlogMark Jaquith
 
Contributing To WordPress
Contributing To WordPressContributing To WordPress
Contributing To WordPressMark Jaquith
 

Más de Mark Jaquith (14)

Cache Money Business
Cache Money BusinessCache Money Business
Cache Money Business
 
Scaling WordPress
Scaling WordPressScaling WordPress
Scaling WordPress
 
Creating and Maintaining WordPress Plugins
Creating and Maintaining WordPress PluginsCreating and Maintaining WordPress Plugins
Creating and Maintaining WordPress Plugins
 
Coding, Scaling, and Deploys... Oh My!
Coding, Scaling, and Deploys... Oh My!Coding, Scaling, and Deploys... Oh My!
Coding, Scaling, and Deploys... Oh My!
 
WordPress Security - WordCamp Phoenix
WordPress Security - WordCamp PhoenixWordPress Security - WordCamp Phoenix
WordPress Security - WordCamp Phoenix
 
WordPress Custom Post Types
WordPress Custom Post TypesWordPress Custom Post Types
WordPress Custom Post Types
 
Writing Your First WordPress Plugin
Writing Your First WordPress PluginWriting Your First WordPress Plugin
Writing Your First WordPress Plugin
 
Writing Secure Plugins — WordCamp New York 2009
Writing Secure Plugins — WordCamp New York 2009Writing Secure Plugins — WordCamp New York 2009
Writing Secure Plugins — WordCamp New York 2009
 
"State of the Word" at WordCamp Mid-Atlantic, by Mark Jaquith
"State of the Word" at WordCamp Mid-Atlantic, by Mark Jaquith"State of the Word" at WordCamp Mid-Atlantic, by Mark Jaquith
"State of the Word" at WordCamp Mid-Atlantic, by Mark Jaquith
 
Secure Coding With Wordpress (BarCamp Orlando 2009)
Secure Coding With Wordpress (BarCamp Orlando 2009)Secure Coding With Wordpress (BarCamp Orlando 2009)
Secure Coding With Wordpress (BarCamp Orlando 2009)
 
Wordcamp Charlotte: WordPress Today and Tomorrow
Wordcamp Charlotte: WordPress Today and TomorrowWordcamp Charlotte: WordPress Today and Tomorrow
Wordcamp Charlotte: WordPress Today and Tomorrow
 
Secure Coding with WordPress - WordCamp SF 2008
Secure Coding with WordPress - WordCamp SF 2008Secure Coding with WordPress - WordCamp SF 2008
Secure Coding with WordPress - WordCamp SF 2008
 
Amping up your WordPress Blog
Amping up your WordPress BlogAmping up your WordPress Blog
Amping up your WordPress Blog
 
Contributing To WordPress
Contributing To WordPressContributing To WordPress
Contributing To WordPress
 

Último

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"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
 
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
 
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
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
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
 
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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
"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
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
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
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 

Último (20)

Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"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
 
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
 
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
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
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
 
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
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
"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
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
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
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 

WordPress Plugins and the Future of BuddyPress

  • 1. and the Future of WordPress Plugins by Mark Jaquith markjaquith.com coveredwebservices.com @markjaquith Saturday, September 26, 2009
  • 2. BP 1.1 FTW Saturday, September 26, 2009
  • 3. What is BuddyPress? • a WordPress MU plugin • a “social layer” • extensible • fond of eating its own dog food • under your control Saturday, September 26, 2009
  • 4. What it can do • Extended • Groups Profiles • Wire • Private Messaging • Activity Streams • Friends • Forums • Blogs • Status updates Saturday, September 26, 2009
  • 5. Cafeteria Style • Use only what you want • Could just use it for extended profiles Saturday, September 26, 2009
  • 8. Installation • Install WPMU (2.8.4a currently) • Use plugin installer to install BuddyPress • Set up themes Saturday, September 26, 2009
  • 9. Theme Setup For WPMU 2.8.x: Add the themes to your themes dir: $ cd wp-content/themes/ $ ln -s ../plugins/buddypress/bp-themes/bp-sn-parent bp-sn-parent $ ln -s ../plugins/buddypress/bp-themes/bp-default bp-default Future versions of WPMU (2.9+) will skip this step by allowing BP to tell WPMU about its default themes. Saturday, September 26, 2009
  • 10. Theme Setup Enable your BP theme in WPMU Site Admin, for the main blog Activate the BP Members theme for the site's main blog Saturday, September 26, 2009
  • 11. Core Files Theme Files Saturday, September 26, 2009
  • 12. Pretty URLs http://bp.site/members/mark/skills/edit/buddypress/seattle Saturday, September 26, 2009
  • 13. Pretty URLs http://bp.site/members/mark/skills/edit/buddypress/seattle $bp['current_component'] $bp['current_action'] $bp['action_variables'][0] $bp['action_variables'][1] Saturday, September 26, 2009
  • 14. Adding Menus bp_core_new_nav_item( array( 'name' => __('Item Name', 'i18n-domain'), 'slug' => 'item-slug', 'position' => 50, 'show_for_displayed_user' => true, 'screen_function' => 'item_handler', 'default_subnav_slug' => 'index', 'item_css_id' => 'your-css-id' )); Saturday, September 26, 2009
  • 15. Adding Submenus bp_core_new_subnav_item( array( 'name' => __( 'Child', 'i18n-domain' ), 'slug' => 'child-slug', 'parent_url' => $bp->loggedin_user->domain . '/item-slug', 'parent_slug' => 'item-slug', 'screen_function' => 'child_handler_function' )); Saturday, September 26, 2009
  • 16. Handlers function handler_function() { // Logic here bp_core_load_template( 'item-name/index' ); // Loads item-name/index.php } Saturday, September 26, 2009
  • 17. Custom components • Download the BP Skeleton Component • Learn by doing Saturday, September 26, 2009
  • 18. BuddyPress 1.1 • Consolidated WP/BP themes • Crazy-simple bbPress install • Groups API • more... Saturday, September 26, 2009
  • 20. Theme Architecture • No more dual themes • BP themes are WP child themes Saturday, September 26, 2009
  • 21. WP/WPMU Merge • 2010 • Will make BuddyPress available on any WordPress install • Consolidation of developer resources Saturday, September 26, 2009
  • 22. BP Consulting •Nascent market •Rapidly expanding demand •Premium prices •??? •Profit Saturday, September 26, 2009
  • 23. Plugins Today • Often single author • High rate of abandonment • Highly variable quality • Unendorsed • Multiple competing solutions Saturday, September 26, 2009
  • 24. Canonical Plugins • Multi-author • High quality • Supported • Implicit endorsement Saturday, September 26, 2009