<?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>Michael Fields</title>
	<atom:link href="http://wordpress.mfields.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://wordpress.mfields.org</link>
	<description>I&#039;m a Theme Wrangler at Automattic! Rock!</description>
	<lastBuildDate>Fri, 21 Sep 2012 09:18:09 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>WordPress Wishlist: Media</title>
		<link>http://wordpress.mfields.org/2011/wordpress-wishlist-media/</link>
		<comments>http://wordpress.mfields.org/2011/wordpress-wishlist-media/#comments</comments>
		<pubDate>Sun, 27 Nov 2011 17:52:50 +0000</pubDate>
		<dc:creator>Michael Fields</dc:creator>
				<category><![CDATA[Random Thoughts]]></category>

		<guid isPermaLink="false">http://wordpress.mfields.org/?p=541</guid>
		<description><![CDATA[Today I saw that WooThemes posted a survey which asked the public to: Tell us how you’re using WordPress &#38; what would make it better. I find surveys like these to be really useful because they can serve as a catalyst for positive growth. I filled it out and after all of the basic survey-style]]></description>
				<content:encoded><![CDATA[<p>Today I saw that WooThemes posted <a href="http://www.woothemes.com/2011-survey/">a survey</a> which asked the public to: <em>Tell us how you’re using WordPress &amp; what would make it better.</em> I find surveys like these to be really useful because they can serve as a catalyst for positive growth.</p>
<p><span id="more-541"></span></p>
<p>I filled it out and after all of the basic survey-style questions, I was asked the following: </p>
<blockquote><p>If Santa could bring you any new features / changes for WordPress for Christmas, what would you put on your wishlist?</p></blockquote>
<p>To this I answered:</p>
<h2><span title="More">Moar</span> Media Goodness!!!</h2>
<ul>
<li>A way to separate &#8220;assets&#8221; from &#8220;content&#8221; in the Media Library.</li>
<li>Automatic side-loading of media from the Media Uploader.</li>
<li>A straight-forward API enabling use of the Media Upload Modal in extensions.</li>
<li>The ability for a theme to define multiple types of images like Logo, Custom Header, Body Background, Content Background, etc. We have two of these already, but IMHO it would be awesome if themes could define more than these two.</li>
<li>The ability for a theme to easily asign multiple background image options that a use can choose.</li>
</ul>
<p>Just wondering if you took the survey too &#8230; If so, what is on your WordPress wishlist?</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.mfields.org/2011/wordpress-wishlist-media/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Re-key an Indexed Array of Post Objects by Post ID</title>
		<link>http://wordpress.mfields.org/2011/rekey-an-indexed-array-of-post-objects-by-post-id/</link>
		<comments>http://wordpress.mfields.org/2011/rekey-an-indexed-array-of-post-objects-by-post-id/#comments</comments>
		<pubDate>Fri, 29 Jul 2011 15:18:40 +0000</pubDate>
		<dc:creator>Michael Fields</dc:creator>
				<category><![CDATA[Code]]></category>

		<guid isPermaLink="false">http://wordpress.mfields.org/?p=498</guid>
		<description><![CDATA[Ever need to know if a certain post was contained in an array returned by get_posts() or get_pages()?. Me too! Usually, I would manually loop over the array and do a bit of discovery. I recently came up with a new trick to re-key post arrays that is a bit cleaner. If you run something]]></description>
				<content:encoded><![CDATA[<p>Ever need to know if a certain post was contained in an array returned by <code>get_posts()</code> or <code>get_pages()</code>?. Me too! Usually, I would manually loop over the array and do a bit of discovery. I recently came up with a new trick to re-key post arrays that is a bit cleaner.</p>
<p><span id="more-498"></span></p>
<p>If you run something like:</p>
<pre class="brush: php; title: ; notranslate">
$pages = get_pages();
print '&lt;pre&gt;' . print_r( $pages, true ) . '&lt;/pre&gt;';
</pre>
<p>&#8230; something similar to the following will be printed to the screen <em>(example truncated for brevity)</em>:</p>
<pre>
[0] => stdClass Object
	[ID] => 675
	[post_author] => 5
	[post_date] => 2010-07-25 19:40:01
	[post_date_gmt] => 2010-07-25 19:40:01
	[post_content] => This site is using the standard ...
	[post_title] => About The Tests

[1] => stdClass Object
	[ID] => 501
	[post_author] => 6
	[post_date] => 2010-08-01 09:42:26
	[post_date_gmt] => 2010-08-01 16:42:26
	[post_content] => The last item in this page's content  ...
	[post_title] => Clearing Floats

[2] => stdClass Object
	[ID] => 174
	[post_author] => 5
	[post_date] => 2007-12-11 16:25:40
	[post_date_gmt] => 2007-12-11 06:25:40
	[post_content] => Level 1 of the reverse hierarchy test ...
	[post_title] => Level 1
	)

[3] => stdClass Object
	[ID] => 173
	[post_author] => 5
	[post_date] => 2007-12-11 16:23:33
	[post_date_gmt] => 2007-12-11 06:23:33
	[post_content] => Level 2 of the reverse hierarchy test.
	[post_title] => Level 2
</pre>
<p>Both <code>get_posts()</code> and <code>get_pages()</code> will return an indexed array of post objects. The keys in these arrays reflect the order in which the posts were returned from the database. I have always preferred the way that <code>get_children()</code> returns it results. It too returns an indexed array of post objects, however the array is indexed by post id. This is very helpful in many contexts.</p>
<p>I&#8217;ve recently discovered the not-so-new WordPress core function <code>wp_list_pluck()</code>. With the help of this function, I was able to come up with the following few lines to re-key the arrays returned by <code>get_posts()</code> and <code>get_pages()</code>.</p>
<pre class="brush: php; title: ; notranslate">
$pages = get_pages();
if ( ! empty( $pages ) ) {
	$ids   = wp_list_pluck( $pages, 'ID' );
	$pages = array_combine( $ids, $pages );
}
</pre>
<p>Now you get something a bit easier to work with:</p>
<pre>
[675] => stdClass Object
	[ID] => 675
	[post_author] => 5
	[post_date] => 2010-07-25 19:40:01
	[post_date_gmt] => 2010-07-25 19:40:01
	[post_content] => This site is using the standard ...
	[post_title] => About The Tests

[501] => stdClass Object
	[ID] => 501
	[post_author] => 6
	[post_date] => 2010-08-01 09:42:26
	[post_date_gmt] => 2010-08-01 16:42:26
	[post_content] => The last item in this page's content  ...
	[post_title] => Clearing Floats

[174] => stdClass Object
	[ID] => 174
	[post_author] => 5
	[post_date] => 2007-12-11 16:25:40
	[post_date_gmt] => 2007-12-11 06:25:40
	[post_content] => Level 1 of the reverse hierarchy test ...
	[post_title] => Level 1
	)

[173] => stdClass Object
	[ID] => 173
	[post_author] => 5
	[post_date] => 2007-12-11 16:23:33
	[post_date_gmt] => 2007-12-11 06:23:33
	[post_content] => Level 2 of the reverse hierarchy test.
	[post_title] => Level 2
</pre>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.mfields.org/2011/rekey-an-indexed-array-of-post-objects-by-post-id/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Theming for the Masses</title>
		<link>http://wordpress.mfields.org/2011/theming-for-the-masses/</link>
		<comments>http://wordpress.mfields.org/2011/theming-for-the-masses/#comments</comments>
		<pubDate>Sun, 24 Jul 2011 02:26:50 +0000</pubDate>
		<dc:creator>Michael Fields</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://wordpress.mfields.org/?p=493</guid>
		<description><![CDATA[I just got word that my 2011 WordCamp Seattle presentation titled &#8220;Theming for the Masses&#8221; has been uploaded to wordpress.tv. While the video does not yet have an official page on the site, the video appears to be available and I&#8217;ve posted it here. Visit the official page on WordPress.tv! Coverage WordCamp Seattle by Morgan]]></description>
				<content:encoded><![CDATA[<p>I just got word that my 2011 WordCamp Seattle presentation titled &#8220;Theming for the Masses&#8221; has been uploaded to <a href="http://wordpress.tv/">wordpress.tv</a>. While the video does not yet have an official page on the site, the video appears to be available and I&#8217;ve posted it here.</p>
<p><span id="more-493"></span></p>
<div id="v-vyDjM104-1" class="video-player"><embed id="v-vyDjM104-1-video" src="http://s0.videopress.com/player.swf?v=1.03&amp;guid=vyDjM104&amp;isDynamicSeeking=true" type="application/x-shockwave-flash" width="700" height="392" title="Michael Fields: Theming for the Masses" wmode="direct" seamlesstabbing="true" allowfullscreen="true" allowscriptaccess="always" overstretch="true"></embed></div>
<p>Visit the official page on <a href="http://wordpress.tv/2011/08/17/michael-fields-theming-for-the-masses/">WordPress.tv</a>!</p>
<h2>Coverage</h2>
<ul>
<li><a href="http://alchemycs.com/2011/04/wordcamp-seattle/">WordCamp Seattle</a> by Morgan Kay of <a href="http://alchemycs.com/">Alchemy Computer Solutions</a></li>
<li><a href="http://theme.fm/2011/08/5-wordcamp-videos-you-should-have-watched-1979/">5 WordCamp Videos You Should Have Watched</a> by <a href="http://theme.fm/">theme.fm</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.mfields.org/2011/theming-for-the-masses/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Template Parts for Custom Header Image.</title>
		<link>http://wordpress.mfields.org/2011/template-parts-for-custom-header-image/</link>
		<comments>http://wordpress.mfields.org/2011/template-parts-for-custom-header-image/#comments</comments>
		<pubDate>Sun, 17 Jul 2011 02:43:05 +0000</pubDate>
		<dc:creator>Michael Fields</dc:creator>
				<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://wordpress.mfields.org/?p=485</guid>
		<description><![CDATA[Personally, I have never used a custom header image like those included in the TwentyTen and TwentyEleven themes. I think that they look great on other people&#8217;s sites, just not my own. Now, when you&#8217;re theming for the masses, you can pretty much toss all of your personal preferences out the window. In my opinion,]]></description>
				<content:encoded><![CDATA[<p>Personally, I have never used a custom header image like those included in the TwentyTen and TwentyEleven themes. I think that they look great on other people&#8217;s sites, just not my own. Now, when you&#8217;re <em>theming for the masses</em>, you can pretty much toss all of your personal preferences out the window. In my opinion, a good theme should be as flexible as possible. If WordPress provides an easy-to-implement solution, it&#8217;s usually a good idea to implement it! I recently came up with a neat solution to a design problem involving custom header images.</p>
<p><span id="more-485"></span></p>
<h2>The Problem</h2>
<p>The theme should look good with or without the header image. Now, I&#8217;ve pretty much fleshed out the design of my theme at this point and I really like how it looks without a header image. The design needs to be modified if this is going to work at all.</p>
<p>The most logical place to put the header would be where the site title, tagline and primary navigation menu are currently displayed. If I inject the image directly above this information the image looks great, but this pushes the site title down by 200 pixels and I really do not like this! Another idea would be to inject the image directly below the primary navigation menu. This doesn&#8217;t really look as nice in my opinion. The image seems to look best when it is at the top of my content div. What to do? I have some cake. I want to <em>&#8220;eat it too&#8221;</em>. I just hope that the cake is not a lie!</p>
<p>The solution that I decided on involves a little bit of logic that will move the title and tagline to the top of the screen if a header image has been defined by the user.</p>
<h2>Digging Into Some Code</h2>
<p>Here&#8217;s a simplified version of a cross-section of my header.php file before I got started. This code demonstrates how the theme should work when <strong>no header image</strong> is defined. <em>(Only the relevant parts of the template are included.)</em></p>
<pre class="brush: php; title: ; notranslate">
&lt;div id=&quot;wrap&quot;&gt;

	&lt;div id=&quot;page&quot;&gt;
	&lt;?php
		print '&lt;div id=&quot;site-title&quot;&gt;' . esc_html( get_bloginfo( 'blogname' ) ) . '&lt;/div&gt;';

		print '&lt;div id=&quot;tagline&quot;&gt;' . esc_html( get_bloginfo( 'description' ) ) . '&lt;/div&gt;';

		wp_nav_menu();
	?&gt;
</pre>
<p>To add a header image that looks acceptable to me, I would need to adjust the code to look like this:</p>
<pre class="brush: php; title: ; notranslate">
&lt;div id=&quot;wrap&quot;&gt;

	&lt;?php
	print '&lt;div id=&quot;site-title&quot;&gt;' . esc_html( get_bloginfo( 'blogname' ) ) . '&lt;/div&gt;';

	print '&lt;div id=&quot;tagline&quot;&gt;' . esc_html( get_bloginfo( 'description' ) ) . '&lt;/div&gt;';

	wp_nav_menu();
	?&gt;
	&lt;div id=&quot;page&quot;&gt;
	&lt;?php
		printf(
			'&lt;div id=&quot;header-image&quot;&gt;&lt;img src=&quot;%1$s&quot; width=&quot;%2$s&quot; height=&quot;%3$s&quot; alt=&quot;%4$s&quot;&gt;&lt;/div&gt;',
			esc_url( get_header_image() ),
			esc_attr( HEADER_IMAGE_WIDTH ),
			esc_attr( HEADER_IMAGE_HEIGHT ),
			esc_attr( get_bloginfo( 'blogname' ) )
		);
	?&gt;
</pre>
<p>Notice that all of the code inside the <code>#page</code> division has been moved outside and replaced by code to generate a header image.</p>
<p>Technically, I have two unique versions of header.php at this point which needs to be dealt with. But what to do? Initially, I thought that I could add an option to allow user to choose the header template to use. I could even make one of those fancy template selectors like I&#8217;ve seen in Genesis and the Options Framework. Depending on which template the user chose, I could load a different version of header.php. Maybe I could create a custom header-image.php to help facilitate this.</p>
<p>Whenever I get the idea of adding an option to a theme, I really take a look at the situation and ask myself if it is really necessary to do so. Most of the time I am able to talk myself out of it. This shown itself to be one of those times.</p>
<h2>Two Templates Bad. One Template Good.</h2>
<p>I decided that adding a bit of logic to one header.php would probably be a better solution. Here&#8217;s a breakdown:</p>
<h3>Get some info</h3>
<p>To make a decision we will need to know if the user has defined a header image. This is very easy to do. We will use WordPress core function <code>get_header_image()</code>. This function will return a url to the header image if one has been set. If not, it will return an empty string. The first step is to store this the return value of this function in a variable.</p>
<pre class="brush: php; title: ; notranslate">
&lt;div id=&quot;wrap&quot;&gt;

	&lt;?php
		$header_image = get_header_image();
	?&gt;
</pre>
<p>The next step is to determine whether the site title, tagline and primary navigation menu should be printed outside of the page division. We decided above that this should only happen if a header image has been defined by the user. We can easily test for a non-empty value:</p>
<pre class="brush: php; title: ; notranslate">
&lt;div id=&quot;wrap&quot;&gt;
&lt;?php
	$header_image = get_header_image();
	if ( ! empty( $header_image ) ) {
		print '&lt;div id=&quot;site-title&quot;&gt;' . esc_html( get_bloginfo( 'blogname' ) ) . '&lt;/div&gt;';

		print '&lt;div id=&quot;tagline&quot;&gt;' . esc_html( get_bloginfo( 'description' ) ) . '&lt;/div&gt;';

		wp_nav_menu();
	}
?&gt;
</pre>
<p>We&#8217;ll need to add a second conditional statement inside the page div as well. If the user has defined a header image we want to print the code to display that image. If not, we will need to print site title, tagline and primary navigation menu as they will not be printed above the page division when no header image has been defined by the user.</p>
<pre class="brush: php; title: ; notranslate">
&lt;div id=&quot;page&quot; class=&quot;contain&quot; role=&quot;document&quot;&gt;

&lt;?php
	if ( ! empty( $header_image ) ) {
		printf(
			'&lt;div id=&quot;header-image&quot;&gt;&lt;img src=&quot;%1$s&quot; width=&quot;%2$s&quot; height=&quot;%3$s&quot; alt=&quot;%4$s&quot;&gt;&lt;/div&gt;',
			esc_url( get_header_image() ),
			esc_attr( HEADER_IMAGE_WIDTH ),
			esc_attr( HEADER_IMAGE_HEIGHT ),
			esc_attr( get_bloginfo( 'blogname' ) )
		);
	}
	else {
		print '&lt;div id=&quot;site-title&quot;&gt;' . esc_html( get_bloginfo( 'blogname' ) ) . '&lt;/div&gt;';

		print '&lt;div id=&quot;tagline&quot;&gt;' . esc_html( get_bloginfo( 'description' ) ) . '&lt;/div&gt;';

		wp_nav_menu( apply_filters( 'nighthawk_menu_args_primary' );
	}
?&gt;
</pre>
<h2>Duplicate Code</h2>
<p>The logic works really well and provides the result that I was after, but unfortunately we have now duplicated the code the print the site title, tagline and navigation menu. The following code appears twice:</p>
<pre class="brush: php; title: ; notranslate">
print '&lt;div id=&quot;site-title&quot;&gt;' . esc_html( get_bloginfo( 'blogname' ) ) . '&lt;/div&gt;';

print '&lt;div id=&quot;tagline&quot;&gt;' . esc_html( get_bloginfo( 'description' ) ) . '&lt;/div&gt;';

wp_nav_menu();
</pre>
<p>Now, you may be thinking: &#8220;Come on Mike, it&#8217;s only three lines. What&#8217;s the big deal?&#8221;. Well, the actual code that I&#8217;m curreny using in the theme is much longer and looks a bit like this:</p>
<pre class="brush: php; title: ; notranslate">
if ( 0 != (int) get_theme_mod( 'nighthawk_display_site_title', 1 ) ) {
	$text = get_bloginfo( 'blogname' );
	if ( ! empty( $text ) ) {
		if ( ! is_front_page() || is_paged() ) {
			$text = '&lt;a href=&quot;' . esc_url( home_url() ) . '&quot;&gt;' . esc_html( $text ) . '&lt;/a&gt;';
		}
		print &quot;\n&quot; . '&lt;div id=&quot;site-title&quot;&gt;' . $text . '&lt;/div&gt;';
	}
}

if ( 0 != (int) get_theme_mod( 'nighthawk_display_tagline', 1 ) ) {
	$text = get_bloginfo( 'description' );
	if ( ! empty( $text ) ) {
		print &quot;\n&quot; . '&lt;div id=&quot;tagline&quot;&gt;' . esc_html( $text ) . '&lt;/div&gt;';
	}
}

wp_nav_menu( apply_filters( 'nighthawk_menu_args_primary', array(
	'container'      =&gt; 'div',
	'container_id'   =&gt; 'menu-top',
	'menu_class'     =&gt; 'menu',
	'theme_location' =&gt; 'primary',
	'depth'          =&gt; 1,
	'items_wrap'     =&gt; '&lt;ul id=&quot;%1$s&quot; class=&quot;%2$s&quot; role=&quot;navigation&quot;&gt;%3$s&lt;/ul&gt;',
	'fallback_cb'    =&gt; '_nighthawk_menu_dialog',
) ) );
</pre>
<p>It&#8217;s about 8 times as long. I really hate repeating myself when writing code, so I needed a solution to deal with this. The first thought I usually have is to bundle it into a function and then call the function twice. This solves the problem of repeated code, but introduces another issue. It&#8217;s a <abbr title="pain in the astronaut">PITA</abbr> to work around. This theme is going to be released to the public and one thing that I know for sure is that people will want to customize it. putting this code inside a function and hiding it away in functions.php is pretty easy to do, but if your users are not comfortable editing php files, chances are they are going to edit php files!</p>
<p>WordPress 3.0 introduced a function called get_template_part() which is a perfect alternative to creating theme functions. In my situation, it is the perfect solution. I moved the code above into a new file which I named top.php and then, in header.php, I included this new file with get_template_part(). My header.php now looks a bit like this:</p>
<pre class="brush: php; title: ; notranslate">
&lt;div id=&quot;wrap&quot;&gt;

	&lt;?php
		$header_image = get_header_image();
		if ( ! empty( $header_image ) ) {
			get_template_part( 'top', 'with-image' );
		}
	?&gt;

	&lt;div id=&quot;page&quot; class=&quot;contain&quot; role=&quot;document&quot;&gt;

	&lt;?php
		if ( empty( $header_image ) ) {
			get_template_part( 'top', 'no-image' );
		}
		else {
			printf(
				'&lt;div id=&quot;header-image&quot;&gt;&lt;img src=&quot;%1$s&quot; width=&quot;%2$s&quot; height=&quot;%3$s&quot; alt=&quot;%4$s&quot;&gt;&lt;/div&gt;',
				esc_url( $header_image ),
				esc_attr( HEADER_IMAGE_WIDTH ),
				esc_attr( HEADER_IMAGE_HEIGHT ),
				esc_attr( get_bloginfo( 'blogname' ) )
			);
		}
	?&gt;
</pre>
<p>Now, my header works as I would like it to, the code is as clean as possible and no code has been duplicated. Good times!</p>
<h2>Did You See What I Did There???</h2>
<p>If you look closely at each instance of get_template_part() you&#8217;ll see that I am passing the optional second parameter which allows you to give content to the template. Since we are using the file in two different contexts &#8211; &#8220;with an image&#8221; and &#8220;without an image&#8221; &#8211; it made sense to do this. &#8220;Why?&#8221; you ask. Well, this will give the most control possible the the end user. After they install my theme, if they need to customize it, they can easily create a child theme so that the original theme can be updated. If they decide that they do not like the code I have provided in top.php, all they need to do is create their own top.php in their child theme and modify it as they see fit. But creating top.php will change the code that displays both <strong>inside</strong> and <strong>outside</strong> the page division. This may or may not be desirable. What if they only want to change the code that displays <strong>outside</strong> the page division? Since we added context to the template part, this is relatively easy to do. A user can create a file named top-with-image.php. This file will only be called outside of the page division and the theme will use the original top.php when this template is called <strong>inside</strong> the page division.</p>
<h2>Questions? Concerns?</h2>
<p>Hope you enjoyed this! I know I was pretty excited when I came up with this solution. If you have anything to add to the conversation, please do so in the comments section.</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.mfields.org/2011/template-parts-for-custom-header-image/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Post Format Queries</title>
		<link>http://wordpress.mfields.org/2011/post-format-queries/</link>
		<comments>http://wordpress.mfields.org/2011/post-format-queries/#comments</comments>
		<pubDate>Tue, 12 Jul 2011 18:18:02 +0000</pubDate>
		<dc:creator>Michael Fields</dc:creator>
				<category><![CDATA[Code]]></category>

		<guid isPermaLink="false">http://wordpress.mfields.org/?p=466</guid>
		<description><![CDATA[I recently finished a custom plugin for a client and after I shipped it to him, he wrote back asking if I could make a small modification. Basically, there was a loop that displayed a certain number of posts and he wanted to excluded posts formatted as &#8220;links&#8221;. It dawned on me that I have]]></description>
				<content:encoded><![CDATA[<p>I recently finished a custom plugin for a client and after I shipped it to him, he wrote back asking if I could make a small modification. Basically, there was a loop that displayed a certain number of posts and he wanted to excluded posts formatted as &#8220;links&#8221;. It dawned on me that I have never really done this before and was excited make it happen!</p>
<p><span id="more-466"></span></p>
<p>I knew that this <em>should</em> be relatively easy to accomplish. WordPress 3.1 extended the way that taxonomies can be queried which allows for a great deal of fine tuning. Read more about <a href="http://ottopress.com/2010/wordpress-3-1-advanced-taxonomy-queries/">Advanced Taxonomy Queries in WordPress</a>.</p>
<p>So, without further ado, here&#8217;s the solution &#8230; as well as a couple of things I learned along the way.</p>
<h2>5 Most Recent Posts &#8211; No Links</h2>
<p>Passing the <code>tax_query</code> argument to <code>get_posts()</code>. The following configuration allows you to exclude all posts having the &#8220;Link&#8221; post format.</p>
<pre class="brush: php; title: ; notranslate">
$no_links = get_posts( array(
	'tax_query' =&gt; array(
		array(
		  'taxonomy' =&gt; 'post_format',
		  'field'    =&gt; 'slug',
		  'terms'    =&gt; array( 'post-format-link' ),
		  'operator' =&gt; 'NOT IN'
		)
	)
) );</pre>
<h2>Only Links</h2>
<p>By replacing <code>NOT IN</code> with <code>IN</code> for the <code>operator</code> argument, we can easily make the query return only link posts.</p>
<pre class="brush: php; title: ; notranslate">
$links = get_posts( array(
	'tax_query' =&gt; array(
		array(
		  'taxonomy' =&gt; 'post_format',
		  'field'    =&gt; 'slug',
		  'terms'    =&gt; array( 'post-format-link' ),
		  'operator' =&gt; 'IN'
		)
	)
) );</pre>
<h2>More Than Just Links!</h2>
<p>If you need to include or exclude posts of another format, you can modify the value of the <code>terms</code> arg with anything from the following list:</p>
<ul>
<li><code>post-format-aside</code></li>
<li><code>post-format-audio</code></li>
<li><code>post-format-chat</code></li>
<li><code>post-format-gallery</code></li>
<li><code>post-format-image</code></li>
<li><code>post-format-link</code></li>
<li><code>post-format-status</code></li>
<li><code>post-format-quote</code></li>
<li><code>post-format-video</code></li>
</ul>
<h2>Combine a Few Different Post Formats</h2>
<p>The <code>terms</code> arg has been designed specifically to enable you to include or exclude more than one term. If you wanted to exclude both links and status updates from your query, the following should do the trick.</p>
<pre class="brush: php; title: ; notranslate">
$exclude_links_and_status = get_posts( array(
	'tax_query' =&gt; array(
		array(
		  'taxonomy' =&gt; 'post_format',
		  'field'    =&gt; 'slug',
		  'terms'    =&gt; array( 'post-format-link', 'post-format-status' ),
		  'operator' =&gt; 'NOT IN',
		)
	)
) );
</pre>
<h2>Showing Only Standard Posts</h2>
<p>Perhaps you have a blog with posts of many, many different formats (These are good problems to have <abbr title="By the way">btw</abbr>. I only use two ). What do you do if you only want to display a list of <em>regular-old-posts</em>? You&#8217;ll probably want to exclude all of the post formats.</p>
<h3>Get a List of All Post Formats</h3>
<pre class="brush: php; title: ; notranslate">
$formats = get_post_format_slugs();
</pre>
<h3>Massage the Post Formats</h3>
<p>The <code>get_post_format_slugs()</code> function returns the simple, easy to read name for each post format. We will need to use the <em>long-form</em> name of the post format in our query. We&#8217;ll just loop over format names and add a bit of info to the beginning of name.</p>
<pre class="brush: php; title: ; notranslate">
foreach ( (array) $formats as $i =&gt; $format ) {
	$formats[$i] = 'post-format-' . $format;
}
</pre>
<h3>Run the Query</h3>
<p>All that&#8217;s left to do is pass of the the formats as the <code>terms</code> argument and set the <code>operator</code> argument to <code>NOT IN</code>.</p>
<pre class="brush: php; title: ; notranslate">
$standard_posts = get_posts( array(
	'tax_query' =&gt; array(
		array(
		  'taxonomy' =&gt; 'post_format',
		  'field'    =&gt; 'slug',
		  'terms'    =&gt; $formats,
		  'operator' =&gt; 'NOT IN'
		)
	)
) );
</pre>
<p>Here&#8217;s all of it together for easy copy-and-paste. I even threw in a simple loop at no extra charge!</p>
<pre class="brush: php; title: ; notranslate">
$formats = get_post_format_slugs();

foreach ( (array) $formats as $i =&gt; $format ) {
	$formats[$i] = 'post-format-' . $format;
}

$standard_posts = get_posts( array(
	'tax_query' =&gt; array(
		array(
		  'taxonomy' =&gt; 'post_format',
		  'field'    =&gt; 'slug',
		  'terms'    =&gt; $formats,
		  'operator' =&gt; 'NOT IN'
		)
	)
) );

global $post;

foreach( (array) $standard_posts as $post ) {
	setup_postdata( $post );
	print '&lt;div&gt;';
	the_title( '&lt;h2&gt;', '&lt;/h2&gt;' );
	the_content();
	print '&lt;/div&gt;';
}

wp_reset_postdata();
</pre>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.mfields.org/2011/post-format-queries/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>A Portland WordPress Hackathon?</title>
		<link>http://wordpress.mfields.org/2011/a-portland-wordpress-hackathon/</link>
		<comments>http://wordpress.mfields.org/2011/a-portland-wordpress-hackathon/#comments</comments>
		<pubDate>Wed, 06 Jul 2011 08:53:43 +0000</pubDate>
		<dc:creator>Michael Fields</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://wordpress.mfields.org/?p=459</guid>
		<description><![CDATA[A couple nights ago I was reading my Twitter feed and followed a link to a blog post writen by @realmofzod (I believe his name is Brandon). Go read it and then come back, this post will still be here. After reading Brandon&#8217;s post it seemed like a Portland WordPress Developer Meetup might be a]]></description>
				<content:encoded><![CDATA[<p>A couple nights ago I was reading my Twitter feed and followed a link to a <a href="http://blog.realmofzod.com/digital-trends-wordpress-portland/">blog post</a> writen by <a href="https://twitter.com/realmofzod">@realmofzod</a> (I believe his name is Brandon). Go read it and then come back, this post will still be here.</p>
<p>After reading Brandon&#8217;s post it seemed like a Portland WordPress Developer Meetup might be a good idea. I try to make it out to as many of the user group meetings as possible and from my experience there are usually many more &#8220;users&#8221; than &#8220;developers&#8221; in attendance. Having a second group that is dedicated to development topics makes a lot of sense in my opinion. Personally, I just want a group where I can get together and talk about WordPress code for an hour or two with a bunch of like minded individuals. I&#8217;ve felt this way for a while now and have talk to other who have shared similar opinions.</p>
<p><span id="more-459"></span></p>
<h2>How Many Others Feel the Same Way?</h2>
<p>I sent out some messages on Twitter about the idea of a WordPress developer meetup and got a pretty good response. 15 people seem to really like the idea. There are another 9 that I haven&#8217;t talked to yet as well as a few others that I think may be interested. This sounds like a pretty decent sized group &#8230; all in under 24 hours! Added to that, there are 3 businesses who may be able to host the meeting as well. Needless to say, I&#8217;m pretty stoked!</p>
<h2>Are Two Groups Better Than One?</h2>
<p>After some careful thought on this topic I came to the conclusion that a second group may be a really bad idea. If Portland had 2 group meetings each month, <em>I</em> would end up going to both &#8211; or at least <em>try</em> to. <em>&#8220;Double the WordPress, Double the fun!&#8221;</em> Right? Others may not want a double-dose of WordPress each month and may end up choosing between the two groups. <big>I would really like to avoid this at all costs.</big> I started to think of ways of having some developer fun without splintering the user group. I kind of like the idea of a &#8230;</p>
<h2>WordPress Hackathon</h2>
<p>Well, I guess &#8220;hackathon&#8221; in a very loose sense. I&#8217;ve only ever been to one of these in the past and I thought that the format was pretty cool. There were developers of all skill levels in the same room working on projects related to the common topic of Open Data. I learned a lot that day, met a few new people and had a really great time! This Hackathon had a very open format &#8211; every now and again someone would jump on the projector and share something that they were interested in or demonstrate an idea that would spark discussion.</p>
<p>I can easily picture a 2 &#8211; 4 hour hackathon where everyone is sharing knowledge about WordPress. Whether it&#8217;s hacking core, plugin &#038; theme development, optimization, html, css, javascript, SQL, HTTP, etc. It could be a great alternative to creating an official developer meetup. I mean how much <em>awesome</em> would come out of a room filled with wordpress developers for half of a day? My guess is Alot of awesome!</p>
<p>In all honesty. I would be up for trying it out once and seeing where it went from there.</p>
<h2>What Do You Think?</h2>
<p>I think that this idea has some potential and feel that it is worth giving a try. What are your thoughts? Feel free to comment below.</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.mfields.org/2011/a-portland-wordpress-hackathon/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Dropdown Widgets</title>
		<link>http://wordpress.mfields.org/2011/dropdown-widgets/</link>
		<comments>http://wordpress.mfields.org/2011/dropdown-widgets/#comments</comments>
		<pubDate>Mon, 27 Jun 2011 17:56:13 +0000</pubDate>
		<dc:creator>Michael Fields</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://wordpress.mfields.org/?p=446</guid>
		<description><![CDATA[While development on my Nighthawk theme has been really slow lately , I just found some inspiration which might just give me the kick in the pants that I need to get the job done! I&#8217;ve always like the way the big media sites such as fox.com or cbs.com have super-huge dropdown menus. I believe]]></description>
				<content:encoded><![CDATA[<p>While development on my Nighthawk theme has been really slow lately , I just found some inspiration which might just give me the kick in the pants that I need to get the job done! I&#8217;ve always like the way the big media sites such as fox.com or cbs.com have super-huge dropdown menus. I believe that they are called something like &#8220;mega menus&#8221; or something silly like that. Whatever they are called, I WANTS ME SOME! and I&#8217;m gonna get &#8216;em :)</p>
<p><span id="more-446"></span></p>
<p>I was really inspired after viewing this site for the first time: <a href="http://cognition.happycog.com/">cognition.happycog.com</a>. While it&#8217;s a beautiful site all around, the thing that I like the most is the two links in the upper left-hand side of the page. At the time of this writing they are labeled &#8220;Articles&#8221; and &#8220;Topics&#8221;. When you hover over them, awesomeness appears &#8230; much like the other sites I mentioned before. </p>
<p>After seeing the Happy Cog site, a light bulb appeared above my head and the filament began to glow! Basically, I thought &#8220;How hard would it be to mold a WordPress widget area into a dropdown menu&#8221;. So I grabbed a fresh copy of my <a href="https://github.com/mfields/Proto">Proto Theme</a> and had at it.</p>
<p>It was actually fairly easy to do and the possibilities are endless here! You can pretty much do everything you want to inside a widget and being able to display widgets as a &#8220;Dropdown menu&#8221; is pretty rad imho. You can even use the built-in Custom Menu Widget to provide traditional navigation within the widget area.</p>
<p>Here&#8217;s what it looks like:</p>
<p><a href="http://wordpress.mfields.org/wp-content/uploads/2011/06/dropdown-widgets.png"><img src="http://wordpress.mfields.org/wp-content/uploads/2011/06/dropdown-widgets-685x492.png" alt="" title="Dropdown Widgets" width="615" height="441" class="alignnone size-large wp-image-447" /></a></p>
<h2>Check it Out!</h2>
<p>I have uploaded a working version of this to Github if anyone is interested. Please lick the following link to visit the project&#8217;s page. Completely open to suggestions on this one!</p>
<p><a class="button github" href="https://github.com/mfields/Widget-Dropdowns">Widget Dropdowns<span>Hosted by Github</span></a></p>
<h2>Progress</h2>
<p>I&#8217;ll be periodically enhancing this project. Here&#8217;s the a list of the most recent progress. Feel free to join in at any time :)</p>

<h2>What do you think?</h2>
<p>So, I&#8217;m pretty excited about this! What do you think? Have you seen this before? Can you think of any issues with it?</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.mfields.org/2011/dropdown-widgets/feed/</wfw:commentRss>
		<slash:comments>17</slash:comments>
		</item>
		<item>
		<title>New Javascript Site</title>
		<link>http://wordpress.mfields.org/2011/new-javascript-site/</link>
		<comments>http://wordpress.mfields.org/2011/new-javascript-site/#comments</comments>
		<pubDate>Sun, 19 Jun 2011 11:25:49 +0000</pubDate>
		<dc:creator>Michael Fields</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://wordpress.mfields.org/?p=443</guid>
		<description><![CDATA[I&#8217;ve been working with javascript a lot lately. Basically just learning how get things done by building a personal project. I&#8217;ve decided that it might be a good idea to make another site where I share what I have learned &#8230; both with the world as wellas with future me. If you&#8217;re interested in this]]></description>
				<content:encoded><![CDATA[<p>I&#8217;ve been working with javascript a lot lately. Basically just learning how get things done by building a personal project. I&#8217;ve decided that it might be a good idea to make another site where I share what I have learned &#8230; both with the world as wellas with <em>future me</em>. If you&#8217;re interested in this kind of thing, check it out: <a href="http://javascript.mfields.org/">javascript.mfields.org</a></p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.mfields.org/2011/new-javascript-site/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Plugin Palooza</title>
		<link>http://wordpress.mfields.org/2011/pluginpalooza/</link>
		<comments>http://wordpress.mfields.org/2011/pluginpalooza/#comments</comments>
		<pubDate>Tue, 24 May 2011 00:05:27 +0000</pubDate>
		<dc:creator>Michael Fields</dc:creator>
				<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://wordpress.mfields.org/?p=440</guid>
		<description><![CDATA[This May, I lead a discussion at the Portland WordPress User Group on the topic of plugins. This post contains a collection of the idea expressed as well as links to many of the plugins that were mentioned. Don&#8217;t fear the Plugin!!! Over the years I&#8217;ve read articles, listened to interviews and had conversations with]]></description>
				<content:encoded><![CDATA[<p>This May, I lead a discussion at the Portland WordPress User Group on the topic of plugins. This post contains a collection of the idea expressed as well as links to many of the plugins that were mentioned.</p>
<p><span id="more-440"></span></p>
<h2>Don&#8217;t fear the Plugin!!!</h2>
<p>Over the years I&#8217;ve read articles, listened to interviews and had conversations with people that focus on how plugins are bad. If I were to be absolutely honest, there was a period of time when I would not install a plugin on my site for any reason. Although these days are well in the past, I know that a certain black cloud still hovers over using plugins in WordPress. Hell, just search Google for the phrase <a href="http://www.google.com/search?q=without+a+plugin" rel="external">&#8220;without a plugin&#8221;</a>. You&#8217;ll find page after page of results giving examples of how users have extracted functionality from plugins and added the code directly to the active theme. Mind boggling! In my opinion, plugin functionality is best served via plugin while theme functionality is best served in themes. Please read <a href="http://wpcandy.com/teaches/how-to-create-a-functionality-plugin">this article</a> by Ryan Imel that digs a little deeper into this concept.</p>
<p>So, if you&#8217;re new to WordPress and plugins kind of freak you out, there&#8217;s a couple of things that you can do before installing a plugin on your site.</p>
<h2>Test Locally!!!</h2>
<p>Fully testing a plugin before you install it on your live site is very important. It is easy to set up a server environment on your computer where you can install WordPress and test functionality before going live.</p>
<p><b><a href="http://www.apachefriends.org/en/xampp.html">XAMPP</a></b> is a great bundle including Apache, MySQL, PHP and PERL. It has packages for Linux, Mac OS X, Windows and Solaris. Best part is &#8230; it&#8217;s free!!! <a href="http://sixrevisions.com/tutorials/web-development-tutorials/using-xampp-for-local-wordpress-theme-development/">Install on Windows tutorial.</a></p>
<p><b><a href="http://www.mamp.info/">MAMP</a></b> is a bundle including Apache, MySQL and PHP which is available for Mac OS X. It has both free and paid versions. <a href="http://wpcandy.com/teaches/how-to-improve-local-wordpress-development-on-a-mac">Tutorial</a>.</p>
<h2>Make an Informed Decision</h2>
<p>The best thing that you can do before installing a WordPress plugin is to open the files and read every line of code. This will tell you exactly where the plugin hooks into WordPress and what it does. Although I believe that this is the best possible solution, I&#8217;m aware that there are WordPress users that may not have the skills to do this. Don&#8217;t fret! All is not lost if you find yourself in this position. There are quite a few things that you can do without knowing how to read the code.</p>
<h3>Who Wrote It?</h3>
<p>Personally, this is one of the most important questions that can be asked! I am more likely to install a plugin by an experienced WordPress developer than someone who I have never heard of. It&#8217;s really hard to compare developers and can be somewhat of a sensitive issue. I&#8217;ll do my best to illustrate what my thought process would be if I were presented with a handful of different plugins designed to accomplish the same task.</p>
<ol>
<li>The first thing I would look for is if a member of the core WordPress development team is listed as a contributer to any of the plugins. As soon as WordPress 3.2 hits the shelves, you will be able to click the &#8220;credits&#8221; link in the footer to view all contributers to the current version. Until then, you can visit wordpress.org&#8217;s <a href="http://wordpress.org/about/">about page</a> and there is a list in the right-hand sidebar.</li>
<li>The second thing I would look for is if there is a plugin in the group that lists <a href="http://automattic.com/">Automattic</a> as a contributer. Automattic is the company behind <a href="http://wordpress.com/">wordpress.com</a> a service that hosts over <a href="https://en.wordpress.com/stats/">20 million</a> WordPress powered websites. Seeing Automattic as a contributer informs me that the plugin has been created/reviewed by a developer with extensive knowledge of the WordPress codebase who has experience coding for millions of users. Some of the plugins listed on <a href="http://profiles.wordpress.org/users/automattic/">Automattic&#8217;s profile</a> are also installed on wordpress.com. These plugins are of interest, because they have been tested with a very large user-base and will generally present you with the best experience available.</li>
</ol>
<h3>How many times has it been downloaded?</h3>
<p>While popularity is not be considered as an indicator of quality, it can be a powerful tool in choosing between different available options. Perhaps you are looking for a plugin that accomplishes a specific task and you find 5 different candidates. If one of these plugins has been downloaded considerably more times than the others, I would consider trying it out before the others. One thing that popularity can be a great indicator of is <em>community</em>. If many people are using a plugin it may be easier to find someone who can answer questions as they arise.</p>
<h3>When was it last updated?</h3>
<p>If the plugin was last updated 3 years ago, you <em>might</em> want to stear clear of it. While there are definitely exceptions to this rule, this date should be strongly considered. Version 2.5 was stable 3 years ago and much has changed in WordPress since then! A 3-year-old plugin may not be using the most up-to-date features + APIs. If there is another plugin that has been updated more recently, I would strongly suggest considering these other options. On the other hand, age does not necessarily suggest poor quality. It is completely possible for a plugin written for WordPress 2.0 to work seamlessly with 3.1. It all depends on what the plugin does and where it hooks into WordPress.</p>
<h2>Ask Someone Who Knows!</h2>
<p>There are a lot of resources that you can use to get feedback from community members. First of all, there are many WordPress developers on Twitter. I follow about 200 WordPress developers there and it&#8217;s awesome! The <a href="http://wordpress.org/support/">WordPress support forums</a> are also a great resource. Many volunteers view the threads there and can steer you in the right direction. <a href="http://wordpress.stackexchange.com/">WordPress Answers</a> may also be worth checking out. There seem to be a really great group of developers that hang out there and answer questions. Last, but certainly not least, there is a <a href="http://yoast.com/wp-plugin-review/">plugin review service</a> provided by WordPress developer <a href="http://yoast.com/">Joost de Valk</a>. Joost regularly reviews plugins hosted in the official plugin directory. He even takes suggestions! You can suggest a plugin for review by filling out <a href="http://yoast.com/wordpress-plugin-review/">this form</a> on his site.</p>
<h2>My Picks</h2>
<p>Here are a few plugins that I have used and think are really great.</p>
<p><b><a href="http://wordpress.org/extend/plugins/regenerate-thumbnails/">Regenerate Thumbnails</a></b> by <a href="http://www.viper007bond.com/">Viper 007 Bond</a>. Allows you to re-size images uploaded to you site in on click! Helpful for when you have switched themes and the new theme requires new image sizes. Worth it&#8217;s weight in gold!</p>
<p><b><a href="http://wordpress.org/extend/plugins/subscribe-to-comments/">Subscribe To Comments</a></b> by <a href="http://markjaquith.com/">Mark Jaquith</a>. Keep the conversation going on your site by installing this easy-to-use plugin! Adds a simple check box to each comment form on your site that allow commentators to opt-in to receiving email notifications when new comments are made on a post. Awesome!</p>
<p><a href="http://wptheming.com/options-framework-plugin/"><b>Options Framework</b></a> by <a href="http://wptheming.com/">Devin Price</a>. Quickly and easily create a theme options page without writing a lot of code! Provides support for many different form controls. Rock!</p>
<p><b><a href="http://wordpress.org/extend/plugins/bns-inline-asides/">BNS Inline Asides</a></b> by <a href="http://edwardcaissie.com/">Edward Caissie</a>. When you write do you find that you go off on epic tangents? If so this is definitely a plugin that you should check out. It allows you to hide certain bits. Your readers have the option to expand the hidden text or just keep reading. Rad!</p>
<p><b><a href="http://wordpress.org/extend/plugins/posts-to-posts/">Posts 2 Posts</a></b> by <a href="http://scribu.net/">Scribu</a> This plugin allows you to create direct relationships between different posts on your site. Really handy when using multiple custom post_types. A handy way to set up custom &#8220;related post&#8221; functionality. Slick interface. Supports reciprocal relationships. Amazing!</p>
<p><b><a href="http://wordpress.org/extend/plugins/grunion-contact-form/">Grunion Contact Form</a></b> by <a href="http://profiles.wordpress.org/users/mdawaffe/">mdawaffe</a>, <a href="http://automattic.com/">Automattic</a> and <a href="http://nickmomrik.com/">Nick Momrik</a>. This is a really simple (yet powerful) contact form solution. It adds a new icon to the media icons section above the post editor which allows you to easily construct a custom contact form that you can insert into any post or page.</p>
<h2>Community Picks</h2>
<p>Thanks to everyone who shared their favorite plugins! I was able to write many of them down and find links + descriptions online. Here&#8217;s the list:</p>
<p><b><a href="http://wordpress.org/extend/plugins/audit-trail/">Audit Trail</a></b> by <a href="http://profiles.wordpress.org/users/johnny5/">John Godley</a>. Creates a log of actions taking by logged users. If you run a site and have multiple editors or authors, and have asked yourself the question &#8220;Who did that?&#8221;. This plugin gives you the answer!</p>
<p><b><a href="http://wordpress.org/extend/plugins/customizable-post-listings/">Customizable Post Listings</a></b> by <a href="http://coffee2code.com/">Coffee 2 Code</a>. Display Recent Posts, Recently Commented Posts, Recently Modified Posts, Random Posts, and other post listings using the post information of your choosing in an easily customizable manner.</p>
<p><b><a href="http://wordpress.org/extend/plugins/explanatory-dictionary/">Explanitory Dictionary</a></b> by <a href="http://rubensargsyan.com/">Ruben Sargsyan</a>. This plugin is used when there are some words, words expressions or sentences to be explained in the posts or pages of your wordpress blog. It will help the visitors to read the explanations of the words (words expressions, sentences) you need via tool-tips. It can also be used as a glossary.</p>
<p><b><a href="http://wordpress.org/extend/plugins/file-gallery/">File Gallery</a></b> by <a href="http://profiles.wordpress.org/users/aesqe/">Aesqu</a>. Extends WordPress&#8217; media capabilities by adding a new gallery shortcode handler with template support, a new interface for attachment handling when editing posts, and much more&#8230;</p>
<p><b><a href="http://wordpress.org/extend/plugins/html5-and-flash-video-player/">HTML5 and Flash Video Player</a></b> by Rodrigo Violante. This plugin allows the addition of video (and other media) to a WordPress website, now you can also watch videos in your iPad or iPod.</p>
<p><b><a href="http://wordpress.org/extend/plugins/photo-dropper/">Photo Dropper</a></b> by markus941 and tgardner. Lets you add Creative commons licensed Photos to Your Posts from Flickr. By activating this plugin you agree to be fully responsible for adhering to Creative Commons licenses for all photos you post to your blog.</p>
<p><b><a href="http://wordpress.org/extend/plugins/post-avatar/">Post Avatar</a></b> by <a href="http://profiles.wordpress.org/users/garinungkadol/">garinungkadol</a>. Simplifies the process of including a picture when writing posts by allowing the user to choose from a predefined list of images. The image can be automatically shown on the page or output customized with the use of a template tag in themes.</p>
<p><b><a href="http://wordpress.org/extend/plugins/wordpress-backup-to-dropbox/">WordPress Backup to Dropbox</a></b> by <a href="http://www.mikeyd.com.au/">Michael De Wildt</a>. Automatically creates a backup your blog and uploads it to Dropbox.</p>
<p><b><a href="http://wordpress.org/extend/plugins/wordpress-file-monitor/">WordPress File monitor</a></b> by <a href="http://mattwalters.net/">Matt Walters</a>. Monitors your WordPress installation for added/deleted/changed files. When a change is detected an email alert can be sent to a specified address.</p>
<p><b><a href="http://wordpress.org/extend/plugins/safecss/">WordPress.com Custom CSS</a></b> by multiple authors. Enables you to generate custom css for your website without modifying theme files. If you&#8217;ve ever found yourself in a situation where you need a &#8220;Grandchild&#8221; theme this plugin is worth checking out.</p>
<p><b><a href="http://wordpress.org/extend/plugins/events-manager/">WP Events Manager</a></b> <a href="http://profiles.wordpress.org/users/nutsmuggler/">by nutsmuggler</a> and <a href="http://profiles.wordpress.org/users/netweblogic/">netweblogic</a>. Events Manager is a full-featured event registration management solution for WordPress based on the principles of flexibility, reliability and powerful features!</p>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.mfields.org/2011/pluginpalooza/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Taxonomy Images Plugin &#8211; Moving Forward</title>
		<link>http://wordpress.mfields.org/2011/taxonomy-images-plugin-moving-forward/</link>
		<comments>http://wordpress.mfields.org/2011/taxonomy-images-plugin-moving-forward/#comments</comments>
		<pubDate>Sat, 21 May 2011 12:40:53 +0000</pubDate>
		<dc:creator>Michael Fields</dc:creator>
				<category><![CDATA[Questions]]></category>

		<guid isPermaLink="false">http://wordpress.mfields.org/?p=438</guid>
		<description><![CDATA[Development on the next version of the Taxonomy Images plugin is underway. I&#8217;ve completely rewritten the plugin taking many things into consideration. But I would like to get your feedback on how you use this plugin. Associating images to terms of taxonomies is a rather straight forward thing. What users actually do with these associations]]></description>
				<content:encoded><![CDATA[<p>Development on the next version of the Taxonomy Images plugin is underway. I&#8217;ve completely rewritten the plugin taking many things into consideration. But I would like to get your feedback on how you use this plugin. Associating images to terms of taxonomies is a rather straight forward thing. What users actually do with these associations is another thing all together!</p>
<p><span id="more-438"></span></p>
<p><a class="button github" href="https://github.com/mfields/Taxonomy-Images">Check out the progress! <span>Hosted by Github</span></a></p>
<h2>What I use it for</h2>
<p>The reason I originally made the plugin was to associate images with each <a href="http://art.mfields.org/symbolism/">symbol</a> in my art portfolio. <em>Symbol</em> is a custom taxonomy that I use to organize the different drawings and paintings. I felt that it was easier to show visitors what the symbol looked like rather than just rely on text. So I created the Taxonomy Images plugin to provide this functionality. </p>
<p>What I have realized is that my application of this plugin may or may not apply to how others use it or expect it to work. There have been many questions about how to accomplish certain tasks that are outside the scope of functionality provided in past versions. One of the goals in version 0.7 is to provide as many low level functions to allow easy access to the associations create by this plugin.</p>
<h2>What You Can Do to Help</h2>
<p>Basically, I would like to know/see how you are using the plugin. And perhaps answer a few of the following questions. Any help is greatly appreciated! FYI, this plugin is free and released under the GPLv2.</p>
<p>Please leave a comment on this post or feel free to contact me directly. The information is on my <a href="http://wordpress.mfields.org/about/">about</a> page.</p>
<h2>A Few Questions</h2>
<ul>
<li>How do you use term images in your theme?</li>
<li>What taxonomies do you images with?</li>
<li>Can you answer <a href="http://wordpress.stackexchange.com/questions/17868/attachments-terms-queries-and-caching-oh-my">this question</a>?</li>
<li>What limitations have you found with the current version (0.5)</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://wordpress.mfields.org/2011/taxonomy-images-plugin-moving-forward/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>
