<?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>The WordPress Experts - WPMU.org &#187; development</title>
	<atom:link href="http://wpmu.org/category/development/feed/" rel="self" type="application/rss+xml" />
	<link>http://wpmu.org</link>
	<description>WordPress, Multisite &#38; BuddyPress plugins, themes, news and reviews and special offers from the team at WPMU.org</description>
	<lastBuildDate>Mon, 21 May 2012 16:00:40 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>The WordPress Community Summit Is A Great Idea</title>
		<link>http://wpmu.org/the-wordpress-community-summit-is-a-great-idea/</link>
		<comments>http://wpmu.org/the-wordpress-community-summit-is-a-great-idea/#comments</comments>
		<pubDate>Fri, 18 May 2012 11:02:19 +0000</pubDate>
		<dc:creator>Thord Daniel Hedengren</dc:creator>
				<category><![CDATA[Automattic]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[Featured]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[WordCamp]]></category>
		<category><![CDATA[WordPress community summit]]></category>

		<guid isPermaLink="false">http://wpmu.org/?p=78229</guid>
		<description><![CDATA[In which I give a standing ovation to the WordPress community summit idea. Yay for that, and here's why. ]]></description>
			<content:encoded><![CDATA[<p>You might&#8217;ve seen Jane Wells&#8217; post <a href="http://wordpress.org/news/2012/05/calling-all-contributors-community-summit-2012/">about the WordPress community summit</a>, and if not, well then you&#8217;re obviously not <a href="http://twitter.com/tdh">following @tdh on Twitter</a>, which is a really really bad thing not to do, you know.</p>
<p>Yep. That&#8217;s my column, all self promotion and the like. <a href="http://wpmu.org/who-buys-who-in-the-end/">Paid in chocolate kittens</a>, remember?</p>
<p>Joking aside (right&#8230;), I think the WordPress community summit is a great idea. For those of you who find posts on wordpress.org to be scary, here&#8217;s the lowdown.</p>
<p>Wait. You find posts on wordpress.org scary? That&#8217;s just plain stupid, <a href="http://wordpress.org/news/2012/05/calling-all-contributors-community-summit-2012/">go read it</a>, battle your phobia, then come back here.</p>
<p>Pretty nice huh? <strong>From core developer meetup, to something that sounds like a great opportunity to inject new ideas and point of views into the WordPress project.</strong> There is definitely a need for the core developers to be able to sit down and discuss things all by themselves, but just like regular human beings they are not all-knowing, without fault, or well-versed enough in the greatness of single malt whisky.</p>
<p><img src="http://wpmu.org/wp-content/uploads/2012/05/4759535950_7bca6684c8_b.jpg" alt="" title="Gracias" width="841" height="526" class="aligncenter size-full wp-image-78234" /></p>
<p>WordPress have come a long way, really. It is a great platform and I&#8217;m personally grateful to everyone who&#8217;s helped make it this wonderful over the years. That includes people I&#8217;ve had spats with, people who need to <a href="http://wpmu.org/lets-not-kill-wordpress-with-attitude/">work on their manners</a>, and people who are just plain nice. Sometimes I criticize and question these people, Automattic, the WordPress Foundation, and WordCamp Central, but I&#8217;m counting on that they all understand that this is just to point out flaws and make sure that I appear in better light.</p>
<p><strong>Someone actually suggested that was the case.</strong> Yes, I was taken aback. Seriously? Then again, maybe it is just because these columns are published on <a href="http://wpmu.org">WPMU.org</a>, which some people have a hard time with, I don&#8217;t know and I don&#8217;t particularly care.</p>
<p>Obviously I want WordPress to thrive. Anything negative I say about the platform and/or the people and organization around it is because I want WordPress to thrive even more. To evolve even further. I think we all share that trait, at least I like to think so, although I know it is hardly true. But that&#8217;s OK, the open source spirit is optional.</p>
<p>This is why I&#8217;m thrilled to read about the WordPress community summit. It is a great opportunity to make sure that even more points of view are discussed with the core team. I&#8217;ll be sure to nominate people I think could help. The summit definitely need some Europeans to attend, because things are slightly different here and <a href="http://wpmu.org/dont-be-a-dick-localize-everything/">internationalization</a> is way more important to us than to Americans for example. There should also be representatives from commercial theme and plugin businesses, because that&#8217;s a part of the ecosystem that we need to not only come to terms with but actually start think about how to handle.</p>
<p>I could go on but I won&#8217;t, because it is, well, the end of the column. <a href="http://wordpressdotorg.polldaddy.com/s/2012-community-summit-nominations">Nominate people you think should be at the WordPress summit</a>, do it now.</p>
<p>Did I mention you should <a href="http://wordpressdotorg.polldaddy.com/s/2012-community-summit-nominations">nominate</a>?</p>
<p><a href="http://wordpressdotorg.polldaddy.com/s/2012-community-summit-nominations">Nominate.</a></p>
<p>Nom.</p>
<p>Om nom nom nom?</p>
<p><iframe width="685" height="514" src="http://www.youtube.com/embed/Cl5Pfc5TyO0?fs=1&#038;feature=oembed" frameborder="0" allowfullscreen></iframe></p>
<p><em>Photo by <a href="http://www.flickr.com/photos/wwworks/4759535950/in/photostream/">woodleywonderworks</a> (CC)</em></p>
<!-- PHP 5.x -->]]></content:encoded>
			<wfw:commentRss>http://wpmu.org/the-wordpress-community-summit-is-a-great-idea/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Daily Tip: QueryPosts &#8211; A More Comprehensive WordPress Code Reference</title>
		<link>http://wpmu.org/daily-tip-queryposts-a-more-comprehensive-wordpress-code-reference/</link>
		<comments>http://wpmu.org/daily-tip-queryposts-a-more-comprehensive-wordpress-code-reference/#comments</comments>
		<pubDate>Mon, 14 May 2012 17:45:22 +0000</pubDate>
		<dc:creator>Sarah Gooding</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Daily Tip]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress code reference]]></category>
		<category><![CDATA[wordpress developer]]></category>
		<category><![CDATA[wordpress developer reference]]></category>
		<category><![CDATA[wordpress reference]]></category>

		<guid isPermaLink="false">http://wpmu.org/?p=77943</guid>
		<description><![CDATA[Check out this promising new WordPress reference site for developers. ]]></description>
			<content:encoded><![CDATA[<p><a href="http://queryposts.com" target="_blank">QueryPosts.com</a> is a new reference for developers that aims to be an even better WordPress code reference than the <a href="http://codex.wordpress.org/" target="_blank">codex</a>. Explore the site a little bit and you&#8217;ll find that function pages have tons of information, source, links to trac and github, and a list of similar and/or related functions.</p>
<p><img src="http://wpmu.org/wp-content/uploads/2012/05/queryposts.jpg" alt="" title="queryposts" width="815" height="602" class="aligncenter size-full wp-image-77947" /></p>
<p>The site&#8217;s <a href="http://www.rarst.net/" target="_blank">creator</a> hopes to make it a more comprehensive and up-to-date reference than the Codex currently offers. The auto-suggest on the search certainly makes it a bit more friendly and convenient for digging through WordPress code. Bookmark <a href="http://queryposts.com" target="_blank">QueryPosts.com</a> for the next time you need to do a little bit of research.</p>
 <div class="wdgpo_author"><a href='https://plus.google.com/107629986833959061134/posts?rel=author'><img src="https://ssl.gstatic.com/images/icons/gplus-16.png" /> Sarah Gooding on Google+</a></div><!-- PHP 5.x -->]]></content:encoded>
			<wfw:commentRss>http://wpmu.org/daily-tip-queryposts-a-more-comprehensive-wordpress-code-reference/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Put WordPress in a Read-Only State with Code Freeze</title>
		<link>http://wpmu.org/put-wordpress-in-a-read-only-state-with-code-freeze/</link>
		<comments>http://wpmu.org/put-wordpress-in-a-read-only-state-with-code-freeze/#comments</comments>
		<pubDate>Fri, 11 May 2012 14:15:03 +0000</pubDate>
		<dc:creator>Sarah Gooding</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[Plugins]]></category>
		<category><![CDATA[code freeze plugin]]></category>
		<category><![CDATA[wordpress code freeze]]></category>
		<category><![CDATA[wordpress migration]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://wpmu.org/?p=77823</guid>
		<description><![CDATA[This new plugin temporarily puts your WordPress site into a "read only" state so that no more updates can be made - very useful when changing hosts.]]></description>
			<content:encoded><![CDATA[<p>When you&#8217;re migrating a WordPress site from one server to another, there&#8217;s a point where you just need to stop writing posts and making changes in the old location. Perhaps you&#8217;ve made your final backup before preparing to move the site. Or maybe you&#8217;re waiting for DNS to propagate, which can sometimes take up to 48 hours. This isn&#8217;t usually such a problem, but with a multi-author site you&#8217;ll need to get everyone on the same page.</p>
<p><a href="http://wordpress.org/extend/plugins/code-freeze/" target="_blank">Code Freeze</a> is a new plugin you may want to consider using during your WordPress migration. It temporarily puts your WordPress site into a &#8220;read only&#8221; state so that no more updates can be made. Specifically, it restricts the following:</p>
<ul>
<li>Disables adding/editing/deleting new content, media, themes, etc.</li>
<li>Disables installing/activating/deactivating/updating/deleting all plugins (except this one)</li>
<li>Disables new comments/trackbacks on all content items</li>
<li>Removes the QuickPress widget and notices to upgrade core or plugins</li>
<li>Provides notice to dashboard users that any changes will be lost</li>
<li>Provides generally &#8220;read only&#8221; access to the dashboard</li>
</ul>
<p>When a user attempts to do anything in the dashboard, he&#8217;ll see a message advising that the Code Freeze is in effect and any changes made will be lost.</p>
<p><img src="http://wpmu.org/wp-content/uploads/2012/05/code-freeze.png" alt="" title="code-freeze" width="693" height="401" class="aligncenter size-full wp-image-77827" /></p>
<p>The Code Freeze plugin makes no changes whatsoever to the database and it has no settings. When it&#8217;s activated, it&#8217;s turned on. When you want to turn it off, simply deactivate the plugin. If you want to make sure everything is in order after migration before letting authors post, leave the plugin on until you&#8217;ve verified your site. Even if you&#8217;re not moving your site to another location you can still use this plugin as a simple short-term &#8220;lock down&#8221; for any reason.</p>
<p>Bookmark the <a href="http://wordpress.org/extend/plugins/code-freeze/" target="_blank">Code Freeze</a> plugin to have on standby the next time you need to put WordPress in a read-only state. </p>
 <div class="wdgpo_author"><a href='https://plus.google.com/107629986833959061134/posts?rel=author'><img src="https://ssl.gstatic.com/images/icons/gplus-16.png" /> Sarah Gooding on Google+</a></div><!-- PHP 5.x -->]]></content:encoded>
			<wfw:commentRss>http://wpmu.org/put-wordpress-in-a-read-only-state-with-code-freeze/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>The Less Is More Post</title>
		<link>http://wpmu.org/the-less-is-more-post/</link>
		<comments>http://wpmu.org/the-less-is-more-post/#comments</comments>
		<pubDate>Thu, 03 May 2012 15:00:24 +0000</pubDate>
		<dc:creator>Thord Daniel Hedengren</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[less is more]]></category>
		<category><![CDATA[minimalism]]></category>
		<category><![CDATA[settings]]></category>
		<category><![CDATA[theme options]]></category>
		<category><![CDATA[Themes]]></category>
		<category><![CDATA[wordpress themes]]></category>

		<guid isPermaLink="false">http://wpmu.org/?p=77245</guid>
		<description><![CDATA[Keep things simple and it'll be better for everybody, at least that's what TDH keeps telling us in this week's column.]]></description>
			<content:encoded><![CDATA[<p>Clutter. I hate it. Crap everywhere, post-it&#8217;s, scribbles, hamburger wrappings, fiftythree beer cans, a broken pencil, an iPhone charger, USB cable for unknown peripheral, a hand out from the local Thai place, two printed quotes, a dirty espresso cup, napkins, some coins, two iPads, a pen for the Wacom board nobody uses, and so on. Clutter. I really do hate it.</p>
<p>Tons of menu items and unnecessary options. I hate that too. Option pages for themes and plugins that are just over the top, settings for everything which leaves the end-user staggered and with nothing that truly helps.</p>
<p><img src="http://wpmu.org/wp-content/uploads/2012/05/2404029374_df33a471bf_b-1.jpg" alt="" title="What a mess" width="1024" height="768" class="aligncenter size-full wp-image-77248" /></p>
<p>Less is more. I think more and more about that these days, and <a href="http://themeoptions.wordpress.com/">Konstantin Kovshenin&#8217;s theme options blog</a> (that&#8217;s niche blogging for ya!) reminded me yet again.</p>
<p>Developing a theme or a plugin for WordPress? Got a settings page or, God forbid, several? Consider this:</p>
<ul>
<li>Is this setting really necessary?</li>
<li>Do I need more than one settings page?</li>
<li>Will everybody understand my settings right away, at a glance?</li>
<li>Is my settings page located in a logical place in the admin menu structure?</li>
<li>Does my settings and the way I&#8217;ve made them make sense within the WordPress interface?</li>
</ul>
<p><strong>Keep it simple, dead simple, and keep everything to a minimum is my advice.</strong> You might have a ton of ideas for settings, which you think will help the user, but most will not. In fact, they&#8217;ll be a hurdle. The settings you do have should be done using the Settings API.</p>
<p>And with that I&#8217;ll prove my point by not rambling on for another paragraph or four.</p>
<p><em>Photo by <a href="http://www.flickr.com/photos/35448539@N00/2404029374/">Blake Patterson</a> (CC)</em></p>
<!-- PHP 5.x -->]]></content:encoded>
			<wfw:commentRss>http://wpmu.org/the-less-is-more-post/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Get WordPress Functions in Your Inbox Every Day</title>
		<link>http://wpmu.org/get-wordpress-functions-in-your-inbox-every-day/</link>
		<comments>http://wpmu.org/get-wordpress-functions-in-your-inbox-every-day/#comments</comments>
		<pubDate>Wed, 18 Apr 2012 18:30:40 +0000</pubDate>
		<dc:creator>Sarah Gooding</dc:creator>
				<category><![CDATA[Daily Tip]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress developer newsletter]]></category>
		<category><![CDATA[wordpress functions]]></category>
		<category><![CDATA[wordpress newsletter]]></category>

		<guid isPermaLink="false">http://wpmu.org/?p=76467</guid>
		<description><![CDATA[Want to expand your knowledge of WordPress functions? Check out this handy newsletter for WordPress developers!]]></description>
			<content:encoded><![CDATA[<p><img src="http://wpmu.org/wp-content/uploads/2012/04/wp-newsletter-feature-300x204.jpg" alt="" title="wp-newsletter-feature" width="300" height="204" class="alignleft size-medium wp-image-76469" />The <a href="http://www.dailydocumentation.com/wordpress/" target="_blank">Daily WordPress Reference</a> is a very handy WordPress email newsletter for developers. I only recently discovered it and subscribed immediately. Each newsletter contains one function, a description of what it does, usage, parameters, return values and a few examples of how to use it. At the end it links to the codex where you can find out more information. </p>
<p>You can view past issues of the newsletter on the Daily WordPress Reference signup page to see if you like the content they&#8217;re sending. </p>
<p>Here&#8217;s an example of what the newsletters look like in your inbox:</p>
<p><img src="http://wpmu.org/wp-content/uploads/2012/04/example-newsletter.png" alt="" title="example-newsletter" width="652" height="609" class="aligncenter size-full wp-image-76468" /></p>
<p>All in all it&#8217;s like reading one page of the codex every day. You get bite-sized learning bits conveniently deposited in your inbox, so you can keep expanding your knowledge while on the go. I highly recommend the newsletter to anyone developing for WordPress. The <a href="http://www.dailydocumentation.com/wordpress/" target="_blank">Daily WordPress Reference</a> is totally free so go sign up today!</p>
 <div class="wdgpo_author"><a href='https://plus.google.com/107629986833959061134/posts?rel=author'><img src="https://ssl.gstatic.com/images/icons/gplus-16.png" /> Sarah Gooding on Google+</a></div><!-- PHP 5.x -->]]></content:encoded>
			<wfw:commentRss>http://wpmu.org/get-wordpress-functions-in-your-inbox-every-day/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Introducing NHP: A New, Extendable Theme Options Framework for WordPress</title>
		<link>http://wpmu.org/introducing-nhp-a-new-extendable-theme-options-framework-for-wordpress/</link>
		<comments>http://wpmu.org/introducing-nhp-a-new-extendable-theme-options-framework-for-wordpress/#comments</comments>
		<pubDate>Thu, 12 Apr 2012 15:00:39 +0000</pubDate>
		<dc:creator>Sarah Gooding</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[Featured]]></category>
		<category><![CDATA[Themes]]></category>
		<category><![CDATA[custom error handling]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[options framework]]></category>
		<category><![CDATA[theme options]]></category>
		<category><![CDATA[validation]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress theme options]]></category>
		<category><![CDATA[wordpress theme options framework]]></category>

		<guid isPermaLink="false">http://wpmu.org/?p=76155</guid>
		<description><![CDATA[This new options framework has tons of built-in features that theme developers will love. It's highly extendable and packaged with excellent documentation.]]></description>
			<content:encoded><![CDATA[<p>Today we&#8217;d like to introduce you to a new tool for WordPress theme developers. It&#8217;s a theme options framework that we think you&#8217;re going to fall in love with.  </p>
<p><a href="http://leemason.github.com/NHP-Theme-Options-Framework/" target="_blank">NHP Theme Options Framework</a> was created by developer Lee Mason of <a href="http://no-half-pixels.com" target="_blank">No Half Pixels</a>. Though there are many other options frameworks already available, Mason&#8217;s goal was to build something that would be easily extendable and support custom error handling. The NHP options framework is launching with a ridiculous number of features.</p>
<p><img src="http://wpmu.org/wp-content/uploads/2012/04/nhp-options-framework.png" alt="" title="nhp-options-framework" width="1149" height="405" class="aligncenter size-full wp-image-76156" /></p>
<p>Some of the NHP framework&#8217;s most remarkable features include:</p>
<ul>
<li><strong>Custom Error Handling</strong> &#8211; Using the Validation methods you can create custom error messages for each field type.</li>
<li><strong>Extendable Field Classes</strong> &#8211; Easily create custom field classes for use in your theme options. Instructions are available in the detailed <a href="https://github.com/leemason/NHP-Theme-Options-Framework/wiki/Creating-a-Field-Class" target="_blank">wiki</a>.</li>
<li><strong>Built In Field Types</strong> &#8211; Contains many built in field types for easy use (all basic field types like text, checkbox, select, upload are built in).</li>
<li><strong>Extendable Validation Classes</strong> &#8211; Want custom validation? Just use the extendable Validation Class methods.</li>
<li><strong>Built In Validation Methods</strong> &#8211; Contains many built in validation methods for clean data saving (email, url, numeric, escape js, no html, html).</li>
<li><strong>Fully Customizable</strong> &#8211; Many Hook points to customise the Framework to your requirements.</li>
</ul>
<p>This is just a sampling of the built-in field types:</p>
<p><img src="http://wpmu.org/wp-content/uploads/2012/04/field-types.png" alt="" title="field-types" width="1165" height="624" class="aligncenter size-full wp-image-76170" /></p>
<p>I highly encourage you to visit the <a href="http://leemason.github.com/NHP-Theme-Options-Framework/" target="_blank">NHP framework&#8217;s homepage on github</a> to explore the vast number of built in features. The best part is that every function/action can be customized. </p>
<h3>Simple to Use:</h3>
<p>Including the options framework in your theme is very easy. You simply require the theme-options.php file in your themes functions.php file, like this:</p>
<pre>require( dirname( __FILE__ ) . '/theme-options.php' );</pre>
<p>Then you can change the settings as written in the theme-options.php file.</p>
<p>The <a href="https://github.com/leemason/NHP-Theme-Options-Framework/wiki" target="_blank">documentation</a> for NHP is extensive and will continue to grow as new hook points and configuration options are added with each update. This options framework is a theme developer&#8217;s dream. It enables you keep your focus on creating beautiful themes. The <a href="http://leemason.github.com/NHP-Theme-Options-Framework/" target="_blank">NHP Theme Options Framework</a> is definitely a tool you&#8217;ll want to bookmark for future use.</p>
 <div class="wdgpo_author"><a href='https://plus.google.com/107629986833959061134/posts?rel=author'><img src="https://ssl.gstatic.com/images/icons/gplus-16.png" /> Sarah Gooding on Google+</a></div><!-- PHP 5.x -->]]></content:encoded>
			<wfw:commentRss>http://wpmu.org/introducing-nhp-a-new-extendable-theme-options-framework-for-wordpress/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Stop Writing Stupid Tutorials</title>
		<link>http://wpmu.org/stop-writing-stupid-tutorials/</link>
		<comments>http://wpmu.org/stop-writing-stupid-tutorials/#comments</comments>
		<pubDate>Thu, 12 Apr 2012 14:00:36 +0000</pubDate>
		<dc:creator>Thord Daniel Hedengren</dc:creator>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[Featured]]></category>
		<category><![CDATA[Opinion]]></category>
		<category><![CDATA[annoying]]></category>
		<category><![CDATA[caffeine]]></category>
		<category><![CDATA[stupid]]></category>
		<category><![CDATA[tutorials]]></category>

		<guid isPermaLink="false">http://wpmu.org/?p=76102</guid>
		<description><![CDATA[I&#8217;m going to start you guys off with a quote today, signed the always excellent Konstantin Kovshenin: Is it considered “cool” to copy/paste all my plugins into my theme’s functions.php file? Now why would he write something like that? It [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m going to start you guys off with a quote today, signed the always excellent <a href="http://kovshenin.com/2012/how-to-write-a-terrible-wordpress-tutorial/">Konstantin Kovshenin</a>:</p>
<blockquote><p>Is it considered “cool” to copy/paste all my plugins into my theme’s functions.php file?</p></blockquote>
<p>Now why would he write something like that? It is part of a paragraph (obviously) that makes fun of all these &#8220;paste this code into your theme&#8217;s functions.php file&#8221; tutorials out there. Sarcasm all around, and you all know how I love that shit. And irony, irony is also great fun. Ironing, not so much.</p>
<p>I&#8217;m sure I don&#8217;t need to tell you, dear reader who adore me more than anything in the whole wide (wild?) world, that filling your functions.php file with code you found using Google and a more or less accurate search query <strong>is a bad idea.</strong> You know this. You don&#8217;t put anything in functions.php unless it truly belong there.</p>
<p>Granted, not everyone agrees on what actually belongs in functions.php. There might even be a time when things that usually belongs in plugins makes more sense in functions.php, it would all depend on the project. <strong>I won&#8217;t condone such thinking in this column.</strong></p>
<p>Also, I&#8217;m high on caffeine.</p>
<p><iframe width="685" height="514" src="http://www.youtube.com/embed/JP7EQ6e5d1c?fs=1&#038;feature=oembed" frameborder="0" allowfullscreen></iframe></p>
<p>So you know that you shouldn&#8217;t post everything in functions.php, Kovshenin certainly knows it, and I&#8217;m pretty sure your grandma&#8217;s cat has a pretty good idea what features needs to be portable and what goes in functions.php too. We all know it, right? Right. Still, since Google will find this post and confuse the hell out of people, I&#8217;ll spell it out in two simple rules:</p>
<ol>
<li>Functionality that is entirely unique to your theme should be in your theme. That includes your theme&#8217;s functions.php file, obviously.</li>
<li>Functionality that you would want to keep when changing themes should be in a plugin, since that wouldn&#8217;t disappear just because you activated a new theme.</li>
</ol>
<p>Got it? Good.</p>
<p>Problem is, people who are writing WordPress tutorials doesn&#8217;t. And those tutorials will be published online, I hear this is the latest thing but wouldn&#8217;t know for sure since I&#8217;m submitting my column via a secretary who prints them out on a typewriter and send them via pigeons to wherever it is that this very site I&#8217;m apparently writing for is located. In fact, just last week I learned that you can find these words of mine on the internet. I thought this was a printed magazine, because surely that is something we need about a web publishing platform, right?</p>
<p>Actually, maybe we do. I just wouldn&#8217;t buy it. It would probably feature tutorials telling me to paste stupid code into my theme&#8217;s functions.php.</p>
<p>So, to conclude: <strong>Stop writing these stupid tutorials!</strong></p>
<p><em>Shameless self-promotion: If you&#8217;re so inclined, I&#8217;m covering this in <a href="http://tdh.me/books/smashing-wordpress-beyond-the-blog-3rd-edition/" title="Smashing WordPress: Beyond the Blog, 3rd Edition">the third edition of Smashing WordPress: Beyond the Blog</a>.</em></p>
<p>Photo credit: <a href="http://www.flickr.com/photos/37062004@N07/3537233024/">Daniel Finnerty</a> (CC)</p>
<!-- PHP 5.x -->]]></content:encoded>
			<wfw:commentRss>http://wpmu.org/stop-writing-stupid-tutorials/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How to Create a WordPress Widget: 4 Killer Tutorials You Should Read</title>
		<link>http://wpmu.org/create-a-wordpress-widget/</link>
		<comments>http://wpmu.org/create-a-wordpress-widget/#comments</comments>
		<pubDate>Sat, 31 Mar 2012 14:36:31 +0000</pubDate>
		<dc:creator>Tim Gregg</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[how to create a wordpress widget]]></category>
		<category><![CDATA[widget development]]></category>
		<category><![CDATA[widget tutorials]]></category>
		<category><![CDATA[widgetized wordpress themes]]></category>
		<category><![CDATA[wordpress widgets]]></category>

		<guid isPermaLink="false">http://wpmu.org/?p=74498</guid>
		<description><![CDATA[Want to test your development skills and create your own WordPress widget? Check out these tutorials.]]></description>
			<content:encoded><![CDATA[<p><strong>There comes a time in every blogger&#8217;s life when they yearn to create their own WordPress widget.</strong> </p>
<p>They grow tired of the default selection of widgets that ship with WordPress, and try as they might, they just can&#8217;t find what they&#8217;re looking for in the <a href="http://wordpress.org/extend/plugins/tags/widget" target="_blank">WordPress Plugin Directory</a>.</p>
<p>If this sounds like you, perhaps it&#8217;s time to step up your game and . . .</p>
<p><div id="attachment_75296" class="wp-caption aligncenter" style="width: 650px"><a href="http://wpmu.org/wp-content/uploads/2012/03/Create-WordPress-widgets.jpg" rel="lightbox[74498]" title="Create WordPress widgets"><img src="http://wpmu.org/wp-content/uploads/2012/03/Create-WordPress-widgets.jpg" alt="How to create your very own WordPress widget" title="Create WordPress widgets" width="640" height="427" class="size-full wp-image-75296" /></a><p class="wp-caption-text">your very own WordPress widget!</p></div><br />
</p>
<h2>Getting started with widget development</h2>
<p><strong>At a minimum, you&#8217;ll need the following:</strong></p>
<ul>
<li>An understanding of the <a href="http://codex.wordpress.org/Widgets_API" target="_blank">Widgets API</a></li>
<li>At least a passing familiarity with PHP scripting</li>
</ul>
<p>If you&#8217;re still a bit hazy on the whole concept of WordPress widgets, and how and why they came to be, you should probably brush up on your general knowledge before you take a crack at any development of your own.</p>
<p>Check out the <a href="http://codex.wordpress.org/WordPress_Widgets" target="_blank">introductory section on widgets</a> in the WordPress Codex, which will point you in the direction of some other excellent resources for further reading. You could also take a look at <a href="http://automattic.com/code/widgets/" target="_blank">this page on the Automattic blog</a> for some additional background on how widgets became a part of WordPress.</p>
<h2>Four excellent tutorials on creating WordPress widgets</h2>
<p>If you&#8217;re ready to take the plunge and write your own widget, we&#8217;ve scoured the interwebs and rounded up some high quality tutorials to help you get the ball rolling. These resources should help you immensely on your journey to glorious Widgetdom. They&#8217;re arranged roughly in order of complexity, from simplest to hardest.</p>
<h3><a href="http://www.makeuseof.com/tag/how-to-create-wordpress-widgets/" target="_blank">How to Create WordPress Widgets</a></h3>
<p><strong>from <a href="http://makeuseof.com" target="_blank">MakeUseOf.com</a></strong></p>
<p>This tutorial focuses on creating basic widgets with limited functionality. A good place to start for first-time widget developers.</p>
<h3><a href="http://azuliadesigns.com/create-wordpress-widgets/" target="_blank">Creating WordPress Widgets</a></h3>
<p><strong>from <a href="http://azuliadesigns.com/" target="_blank">Azulia Designs</a></strong></p>
<p>Another entry-level tutorial that gives you a broad overview of creating widget-enabled plugins, as well as  widgetizing WordPress themes. Well-written and easy to follow. </p>
<h3><a href="http://www.johnathanandersendesign.com/online/?page_id=66" target="_blank">Build Your Own WordPress Widget</a></h3>
<p><strong>from <a href="http://johnathanandersendesign.com/" target="_blank">Johnathan Andersen Design</a></strong></p>
<p>This tutorial is getting a little more into the technical ends of things, with a more detailed writing style and greater level of assumed knowledge. If you can get your head around the first two articles, this one should take your widget writing skills to the next level.</p>
<h3><a href="http://www.wproots.com/advanced-wordpress-widgets/" target="_blank">Advanced WordPress Widgets</a></h3>
<p><strong>from <a href="http://www.wproots.com/" target="_blank">WP Roots</a></strong></p>
<p>Another higher-end tute that takes you right into the meaty heart of advanced widget development. It&#8217;s quite long and detailed, so we&#8217;d recommend reading the more basic articles first, and making sure your PHP knowledge is up to scratch.</p>
<p><em><strong>Over to you &#8211; have you attempted to write your own WordPress widget? How did it turn out? Can you recommend any good resources for learning widget development?</strong></em></p>

<p style="text-align: right;"><sub><em>Photo courtesy of <a href="http://www.flickr.com/photos/wonderfullycomplex/3352954780/sizes/z/in/photostream/" target="_blank">Wonderfully Complex</a>.</em></sub></p>
<!-- PHP 5.x -->]]></content:encoded>
			<wfw:commentRss>http://wpmu.org/create-a-wordpress-widget/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Making Google + Work For WordPress</title>
		<link>http://wpmu.org/making-google-work-for-wordpress/</link>
		<comments>http://wpmu.org/making-google-work-for-wordpress/#comments</comments>
		<pubDate>Mon, 26 Mar 2012 14:45:15 +0000</pubDate>
		<dc:creator>Austin Gunter &#124; WP Engine</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[google plus]]></category>
		<category><![CDATA[google+ page]]></category>
		<category><![CDATA[open graph]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress plugin]]></category>

		<guid isPermaLink="false">http://wpmu.org/?p=74725</guid>
		<description><![CDATA[This guest post is by Austin Gunter, the Brand Champion and Blogger over at WP Engine. WP Engine offers superfast managed WordPress hosting for huge popular sites, as well as small business owners who prioritize customer experience online. Integrating Google+ [...]]]></description>
			<content:encoded><![CDATA[<div style="clear: both;margin-bottom: 20px"><em>This guest post is by Austin Gunter, the Brand Champion and Blogger over at WP Engine. WP Engine offers superfast <a href="http://wpengine.com">managed WordPress hosting</a> for huge popular sites, as well as small business owners who prioritize customer experience online.</em></div>
<p><a href="http://wpmu.org/making-google-work-for-wordpress/google-logo/" rel="attachment wp-att-74732"><img class=" wp-image-74732 alignleft" src="http://wpmu.org/wp-content/uploads/2012/03/Google+-logo-297x300.jpg" alt="Google+ Logo" width="238" height="240" /></a></p>
<p>Integrating Google+ with WordPress is becoming as essential as connecting WordPress to the Open Graph.</p>
<p>When Google+ showed up in Social Media land lots of people (including me)  believed it didn&#8217;t make sense for Google to try and copy Facebook and create their own social network, especially when Facebook owned the market.  But it turns out that Google+ didn’t want to do social, they just wanted to “improve” search, which is exactly what Google+ does.</p>
<p>Google is using Google+ to improve search results beyond just content. Content is just part of the equation.  The 62 million users of Google+ are adding the next two legs of Panda&#8217;s  algorithm: Relationships + Identity = &#8220;Authorship.&#8221;</p>
<p>Even If most people don&#8217;t actually use Google+ after signing up, it doesn’t matter.  By signing up, you give Google enough personal data (name, birthday, location, email, etc),  to dramatically improve your search results, and ultimately serve better targeted ads.  This is the same user data Facebook and Twitter wouldn’t license, so Google went direct to the user to get it.</p>
<p>Search is now about Content + Relationships + Identity.  And  Google+ links your content to your Identity and your Relationships in an attempt to calculate your influence.</p>
<p>The Relationships are the Circles.  It&#8217;s not clear how this is going to be measured yet, but we can assume that the more people, and especially the more influential people who encircle your blog will be a new factor in how well your content ranks.  Relationships help us make a connection with someone, or their blog, or a company.  Online relationships are nurtured with consistent, and quality content.</p>
<p>Now, your Identity online is comprised of each post, each comment, each website that you contribute to over your life.  Black hat SEO content will be bad for your Identity, and good Content will boost your identity.  Suddenly your &#8220;status&#8221; can be measured in an algorithm, and the internet isn&#8217;t the anonymous free-for-all that it was in the 90s.  Your Identity is becoming as important to search results as a keyword or backlinks.  And since Google still owns search, if you don’t take advantage of this, your Google search results will begin to suffer.</p>
<p>So back to your WordPress.  If you want your sites and content to be ranking, you&#8217;ll want as many +1&#8242;s and shares on Google+ as possible.  Each time your content is bumped or shared on Google+, your Authorship will get a bump inside Panda.  So let’s go ahead and make this happen.</p>
<h3>Linking Google+ to WordPress</h3>
<p>You need to have a Google+ profile first, and then it just takes a couple lines of code in your theme.  Unfortunately, it’s not as cut and dry as Facebook’s developer tools.</p>
<p>The first step is to link your Google+ profile to your website by adding the URL to the Contributor to section in the right sidebar:</p>
<div id="attachment_74726" class="wp-caption aligncenter" style="width: 225px"><a href="http://wpmu.org/making-google-work-for-wordpress/screen-shot-2012-03-22-at-11-39-27-am/" rel="attachment wp-att-74726"><img class="size-medium wp-image-74726  " src="http://wpmu.org/wp-content/uploads/2012/03/Screen-Shot-2012-03-22-at-11.39.27-AM-215x300.png" alt="How to link your Google+ profile to blogs you contribute to" width="215" height="300" /></a><p class="wp-caption-text">&quot;Contributor To&quot;</p></div>
<p>I’m using my Google+ profile as an example.  You can see the sites that I’m contributing to, and all I have listed are my blog at <a href="http://austingunter.com/">austingunter.com</a>, and the WP Engine blog at <a href="http://wpengine.com/blog">wpengine.com/blog</a>.</p>
<p>From there, you wanna go ahead and create a Google+ fanpage for the site, using the Create a Site button on the bottom right of the page.</p>
<div id="attachment_74727" class="wp-caption aligncenter" style="width: 299px"><a href="http://wpmu.org/making-google-work-for-wordpress/screen-shot-2012-03-22-at-11-39-35-am/" rel="attachment wp-att-74727"><img class="size-full wp-image-74727" src="http://wpmu.org/wp-content/uploads/2012/03/Screen-Shot-2012-03-22-at-11.39.35-AM.png" alt="Create a Google+ Page for WordPress" width="289" height="254" /></a><p class="wp-caption-text">Create a Google+ Page for WordPress</p></div>
<p>Create the page, and categorize it however you’d like.  Think of it like your Facebook page, except it automatically gets crawled and indexed.  Just a note, you can’t have your content auto-posted to Google+ like you can on a Facebook page yet, but still.</p>
<p>The next step is to add this bit of code to your site next to the rest of your social media profiles using a text widget, OR using the <a href="http://premium.wpmudev.org/project/google-1">WPMU Google+ Plugin</a> :-).  The long number in the URL identifies your Google+ profile, so you’ll want to copy YOUR profile number, not mine.</p>
<blockquote>
<pre>&lt;a rel="me" href="https://plus.google.com/<strong>109377978379208666849</strong>?rel=author"&gt;
&lt;img src="http://ssl.gstatic.com/images/icons/gplus-32.png" width="32" height="32"&gt;
&lt;/a&gt;</pre>
</blockquote>
<p>This is what it will look like:</p>
<div id="attachment_74728" class="wp-caption aligncenter" style="width: 310px"><a href="http://wpmu.org/making-google-work-for-wordpress/screen-shot-2012-03-22-at-11-39-52-am/" rel="attachment wp-att-74728"><img class="size-medium wp-image-74728" src="http://wpmu.org/wp-content/uploads/2012/03/Screen-Shot-2012-03-22-at-11.39.52-AM-300x226.png" alt="Google+ Button on WordPress" width="300" height="226" /></a><p class="wp-caption-text">Google+ Button on WordPress</p></div>
<p>The last piece you need to add is your Author Page.  This is the final piece that you need in order for Google+ to get your Identity properly indexed with your content.  In Genesis, all you need to do is enable your Author Profile box, and then you can add a custom link into your menu that will look like this: <a href="http://www.austingunter.com/author/austin/">http://www.austingunter.com/author/austin/</a>, and generate a menu that looks like this.</p>
<div id="attachment_74729" class="wp-caption aligncenter" style="width: 310px"><a href="http://wpmu.org/making-google-work-for-wordpress/screen-shot-2012-03-22-at-11-39-43-am/" rel="attachment wp-att-74729"><img class="size-medium wp-image-74729" src="http://wpmu.org/wp-content/uploads/2012/03/Screen-Shot-2012-03-22-at-11.39.43-AM-300x104.png" alt="Author Page on WordPress for Google+" width="300" height="104" /></a><p class="wp-caption-text">Author Page on WordPress for Google+</p></div>
<p>That’s it!  To test it out, set up some Google Alerts on your name (if you haven’t already), and then monitor alerts for your name and content.  In my testing, +1s will index content as soon as 24 hours later.  Authorship and Identity may take up to 14 days to connect Google+ to everything else.  Par for the course, Google isn’t revealing any details about HOW this works, and it’s subject to change.  But this is still an awesome thing to add to your blog AND all your client’s blogs as well.</p>
<!-- PHP 5.x -->]]></content:encoded>
			<wfw:commentRss>http://wpmu.org/making-google-work-for-wordpress/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Get Some Sexy AJAX Functionality With These Free WordPress Plugins</title>
		<link>http://wpmu.org/free-ajax-wordpress-plugins/</link>
		<comments>http://wpmu.org/free-ajax-wordpress-plugins/#comments</comments>
		<pubDate>Wed, 22 Feb 2012 17:39:44 +0000</pubDate>
		<dc:creator>Tim Gregg</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[Plugins]]></category>
		<category><![CDATA[ajax]]></category>
		<category><![CDATA[ajax for wordpress]]></category>
		<category><![CDATA[ajax-powered wordpress plugins]]></category>
		<category><![CDATA[free wordpress plugins]]></category>
		<category><![CDATA[use ajax on your site]]></category>

		<guid isPermaLink="false">http://wpmu.org/?p=72447</guid>
		<description><![CDATA[Ajax-powered plugins can add sleek, dynamic features to your WordPress site]]></description>
			<content:encoded><![CDATA[<p><a href="http://wpmu.org/wp-content/uploads/2012/02/bigstock_Ajax_3539637.jpg" rel="lightbox[72447]" title="Ajax WordPress Plugins for free"><img src="http://wpmu.org/wp-content/uploads/2012/02/bigstock_Ajax_3539637-300x200.jpg" alt="Use these free Ajax-powered plugins on your WordPress site" title="Ajax WordPress Plugins for free" width="300" height="200" class="alignright size-medium wp-image-72604" /></a>If you pay much attention to trends and developments in the WordPress universe, you&#8217;ve no doubt heard something about the web programming technique known as Ajax, and how it can be used to make your WordPress site more dynamic, engaging and downright sexy. </p>
<p>If you haven&#8217;t, then it&#8217;s high time you got schooled.</p>
<h2>The mighty Ajax</h2>
<p>Ajax, sometimes capitalized as AJAX, is a kind of lopsided acronym for <strong>Asynchronous Javascript and XML.</strong> Without venturing too far into the technical mumbo-jumbo, Ajax is essentially a tool that allows you to update part of a web page with new content, without having to reload the entire page. </p>
<p>Ajax is often the technology behind contact forms, pop-up windows, maps, and other dynamic elements of a website.<br />
<br />
Ajax is not a programming language in itself, but rather a method of combining various standards, like HTML, CSS and JavaScript, to achieve the desired result.</p>
<p>Properly explaining how Ajax works is beyond the scope of this article, but if you&#8217;re interested in some heavier reading then I would suggest you take a look at these:</p>
<ul>
<li><a href="http://en.wikipedia.org/wiki/Ajax_(programming)" target="_blank">Ajax Wikipedia Article</a></li>
<li><a href="http://wp.smashingmagazine.com/2011/10/18/how-to-use-ajax-in-wordpress/" target="_blank">How to Use Ajax in WordPress (Smashing Magazine)</a></li>
<li><a href="http://www.w3schools.com/ajax/default.asp" target="_blank">Ajax Tutorial on W3Schools</a>
</li>
</ul>
<h2>Ajax and WordPress</h2>
<p><a href="http://wpmu.org/wp-content/uploads/2012/02/Free-Ajax-WordPress-Plugins.jpg" rel="lightbox[72447]" title="Free Ajax WordPress Plugins"><img src="http://wpmu.org/wp-content/uploads/2012/02/Free-Ajax-WordPress-Plugins.jpg" alt="Add Ajax functionality to your WordPress site with these plugins" title="Free Ajax WordPress Plugins" width="240" height="240" class="alignright size-full wp-image-72605" /></a>Ajax has been widely deployed in WordPress plugins and themes over the last few years, and there&#8217;s a fairly good chance that you&#8217;re already using the technology, in one capacity or another, on your own site.</p>
<p>Nonetheless, you might be interested in exploring other ways you can harness the power of Ajax to massively increase the wow-factor of your WordPress project. If you don&#8217;t fancy yourself a programmer, then it&#8217;s probably best to start with a few good plugins.</p>
<h2>Some free Ajax-powered plugins for WordPress</h2>
<p>These are five great plugins that will add sleek and sexy Ajax-powered goodness to your WordPress site. They&#8217;re all available for free in the WordPress Plugin Directory.</p>
<li><a href="http://wordpress.org/extend/plugins/contact-form-7/" target="_blank">Contact Form 7</a> &#8211; The classic free contact form for WordPress, simple and highly customizable.</li>
<li><a href="http://wordpress.org/extend/plugins/ajax-comment-preview/" target="_blank">Ajax Comment Preview</a> &#8211; I covered this one in more detail last week &#8211; <a href="http://wpmu.org/jquery-comment-preview-plugin-wordpress/" target="_blank">article is here</a>.</li>
<li><a href="http://wordpress.org/extend/plugins/search-autocomplete/" target="_blank">Search Autocomplete</a> &#8211; Adds automatic drop-down suggestions to the search field on your site.
</li>
<li><a href="http://wordpress.org/extend/plugins/wp-polls/" target="_blank">WP-Polls</a> &#8211; Popular plugin for embedding Ajax-powered polls in WordPress posts and pages.</li>
<li><a href="http://wordpress.org/extend/plugins/ajax-read-more/" target="_blank">AJAX Read More</a> &#8211; Adds a simple, expandable &#8216;read more&#8217; link to your post excerpts, without needing to reload the page.</li>
</ul>
<p><br/><br />
<em><strong>Over to you &#8211; what are your favorite Ajax-powered WordPress plugins? Share your recommendations with us.</strong></em><br />
</p>
<p style="text-align: right;"><sub><em>Images: <a href="http://www.bigstockphoto.com/image-3539637/stock-photo-ajax" target="_blank">Bigstockphoto (Ajax)</a> and <a href="http://www.flickr.com/photos/bobbigmac/5036291025/sizes/s/in/photostream/" target="_blank">Bobbi G Mac</a>.</em></sub></p>
<!-- PHP 5.x -->]]></content:encoded>
			<wfw:commentRss>http://wpmu.org/free-ajax-wordpress-plugins/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

