<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Premium BuddyPress Themes and Support - BuddyDress &#187; wordpress</title>
	<atom:link href="http://buddydress.com/tag/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>http://buddydress.com</link>
	<description>Premium BuddyPress Themes</description>
	<lastBuildDate>Fri, 25 Feb 2011 15:00:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>Upgrade party time &#8211; get yer WordPress 3.1 and BuddyPress 1.2.8 on : Friday Find</title>
		<link>http://buddydress.com/2011/02/upgrade-party-time-get-yer-wordpress-3-1-and-buddypress-1-2-8-on-friday-find/</link>
		<comments>http://buddydress.com/2011/02/upgrade-party-time-get-yer-wordpress-3-1-and-buddypress-1-2-8-on-friday-find/#comments</comments>
		<pubDate>Fri, 25 Feb 2011 15:00:20 +0000</pubDate>
		<dc:creator>tammie</dc:creator>
				<category><![CDATA[Friday Find]]></category>
		<category><![CDATA[buddypress]]></category>
		<category><![CDATA[BuddyPress 1.2.8]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress 3.1]]></category>

		<guid isPermaLink="false">http://buddydress.com/?p=1711</guid>
		<description><![CDATA[The biggest news of the week without a doubt is the release of WordPress 3.1. Coupled with that BuddyPress saw an update to 1.2.8. We&#8217;d strongly recommend you upgrade your installations right now to both of those. Want to celebrate in style? WPMU.org had a colourful infographic to go with the release of 3.1. Fancy [...]]]></description>
			<content:encoded><![CDATA[<p>The biggest news of the week without a doubt is the release of <a href="http://wordpress.org/news/2011/02/threeone/">WordPress 3.1</a>.  Coupled with that BuddyPress saw an update to <a href="http://bpdevel.wordpress.com/">1.2.8</a>.  We&#8217;d strongly recommend you upgrade your installations right now to both of those.</p>
<p>Want to celebrate in style?  WPMU.org had a colourful infographic to go with the <a href="http://wpmu.org/celebrate-whats-new-in-wordpress-3-1-with-our-fabulous-downloadable-infographic/">release of 3.1</a>.</p>
<p>Fancy discovering more about the music behind WordPress?  3.1 is code named Reinhardt after Django Reinhardt and WPMU.org provides the music with <a href="http://wpmu.org/daily-tip-jam-out-with-wordpress-3-1s-namesake-django-reinhardt/">Daily Tip: Jam Out with WordPress 3.1&#8242;s Namesake, Django Reinhardt</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://buddydress.com/2011/02/upgrade-party-time-get-yer-wordpress-3-1-and-buddypress-1-2-8-on-friday-find/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Coding time grab a coffee : Friday Find</title>
		<link>http://buddydress.com/2011/02/coding-time-grab-a-coffee-friday-find/</link>
		<comments>http://buddydress.com/2011/02/coding-time-grab-a-coffee-friday-find/#comments</comments>
		<pubDate>Fri, 04 Feb 2011 15:50:04 +0000</pubDate>
		<dc:creator>tammie</dc:creator>
				<category><![CDATA[Friday Find]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://buddydress.com/?p=1703</guid>
		<description><![CDATA[This week&#8217;s Friday Find takes a more technical vein with some coding and development orientated links. Creating a custom functions plugin for end users by Justin Tadlock is an interesting method of adding custom code to a theme or even themes. Linking to all image sizes in WordPress also from Justin Tadlock shows how you [...]]]></description>
			<content:encoded><![CDATA[<p>This week&#8217;s Friday Find takes a more technical vein with some coding and development orientated links.</p>
<p><a href="http://justintadlock.com/archives/2011/02/02/creating-a-custom-functions-plugin-for-end-users">Creating a custom functions plugin for end users</a> by Justin Tadlock is an interesting method of adding custom code to a theme or even themes.</p>
<p><a href="http://justintadlock.com/archives/2011/01/28/linking-to-all-image-sizes-in-wordpress">Linking to all image sizes in WordPress</a> also from Justin Tadlock shows how you can do similar to sites like Flickr and show links for all image sizes.  A useful trick for image based sites.</p>
<p><a href="http://www.catswhocode.com/blog/killer-hacks-to-enhance-wordpress-editor">Killer hacks to enhance WordPress editor</a> does what it says on the tin by Cats who Code.</p>
<p><a href="http://www.456bereastreet.com/archive/201102/improving_wordpress_privacy/">Improving WordPress Privacy</a> is a different look at what you can do to keep that site you are working on under wraps by Roget Johansson at 456 Berea Street.</p>
]]></content:encoded>
			<wfw:commentRss>http://buddydress.com/2011/02/coding-time-grab-a-coffee-friday-find/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 2010: A Year in Review by Sarah Gooding</title>
		<link>http://buddydress.com/2010/12/wordpress-2010-a-year-in-review-by-sarah-gooding/</link>
		<comments>http://buddydress.com/2010/12/wordpress-2010-a-year-in-review-by-sarah-gooding/#comments</comments>
		<pubDate>Fri, 24 Dec 2010 17:00:02 +0000</pubDate>
		<dc:creator>tammie</dc:creator>
				<category><![CDATA[12 days of WordPress and BuddyPress]]></category>
		<category><![CDATA[2010 review]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://buddydress.com/?p=1685</guid>
		<description><![CDATA[Today&#8217;s 12 days of WordPress nad BuddyPress wraps up the event with WordPress 2010: A Year in Review by Sarah Gooding. We&#8217;d like to take this time to say thank you to everyone involved in the 12 days event and those wish them a Merry Christmas. We&#8217;d also like to wish our readers and users [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://buddydress.com/category/12-days-of-wordpress-and-buddypress/"><img class="alignnone size-full wp-image-1488" title="bd12days" src="http://buddydress.com/wp-content/uploads//2010/12/bd12days.jpg" alt="" width="610" height="150" /></a><br />
Today&#8217;s 12 days of WordPress nad BuddyPress wraps up the event with <a href="http://wpmu.org/wordpress-2010-a-year-in-review/">WordPress 2010: A Year in Review</a> by Sarah Gooding.</p>
<p>We&#8217;d like to take this time to say thank you to everyone involved in the 12 days event and those wish them a Merry Christmas.  We&#8217;d also like to wish our readers and users a Merry Christmas and a Happy New Year.</p>
<p>We will have more blog posts in 2011 when we&#8217;re back after a holiday break.</p>
]]></content:encoded>
			<wfw:commentRss>http://buddydress.com/2010/12/wordpress-2010-a-year-in-review-by-sarah-gooding/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Supporting WordPress: Common Tales from the Trenches a post by James Goodbrad</title>
		<link>http://buddydress.com/2010/12/supporting-wordpress-common-tales-from-the-trenches-a-post-by-james-goodbrad/</link>
		<comments>http://buddydress.com/2010/12/supporting-wordpress-common-tales-from-the-trenches-a-post-by-james-goodbrad/#comments</comments>
		<pubDate>Wed, 22 Dec 2010 17:00:46 +0000</pubDate>
		<dc:creator>tammie</dc:creator>
				<category><![CDATA[12 days of WordPress and BuddyPress]]></category>
		<category><![CDATA[help]]></category>
		<category><![CDATA[support]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://buddydress.com/?p=1664</guid>
		<description><![CDATA[Today&#8217;s 12 days of WordPress and BuddyPress comes from James Goodbrad. Supporting WordPress: Common Tales from the Trenches brings a different take on things from the view of someone that daily supports WordPress. We&#8217;ve got 2 days left of our 12 days of WordPress and BuddyPress we&#8217;re running with wpmu.org so be sure to check [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignnone size-full wp-image-1488" title="bd12days" src="http://buddydress.com/wp-content/uploads//2010/12/bd12days.jpg" alt="" width="610" height="150" /></p>
<p>Today&#8217;s 12 days of WordPress and BuddyPress comes from James Goodbrad.  <a href="http://wpmu.org/supporting-wordpress-common-tales-from-the-trenches-by-james-goodbrad/">Supporting WordPress: Common Tales from the Trenches</a> brings a different take on things from the view of someone that daily supports WordPress.</p>
<p>We&#8217;ve got 2 days left of our 12 days of WordPress and BuddyPress we&#8217;re running with wpmu.org so be sure to check back for more.</p>
]]></content:encoded>
			<wfw:commentRss>http://buddydress.com/2010/12/supporting-wordpress-common-tales-from-the-trenches-a-post-by-james-goodbrad/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Writing code for BuddyPress: It&#8217;s all about community by Stas Sușcov</title>
		<link>http://buddydress.com/2010/12/writing-code-for-buddypress-its-all-about-community/</link>
		<comments>http://buddydress.com/2010/12/writing-code-for-buddypress-its-all-about-community/#comments</comments>
		<pubDate>Tue, 21 Dec 2010 15:00:57 +0000</pubDate>
		<dc:creator>tammie</dc:creator>
				<category><![CDATA[12 days of WordPress and BuddyPress]]></category>
		<category><![CDATA[buddypress]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[contributing]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://buddydress.com/?p=1641</guid>
		<description><![CDATA[Today&#8217;s 12 Days of WordPress and BuddyPress is brought to us by Stas Sușcov and let&#8217;s meet him in his words: I&#8217;m the WordPress Romanian Localization Team driver, Ubuntu Website Team WordPress hacker/maintainer and WordCamp Bucharest speaker. I was also a Google Summer of Code 2010 student for BuddyPress, which resulted in BuddyPress Courseware component. [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://buddydress.com/category/12-days-of-wordpress-and-buddypress/"><img class="alignnone size-full wp-image-1488" title="bd12days" src="http://buddydress.com/wp-content/uploads//2010/12/bd12days.jpg" alt="" width="610" height="150" /></a></p>
<p>Today&#8217;s 12 Days of WordPress and BuddyPress is brought to us by Stas Sușcov and let&#8217;s meet him in his words:<br />
<img class="size-full wp-image-1642 alignleft" title="60e000910231594618c26924e038a251" src="http://buddydress.com/wp-content/uploads//2010/12/60e000910231594618c26924e038a251.jpg" alt="" width="101" height="101" /></p>
<blockquote><p>I&#8217;m the WordPress <a href="http://ro.wordpress.org/">Romanian Localization Team driver</a>, Ubuntu Website<a href="https://launchpad.net/ubuntu-website"> Team WordPress hacker</a>/maintainer and WordCamp Bucharest speaker. I was also a Google Summer of Code 2010 student for BuddyPress, which resulted in <a href="http://scholarpress.github.com/buddypress-courseware/">BuddyPress Courseware component</a>. <a href="http://stas.nerd.ro/">My blog</a>.</p></blockquote>
<p>I remember last summer, when I just start playing with BuddyPress, and how much fun it was. Challenges were overwhelming, even so, now I would hardly do it other way. So this is a post about how to get started writing code for BuddyPress (be that core patches or plugins). and how to not get stuck at early stages.</p>
<p>From my experience, the community is everything, but that&#8217;s not enough when you decide to contribute to a project. There are interesting aspects that can scare a newcomer, like:</p>
<ul>
<li><a href="#p1">Conceptual aspects and application design</a></li>
<li><a href="#p2">Quality of documentation</a></li>
<li><a href="#p3">Codebase quality and used technologies</a></li>
<li><a href="#p4">Availability of examples (existing contribution)</a></li>
</ul>
<p>Let&#8217;s take it one by one.</p>
<h4 id="p1">BuddyPress is still WordPress.</h4>
<p>I met a couple of WordPress contributors, that got scared about BuddyPress, thinking of it as something totally new and different. Ok, this is wrong, at least at first view.</p>
<p>BuddyPress was never a pilot project for WordPress, it started as a bunch of hacks (plugins), and evolved into what it is now thanks to it&#8217;s community and contributions. The guys that contributed and do it now, were WordPress developers initially!</p>
<p>The main differences between WordPress are the hook names, and some API extensions (here to mention the URL mapping, groups and profiles addons like xprofile). All of it, along with WordPress functionalities(post types and options API) should be enough for you to write applications of any complexity level. So If you think you need to alter the database for you plugin, rethink the adopted design/concept for it, because it&#8217;s wrong (I&#8217;m almost 110% sure).</p>
<p>From my experience (and I was one of the early adopters of this workflow when writing BuddyPress apps), I found post types along with it&#8217;s metas data structure, as almost perfect for the most common tasks you will need for a plugin! To convince you, here are some of the reasons you should consider, that come bulk with such a strategy: caching, database optimization from the very beginning, no need to alter database if your plugin grows. So be smart, and plan your plugin carefully.</p>
<p>In the end, writing a BuddyPress plugin, will just make you a more hacker than you already are :)</p>
<h4 id="p2">Whatever you decide to write for WordPress/BuddyPress, document it!</h4>
<p>Be that <a href="http://codex.wordpress.org/Inline_Documentation#PHPdoc_Tags">PHPDoc inline documentation</a> or old school <a href="http://codex.wordpress.org/Writing_a_Plugin#Readme_File">readme.txt</a>, write it down. Writing plugins for BuddyPress is pretty the same as writing them for WordPress. Having a documentation around will help you maintain your codebase along the whole plugin life-cycle which can last years!</p>
<p>Newcomers should know that BuddyPress is still a wild beast, and though guys put efforts into creating both: a solid community and a WordPress level codebase, some parts of code may just miss documentation! Once such a problem strikes you, ask for help, and the help will come, just head on to <a href="http://buddypress.org/support/topics/">forums</a> or <a href="http://codex.buddypress.org/home/">codex</a>.</p>
<h4 id="p3">Code is poetry, at any age or experience.</h4>
<p>Don&#8217;t forget this! Both WordPress and BuddyPress are using imperative and sometimes object-oriented programming. This made a couple of my friends to criticize it badly, but that should not be a reason for you to do the same!</p>
<p>BuddyPress is a complex system! For it&#8217;s main components like groups and messages, the code is written as classes, which is great, mainly because if you want to modify some component workflow, all you need to do is extend the base class and overwrite the method you don&#8217;t like. But heading on with the OOP way everywhere is wrong. Usually  users don&#8217;t do such complex things, and forcing them to adopt such a workflow, will just drive the contributions away. Not to mention the template tags, which are bare functions that hook into something and allows you making a paragraph out of a list a snap!</p>
<p>So blaming BuddyPress for coding styles it&#8217;s wrong, mainly because being flexible for developers (of any level), sometimes it&#8217;s more important than being flexible to end-users! With some help, BuddyPress contributions can come from young programmers to experienced developers, and <a href="http://patcheswelcome.wordpress.com/">patches are always welcome</a>!</p>
<h4 id="p4">So how do I start.</h4>
<p>Good examples are always a good start for any coding you plan. BuddyPress developers took this seriously, and put efforts into helping newcomers understand the plugins workflow and adapt easily.</p>
<p>On codex, there&#8217;s a dedicated <a href="http://codex.buddypress.org/plugin-development/creating-a-custom-buddypress-component/">page for how to write a component</a>. It&#8217;s a bunch of code that gave me a real boost when I wrote my first plugin (basically a small modification of <a href="http://wordpress.org/extend/plugins/buddypress-skeleton-component/">the skeleton component</a>), and you should also check it if you want to write something quickly!</p>
<p>More experienced developers, can write their code independently of that. The approach is the same, and it&#8217;s up to you. Remember, we&#8217;re <a href="#p3">very-very flexible in terms of code</a>, and <a href="http://codex.buddypress.org/developer-docs/action-reference/">the hooks are your best friend</a>!</p>
<h4>Final thoughts</h4>
<p>I really hope this article will help newcomers cover some of the unusual questions they could ever stumble upon and didn&#8217;t know where to get answers. If you didn&#8217;t observe, every thought I wanted to explain, more or less brought me to the community. Also, I just wanted to remind everyone that my experience with BuddyPress as part of the community was really special. I was taught and helped a lot, and the people I met here that did all the above are just awesome!</p>
<p>So I hope to see you soon, contributing to BuddyPress.</p>
]]></content:encoded>
			<wfw:commentRss>http://buddydress.com/2010/12/writing-code-for-buddypress-its-all-about-community/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Post Formats, Tumblog, and Content Separation brought to you by Jeffrey Pearce</title>
		<link>http://buddydress.com/2010/12/post-formats-tumblog-and-content-separation-brought-to-you-by-jeffrey-pearce/</link>
		<comments>http://buddydress.com/2010/12/post-formats-tumblog-and-content-separation-brought-to-you-by-jeffrey-pearce/#comments</comments>
		<pubDate>Sun, 19 Dec 2010 15:18:46 +0000</pubDate>
		<dc:creator>tammie</dc:creator>
				<category><![CDATA[12 days of WordPress and BuddyPress]]></category>
		<category><![CDATA[post formats]]></category>
		<category><![CDATA[tumblog]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://buddydress.com/?p=1608</guid>
		<description><![CDATA[Today&#8217;s 12 days of WordPress and BuddyPress comes from Jeffrey Pearce. Post Formats, Tumblog, and Content Separation can be found over at wpmu.org. Don&#8217;t forget to check every day for a new 12 days post.]]></description>
			<content:encoded><![CDATA[<p><a href="http://buddydress.com/category/12-days-of-wordpress-and-buddypress/"><img class="alignnone size-full wp-image-1488" title="bd12days" src="http://buddydress.com/wp-content/uploads//2010/12/bd12days.jpg" alt="" width="610" height="150" /></a></p>
<p>Today&#8217;s 12 days of WordPress and BuddyPress comes from Jeffrey Pearce.  <a href="http://wpmu.org/post-formats-tumblog-and-content-separation-by-jeffrey-pearce/">Post Formats, Tumblog, and Content Separation</a> can be found over at wpmu.org.</p>
<p>Don&#8217;t forget to check every day for a new 12 days post.</p>
]]></content:encoded>
			<wfw:commentRss>http://buddydress.com/2010/12/post-formats-tumblog-and-content-separation-brought-to-you-by-jeffrey-pearce/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Extending BuddyPress, for existing WordPress developers by Paul Gibbs</title>
		<link>http://buddydress.com/2010/12/extending-buddypress-for-existing-wordpress-developers-by-paul-gibbs/</link>
		<comments>http://buddydress.com/2010/12/extending-buddypress-for-existing-wordpress-developers-by-paul-gibbs/#comments</comments>
		<pubDate>Sat, 18 Dec 2010 17:00:24 +0000</pubDate>
		<dc:creator>tammie</dc:creator>
				<category><![CDATA[12 days of WordPress and BuddyPress]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[buddypress]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[WordPress developers]]></category>

		<guid isPermaLink="false">http://buddydress.com/?p=1577</guid>
		<description><![CDATA[It&#8217;s over to Paul Gibbs for today&#8217;s 12 days of WordPress and BuddyPress.  Lets meet Paul first in his own words from his profile at BuddyPress.org: &#8221; I&#8217;m a Core Developer on BuddyPress. I enjoy speaking at WordCamps, crafting code, and helping people. I provide consultancy on projects and design custom plugins for your site; [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://buddydress.com/category/12-days-of-wordpress-and-buddypress/"><img class="alignnone size-full wp-image-1488" title="bd12days" src="http://buddydress.com/wp-content/uploads//2010/12/bd12days.jpg" alt="" width="610" height="150" /></a></p>
<p>It&#8217;s over to Paul Gibbs for today&#8217;s 12 days of WordPress and BuddyPress.  Lets meet Paul first in his own words from his profile at <a href="http://buddypress.org/community/members/DJPaul/">BuddyPress.org</a>:<br />
<a href="http://byotos.com/"><img class="size-full wp-image-1581 alignleft" title="3bc9ab796299d67ce83dceb9554f75df" src="http://buddydress.com/wp-content/uploads//2010/12/3bc9ab796299d67ce83dceb9554f75df.jpg" alt="" width="136" height="136" /></a></p>
<blockquote><p>&#8221; I&#8217;m a Core Developer on BuddyPress. I enjoy speaking at WordCamps,  crafting code, and helping people.</p>
<p>I provide consultancy on projects and design custom plugins for your  site;</p>
<p>contact me at paul@byotos.com, in #buddypress-dev on freenode, or  on twitter as @pgibbs.&#8221;</p></blockquote>
<p>A powerful tool in a WordPress developer&#8217;s arsenal is the ease and flexibility of creating a widget. Introduced in WordPress 2.8, the WP_Widget widget class abstracted most of the complexity involved in writing a widget, giving developers a framework to build on and prevent time being needlessly spent on, for example, building custom option panels. Widgets remain a great way for a PHP developer to become familiar with the WordPress platform and API features such as actions and filters.<br />
BuddyPress&#8217; Groups component has a similar extension architecture to widgets and we&#8217;re going to look at how existing WordPress developers, who haven&#8217;t written for BuddyPress before, can get started.</p>
<h4>Introduction to BuddyPress components</h4>
<p>BuddyPress is a single plugin, but internally it is subdivided into distinct parts, almost into separate plugins, which BuddyPress calls components.  The core components are Activity Streams, Blog Tracking (for multisite), Forums, Friends, Groups, Private Messaging and eXtended Profile (xprofile). A plugin developer working on BuddyPress would either extend one of the core components or create a new component. An example of extending the Private Messaging component would be to add support for file attachments to messages, and a new component would be best for brand new functionality, such as a photo album.</p>
<p>At the moment, the Groups component has the best API for developers, so we&#8217;re going to be looking at <a href="http://profiles.wordpress.org/users/johnjamesjacoby">John James Jacoby</a>&#8216;s <a href="http://wordpress.org/extend/plugins/bp-edit-group-slug/">BP Edit Group Slug</a> plugin as an example. Download it and look at its source code whilst reading this article. The BP Edit Group Slug plugin allows you to change the group&#8217;s slug, which is part of the group&#8217;s permalink. You might want to use this if you decide to rename the group after creating it and want to update the permalink too.</p>
<h4>Hooking into BuddyPress safely</h4>
<p>Like with widgets, a group extension requires you to extends BuddyPress&#8217; <em>BP_Group_Extension class</em>. To tell BuddyPress to load your group extension, use <em>bp_register_group_extension()</em>. However, be aware that John&#8217;s plugin is slightly out of date about how third-party plugins should hook into BuddyPress; the correct way is <a href="http://codex.buddypress.org/plugin-development/checking-buddypress-is-active/">documented on the BuddyPress codex</a>. We advise creating a loader.php file and putting in the following:</p>
<p><em>// Only load code that needs BuddyPress to run once BP is loaded and initialised.</em></p>
<pre class="php">
<span class="phpFunctionKeyword">function</span> my_plugin_init<span class="phpOperator">(</span><span class="phpOperator">)</span> <span class="phpOperator">{</span>
<span class="phpKeyword">
require<span class="phpOperator">(</span></span> <span class="phpFunction">dirname</span><span class="phpOperator">(</span> <span class="phpConstant">__FILE__</span> <span class="phpOperator">)</span> <span class="phpOperator">.</span> <span class="phpString">'/my-plugin<span class="phpOperator">.</span>php'</span> <span class="phpOperator">)</span><span class="phpText">;</span>
<span class="phpOperator">}</span>
add_action<span class="phpOperator">(</span> <span class="phpString">'bp_include'</span>, <span class="phpString">'my_plugin_init'</span> <span class="phpOperator">)</span><span class="phpText">;</span></pre>
<p>All of your code which is dependant on BuddyPress can then be put into the <em>my-plugin.php</em> file. This will make sure your plugin won&#8217;t break someone&#8217;s website if they were to deactivate BuddyPress before deactivating your plugin.</p>
<h4>About BP_Group_Extension</h4>
<p>In your class, there are six functions which you can choose to implement.</p>
<ul>
<li><em>BP_Group_Extension::create_screen()</em> &#8212; implement the HTML for the create screen, as seen when users create a new group.</li>
<li><em>BP_Group_Extension::create_screen_save()</em> &#8212; handle saving of options from the create screen.</li>
<li><em>BP_Group_Extension::edit_screen()</em> &#8212; implement the HTML for the edit screen, as seen when the group admin(s) edit their group.</li>
<li><em>BP_Group_Extension::edit_screen_save()</em> &#8212; handle updating of options from the edit screen.</li>
<li><em>BP_Group_Extension::display()</em> &#8212; implement the HTML to display output from your group extension in the group.</li>
<li><em>BP_Group_Extension::widget_display()</em> &#8212; invoked when the user is on the front page of a group (by default, the activity stream page).</li>
</ul>
<p>You are not required to implement all of these functions in your class. For example, as John&#8217;s plugin is only used for the group admin(s) to change the permalink, there is no need to display anything to regular visitors. In addition to these methods, there are a few helpful class properties:</p>
<ul>
<li><em>$enable_create_step, $enable_nav_item, $enable_edit_item</em> &#8212; booleans. Set these if you want to display your extension on the create/edit screens, or add a nav item. Optional (all default to true).</li>
<li><em>$create_step_position, $nav_item_position</em> &#8212; integers. Use to change the order of where your extension displays on the create scree and the navigation bar. Optional (defaults to 81).</li>
<li><em>$name, $slug</em> &#8212; strings. The title of your grope extension, and the slug for its permalink. Both required.</li>
<li><em>$nav_item_name</em> &#8212; string. Set to use this instead of $name in the navigation bar. Optional.</li>
<li><em>$visibility</em> &#8212; string. Controls whether this extension will be visible to non-members of a group? Options: &#8220;public&#8221; or &#8220;private&#8221; (defaults to &#8220;public&#8221;).</li>
<li><em>$display_hook</em> &#8212; string. ADVANCED. Defaults to &#8216;groups_custom_group_boxes&#8217;.</li>
<li><em>$template_file</em> &#8212; string. ADVANCED. Defaults to &#8216;groups/single/plugins&#8217;.</li>
</ul>
<p><em>$display_hook</em> and <em>$template_file</em> are two advanced options which will give you more control over which template is used when you <em>display()</em> your group. You don&#8217;t need to worry about these as the defaults will be appropriate most of the time.</p>
<h4>Where to get help</h4>
<p>Using John&#8217;s plugin as an example, I suggest that you spend an afternoon over this Christmas period learning to implement your own group extension and seeing what you can come up with. If you need any help, please <a href="http://buddypress.org/support/topics/ ">leave a message on the BuddyPress Community site</a> where I&#8217;ll be happy to help you learn how to develop with BuddyPress. Merry Christmas!</p>
]]></content:encoded>
			<wfw:commentRss>http://buddydress.com/2010/12/extending-buddypress-for-existing-wordpress-developers-by-paul-gibbs/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to Make A Sidebar Widget To Display Recent Custom Posts brought to you by Jared Williams</title>
		<link>http://buddydress.com/2010/12/how-to-make-a-sidebar-widget-to-display-recent-custom-posts-brought-to-you-by-jared-williams/</link>
		<comments>http://buddydress.com/2010/12/how-to-make-a-sidebar-widget-to-display-recent-custom-posts-brought-to-you-by-jared-williams/#comments</comments>
		<pubDate>Thu, 16 Dec 2010 18:32:42 +0000</pubDate>
		<dc:creator>tammie</dc:creator>
				<category><![CDATA[12 days of WordPress and BuddyPress]]></category>
		<category><![CDATA[custom posts]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[sidebar]]></category>
		<category><![CDATA[widget]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://buddydress.com/?p=1601</guid>
		<description><![CDATA[Today&#8217;s 12 days of WordPress and BuddyPress is brought to you by Jared Williams: &#8216;How to make a sidebar widget to display recent custom posts by Jared Williams&#8217;. Don&#8217;t forget to check back here and at wpmu.org each day for a new post in this exciting series.]]></description>
			<content:encoded><![CDATA[<p><a href="http://buddydress.com/category/12-days-of-wordpress-and-buddypress/"><img class="alignnone size-full wp-image-1488" title="bd12days" src="http://buddydress.com/wp-content/uploads//2010/12/bd12days.jpg" alt="" width="610" height="150" /></a></p>
<p>Today&#8217;s 12 days of WordPress and BuddyPress is brought to you by Jared Williams: <a href="http://wpmu.org/how-to-make-a-sidebar-widget-to-display-recent-custom-posts-by-jared-williams/">&#8216;How to make a sidebar widget to display recent custom posts by Jared Williams&#8217;</a>.</p>
<p>Don&#8217;t forget to check back here and at wpmu.org each day for a new post in this exciting series.</p>
]]></content:encoded>
			<wfw:commentRss>http://buddydress.com/2010/12/how-to-make-a-sidebar-widget-to-display-recent-custom-posts-brought-to-you-by-jared-williams/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress Query Overview: How a Page Request Is Translated To a MySQL Query by Ozh</title>
		<link>http://buddydress.com/2010/12/wordpress-query-overview-how-a-page-request-is-translated-to-a-mysql-query-by-ozh/</link>
		<comments>http://buddydress.com/2010/12/wordpress-query-overview-how-a-page-request-is-translated-to-a-mysql-query-by-ozh/#comments</comments>
		<pubDate>Tue, 14 Dec 2010 16:49:43 +0000</pubDate>
		<dc:creator>tammie</dc:creator>
				<category><![CDATA[12 days of WordPress and BuddyPress]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://buddydress.com/?p=1597</guid>
		<description><![CDATA[Today&#8217;s 12 days of WordPress and BuddyPress is brought to you by Ozh: &#8216;WordPress Query Overview: How a Page is Translated To a MySQL Query&#8217;. Ozh is a regular member of the WordPress community and we&#8217;re pleased to have him join our 12 day celebration. Don&#8217;t forget to check back again tomorrow for more 12 [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://buddydress.com/category/12-days-of-wordpress-and-buddypress/"><img class="alignnone size-full wp-image-1488" title="bd12days" src="http://buddydress.com/wp-content/uploads//2010/12/bd12days.jpg" alt="" width="610" height="150" /></a></p>
<p>Today&#8217;s 12 days of WordPress and BuddyPress is brought to you by Ozh: <a href="http://wpmu.org/wordpress-query-overview-how-a-page-request-is-translated-to-a-mysql-query/">&#8216;WordPress Query Overview: How a Page is Translated To a MySQL Query&#8217;</a>.</p>
<p>Ozh is a regular member of the WordPress community and we&#8217;re pleased to have him join our 12 day celebration.</p>
<p>Don&#8217;t forget to check back again tomorrow for more 12 days with a post on this site to do with BuddyPress.</p>
]]></content:encoded>
			<wfw:commentRss>http://buddydress.com/2010/12/wordpress-query-overview-how-a-page-request-is-translated-to-a-mysql-query-by-ozh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New theme, inspiration and tutorials: Friday Find</title>
		<link>http://buddydress.com/2010/12/new-theme-inspiration-and-tutorials-friday-find/</link>
		<comments>http://buddydress.com/2010/12/new-theme-inspiration-and-tutorials-friday-find/#comments</comments>
		<pubDate>Fri, 10 Dec 2010 23:09:48 +0000</pubDate>
		<dc:creator>tammie</dc:creator>
				<category><![CDATA[Friday Find]]></category>
		<category><![CDATA[12 days]]></category>
		<category><![CDATA[buddypress]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wpmu.org]]></category>

		<guid isPermaLink="false">http://buddydress.com/?p=1498</guid>
		<description><![CDATA[We&#8217;re getting ready for the start of the 12 days of WordPress and BuddyPress this Sunday and really excited about what that will bring.  This week has been hectic also for another reason and that&#8217;s our release of Holder our great new theme.  We&#8217;re going to tell you more about Holder next week. In celebration [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;re getting ready for the start of the <a href="http://buddydress.com/2010/12/join-us-and-wpmu-org-in-the-12-days-of-wordpress-and-buddypress-coming-soon/">12 days of WordPress and BuddyPress</a> this Sunday and really excited about what that will bring.  This week has been hectic also for another reason and that&#8217;s our release of <a href="http://buddydress.com/project/holder/">Holder</a> our great new theme.  We&#8217;re going to tell you more about Holder next week.  In celebration lets get on with some links:</p>
<p><a href="http://wpmu.org/13-fantastically-creative-buddypress-site-designs/">13 Fantastically Creative BuddyPress Site Designs</a></p>
<p><a href="http://wpmu.org/10-new-plugins-to-improve-your-buddypress-user-experience/">10 new Plugins to Improve Your BuddyPress User Experience</a></p>
<p><a href="http://wpmu.org/10-new-plugins-to-improve-your-buddypress-user-experience/">20 Plugin Replacing Tutorials, Tips, Snippets and Solutions for WordPress</a></p>
<p><a href="http://webdesignledger.com/freebies/best-free-textures-and-patterns-of-2010">Best Free Textures and Patterns of 2010</a></p>
<p><a href="http://yoast.com/themes-plugins-seo/#utm_source=smashing&amp;utm_medium=network&amp;utm_campaign=smashing-network">Should Themes or Plugins do your SEO</a></p>
]]></content:encoded>
			<wfw:commentRss>http://buddydress.com/2010/12/new-theme-inspiration-and-tutorials-friday-find/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

