<?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>Helen and WordPress</title>
	<atom:link href="http://www.helenhousandi.com/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.helenhousandi.com/wordpress</link>
	<description>Things I&#039;m learning and working on, generally related to WordPress (or at least the web)</description>
	<lastBuildDate>Mon, 27 Feb 2012 06:33:27 +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>Using Chosen for a replacement taxonomy metabox</title>
		<link>http://www.helenhousandi.com/wordpress/2012/01/using-chosen-for-a-replacement-taxonomy-metabox/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=using-chosen-for-a-replacement-taxonomy-metabox</link>
		<comments>http://www.helenhousandi.com/wordpress/2012/01/using-chosen-for-a-replacement-taxonomy-metabox/#comments</comments>
		<pubDate>Sun, 08 Jan 2012 20:49:32 +0000</pubDate>
		<dc:creator>Helen</dc:creator>
				<category><![CDATA[Admin]]></category>
		<category><![CDATA[Taxonomies]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[Chosen]]></category>

		<guid isPermaLink="false">http://www.helenhousandi.com/wordpress/?p=202</guid>
		<description><![CDATA[If you&#8217;ve ever created many taxonomies for a post type, you know that the add/edit screen can get very unwieldy with all of those metaboxes, especially with hierarchical taxonomies. And then sometimes you have something that is a taxonomy but doesn&#8217;t need items added very often, especially in client work where there are often predetermined [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;ve ever created many taxonomies for a post type, you know that the add/edit screen can get very unwieldy with all of those metaboxes, especially with hierarchical taxonomies. And then sometimes you have something that is a taxonomy but doesn&#8217;t need items added very often, especially in client work where there are often predetermined options that may occasionally be added to by the client, which can be done in the taxonomy&#8217;s admin screen.</p>
<p>This is where we can use <a href="http://harvesthq.github.com/chosen/">Chosen</a>, a JS plugin to make multi-selects much more user-friendly, and just so happens to blend right in to the WordPress admin. You can take multiple taxonomies and put them into a single metabox. It&#8217;s not limited to taxonomies, either &#8211; you can use it for post meta (custom fields) as well. I&#8217;ve used it to select taxonomy terms for which a post is &#8220;essential&#8221; &#8211; optgroups came in very handy there. I actually would love to see tag selection look and behave more like this in core, but there would be more work to be done for adding new terms.</p>
<p>The basic idea is that you enqueue the script and style on the appropriate admin page (NOT all admin pages) and then initialize the field(s) based on a class or ID. I usually just put the initialize right in the metabox itself, but you could always be clean and put it in the admin_head if you want. From there, you show all terms in the taxonomy in a select field (including empties) and use the nifty selected() function to show which ones are associated with the current post. When saving, it&#8217;s as easy as wp_set_post_terms() after the usual checks for nonce, etc. You&#8217;ll also want to hide the original taxonomy metabox(es) as well, of course.</p>
<p>Full Github Gist:</p>
<p><span id="more-202"></span></p>
<div id="gist-1573966" class="gist">

        <div class="gist-file">
          <div class="gist-data gist-syntax">
              <div class="highlight"><pre><div class='line' id='LC1'><span class="cp">&lt;?php</span></div><div class='line' id='LC2'><span class="sd">/**</span></div><div class='line' id='LC3'><span class="sd"> * WordPress Chosen Taxonomy Metabox</span></div><div class='line' id='LC4'><span class="sd"> * Author: Helen Hou-Sandi</span></div><div class='line' id='LC5'><span class="sd"> *</span></div><div class='line' id='LC6'><span class="sd"> * Use Chosen for a replacement taxonomy metabox in WordPress</span></div><div class='line' id='LC7'><span class="sd"> * Useful for taxonomies that aren&#39;t changed much on the fly,</span></div><div class='line' id='LC8'><span class="sd"> * as Chosen is for selection only.</span></div><div class='line' id='LC9'><span class="sd"> * You can always use the taxonomy admin screen to add/edit taxonomy terms.</span></div><div class='line' id='LC10'><span class="sd"> *</span></div><div class='line' id='LC11'><span class="sd"> * Example screenshot: http://cl.ly/2T2D232x172G353i2V2C</span></div><div class='line' id='LC12'><span class="sd"> *</span></div><div class='line' id='LC13'><span class="sd"> * Chosen: http://harvesthq.github.com/chosen/</span></div><div class='line' id='LC14'><span class="sd"> */</span></div><div class='line' id='LC15'><br/></div><div class='line' id='LC16'><span class="nx">add_action</span><span class="p">(</span> <span class="s1">&#39;admin_init&#39;</span><span class="p">,</span> <span class="s1">&#39;hhs_add_meta_boxes&#39;</span><span class="p">,</span> <span class="mi">1</span> <span class="p">);</span></div><div class='line' id='LC17'><span class="k">function</span> <span class="nf">hhs_add_meta_boxes</span><span class="p">()</span> <span class="p">{</span></div><div class='line' id='LC18'>	<span class="nx">add_meta_box</span><span class="p">(</span> <span class="s1">&#39;chosen-tax&#39;</span><span class="p">,</span> <span class="s1">&#39;Choose Terms&#39;</span><span class="p">,</span> <span class="s1">&#39;hhs_chosen_tax_meta_box_display&#39;</span><span class="p">,</span> <span class="s1">&#39;post&#39;</span><span class="p">,</span> <span class="s1">&#39;side&#39;</span><span class="p">,</span> <span class="s1">&#39;default&#39;</span> <span class="p">);</span></div><div class='line' id='LC19'><span class="p">}</span></div><div class='line' id='LC20'><br/></div><div class='line' id='LC21'><span class="k">function</span> <span class="nf">hhs_chosen_tax_meta_box_display</span><span class="p">()</span> <span class="p">{</span></div><div class='line' id='LC22'>	<span class="k">global</span> <span class="nv">$post</span><span class="p">;</span></div><div class='line' id='LC23'><br/></div><div class='line' id='LC24'>	<span class="nx">wp_nonce_field</span><span class="p">(</span> <span class="s1">&#39;hhs_chosen_tax_meta_box_nonce&#39;</span><span class="p">,</span> <span class="s1">&#39;hhs_chosen_tax_meta_box_nonce&#39;</span> <span class="p">);</span></div><div class='line' id='LC25'>	<span class="cp">?&gt;</span><span class="x"></span></div><div class='line' id='LC26'><span class="x">	&lt;script type=&quot;text/javascript&quot;&gt;</span></div><div class='line' id='LC27'><span class="x">	jQuery(document).ready(function($){</span></div><div class='line' id='LC28'><span class="x">		$( &#39;.chzn-select&#39; ).chosen();</span></div><div class='line' id='LC29'><span class="x">	});</span></div><div class='line' id='LC30'><span class="x">	&lt;/script&gt;</span></div><div class='line' id='LC31'><span class="x">	</span><span class="cp">&lt;?php</span></div><div class='line' id='LC32'>	<span class="c1">// which taxonomies should be used - can be multiple</span></div><div class='line' id='LC33'>	<span class="nv">$taxes</span> <span class="o">=</span> <span class="k">array</span><span class="p">(</span></div><div class='line' id='LC34'>		<span class="s1">&#39;post_tag&#39;</span> <span class="o">=&gt;</span> <span class="s1">&#39;Tags&#39;</span><span class="p">,</span></div><div class='line' id='LC35'>	<span class="p">);</span></div><div class='line' id='LC36'><br/></div><div class='line' id='LC37'>	<span class="k">foreach</span> <span class="p">(</span> <span class="nv">$taxes</span> <span class="k">as</span> <span class="nv">$tax</span> <span class="o">=&gt;</span> <span class="nv">$label</span> <span class="p">)</span> <span class="p">{</span></div><div class='line' id='LC38'>		<span class="c1">// add more args if you want (e.g. orderby)</span></div><div class='line' id='LC39'>		<span class="nv">$terms</span> <span class="o">=</span> <span class="nx">get_terms</span><span class="p">(</span> <span class="nv">$tax</span><span class="p">,</span> <span class="k">array</span><span class="p">(</span> <span class="s1">&#39;hide_empty&#39;</span> <span class="o">=&gt;</span> <span class="mi">0</span> <span class="p">)</span> <span class="p">);</span></div><div class='line' id='LC40'>		<span class="nv">$current_terms</span> <span class="o">=</span> <span class="nx">wp_get_post_terms</span> <span class="p">(</span> <span class="nv">$post</span><span class="o">-&gt;</span><span class="na">ID</span><span class="p">,</span> <span class="nv">$tax</span><span class="p">,</span> <span class="k">array</span><span class="p">(</span><span class="s1">&#39;fields&#39;</span> <span class="o">=&gt;</span> <span class="s1">&#39;ids&#39;</span><span class="p">)</span> <span class="p">);</span></div><div class='line' id='LC41'>		<span class="cp">?&gt;</span><span class="x"></span></div><div class='line' id='LC42'><span class="x">		&lt;p&gt;&lt;label for=&quot;</span><span class="cp">&lt;?php</span> <span class="k">echo</span> <span class="nv">$tax</span><span class="p">;</span> <span class="cp">?&gt;</span><span class="x">&quot;&gt;</span><span class="cp">&lt;?php</span> <span class="k">echo</span> <span class="nv">$label</span><span class="p">;</span> <span class="cp">?&gt;</span><span class="x">&lt;/label&gt;:&lt;/p&gt;</span></div><div class='line' id='LC43'><span class="x">		&lt;p&gt;&lt;select name=&quot;</span><span class="cp">&lt;?php</span> <span class="k">echo</span> <span class="nv">$tax</span><span class="p">;</span> <span class="cp">?&gt;</span><span class="x">[]&quot; class=&quot;chzn-select widefat&quot; data-placeholder=&quot;Select one or more&quot; multiple=&quot;multiple&quot;&gt;</span></div><div class='line' id='LC44'><span class="x">		</span><span class="cp">&lt;?php</span> <span class="k">foreach</span> <span class="p">(</span> <span class="nv">$terms</span> <span class="k">as</span> <span class="nv">$term</span> <span class="p">)</span> <span class="p">{</span> <span class="cp">?&gt;</span><span class="x"></span></div><div class='line' id='LC45'><span class="x">			&lt;option value=&quot;</span><span class="cp">&lt;?php</span> <span class="k">echo</span> <span class="nv">$term</span><span class="o">-&gt;</span><span class="na">slug</span><span class="p">;</span> <span class="cp">?&gt;</span><span class="x">&quot;</span><span class="cp">&lt;?php</span> <span class="nx">selected</span><span class="p">(</span> <span class="nb">in_array</span><span class="p">(</span> <span class="nv">$term</span><span class="o">-&gt;</span><span class="na">term_id</span><span class="p">,</span> <span class="nv">$current_terms</span> <span class="p">)</span> <span class="p">);</span> <span class="cp">?&gt;</span><span class="x">&gt;</span><span class="cp">&lt;?php</span> <span class="k">echo</span> <span class="nv">$term</span><span class="o">-&gt;</span><span class="na">name</span><span class="p">;</span> <span class="cp">?&gt;</span><span class="x">&lt;/option&gt;</span></div><div class='line' id='LC46'><span class="x">		</span><span class="cp">&lt;?php</span> <span class="p">}</span> <span class="cp">?&gt;</span><span class="x"></span></div><div class='line' id='LC47'><span class="x">		&lt;/select&gt;</span></div><div class='line' id='LC48'><span class="x">		&lt;/p&gt;</span></div><div class='line' id='LC49'><span class="x">		</span><span class="cp">&lt;?php</span></div><div class='line' id='LC50'>	<span class="p">}</span></div><div class='line' id='LC51'><span class="p">}</span></div><div class='line' id='LC52'><span class="nx">add_action</span><span class="p">(</span> <span class="s1">&#39;save_post&#39;</span><span class="p">,</span> <span class="s1">&#39;hhs_chosen_tax_meta_box_display_save&#39;</span> <span class="p">);</span></div><div class='line' id='LC53'><span class="k">function</span> <span class="nf">hhs_chosen_tax_meta_box_display_save</span><span class="p">(</span> <span class="nv">$post_id</span> <span class="p">)</span> <span class="p">{</span></div><div class='line' id='LC54'><br/></div><div class='line' id='LC55'>	<span class="c1">// verify nonce</span></div><div class='line' id='LC56'>	<span class="k">if</span> <span class="p">(</span> <span class="o">!</span> <span class="nb">isset</span><span class="p">(</span> <span class="nv">$_POST</span><span class="p">[</span><span class="s1">&#39;hhs_chosen_tax_meta_box_nonce&#39;</span><span class="p">]</span> <span class="p">)</span> <span class="o">||</span></div><div class='line' id='LC57'>	     <span class="o">!</span> <span class="nx">wp_verify_nonce</span><span class="p">(</span> <span class="nv">$_POST</span><span class="p">[</span><span class="s1">&#39;hhs_chosen_tax_meta_box_nonce&#39;</span><span class="p">],</span> <span class="s1">&#39;hhs_chosen_tax_meta_box_nonce&#39;</span> <span class="p">)</span> <span class="p">)</span></div><div class='line' id='LC58'>		<span class="k">return</span><span class="p">;</span></div><div class='line' id='LC59'><br/></div><div class='line' id='LC60'>	<span class="c1">// check autosave - maybe overkill?</span></div><div class='line' id='LC61'>	<span class="k">if</span> <span class="p">(</span> <span class="nb">defined</span><span class="p">(</span> <span class="s1">&#39;DOING_AUTOSAVE&#39;</span> <span class="p">)</span> <span class="o">&amp;&amp;</span> <span class="nx">DOING_AUTOSAVE</span> <span class="p">)</span></div><div class='line' id='LC62'>		<span class="k">return</span><span class="p">;</span></div><div class='line' id='LC63'><br/></div><div class='line' id='LC64'>	<span class="c1">// check permissions</span></div><div class='line' id='LC65'>	<span class="k">if</span> <span class="p">(</span> <span class="o">!</span> <span class="nx">current_user_can</span><span class="p">(</span> <span class="s1">&#39;edit_post&#39;</span><span class="p">,</span> <span class="nv">$post_id</span> <span class="p">)</span> <span class="p">)</span></div><div class='line' id='LC66'>		<span class="k">return</span><span class="p">;</span></div><div class='line' id='LC67'><br/></div><div class='line' id='LC68'>	<span class="c1">// change to match above, or be a good coder and don&#39;t dupe this</span></div><div class='line' id='LC69'>	<span class="nv">$taxes</span> <span class="o">=</span> <span class="k">array</span> <span class="p">(</span></div><div class='line' id='LC70'>		<span class="s1">&#39;post_tag&#39;</span><span class="p">,</span></div><div class='line' id='LC71'>	<span class="p">);</span></div><div class='line' id='LC72'><br/></div><div class='line' id='LC73'>	<span class="k">foreach</span> <span class="p">(</span> <span class="nv">$taxes</span> <span class="k">as</span> <span class="nv">$tax</span> <span class="p">)</span> <span class="p">{</span></div><div class='line' id='LC74'>		<span class="k">if</span> <span class="p">(</span> <span class="nb">isset</span><span class="p">(</span> <span class="nv">$_POST</span><span class="p">[</span><span class="nv">$tax</span><span class="p">]</span> <span class="p">)</span> <span class="o">&amp;&amp;</span> <span class="nb">is_array</span><span class="p">(</span> <span class="nv">$_POST</span><span class="p">[</span><span class="nv">$tax</span><span class="p">]</span> <span class="p">)</span> <span class="p">)</span></div><div class='line' id='LC75'>			<span class="nx">wp_set_post_terms</span><span class="p">(</span> <span class="nv">$post_id</span><span class="p">,</span> <span class="nv">$_POST</span><span class="p">[</span><span class="nv">$tax</span><span class="p">],</span> <span class="nv">$tax</span><span class="p">,</span> <span class="k">false</span> <span class="p">);</span></div><div class='line' id='LC76'>	<span class="p">}</span></div><div class='line' id='LC77'><span class="p">}</span></div><div class='line' id='LC78'>&nbsp;</div><div class='line' id='LC79'><span class="c1">// Chosen JS and CSS enqueue - assumes you are doing this in a theme</span></div><div class='line' id='LC80'><span class="c1">// with the JS, CSS, and sprite files in themefolder/js/chosen/</span></div><div class='line' id='LC81'><span class="c1">// You&#39;d want to use plugins_url() instead if using this in a plugin</span></div><div class='line' id='LC82'><span class="nx">add_action</span><span class="p">(</span> <span class="s1">&#39;admin_enqueue_scripts&#39;</span><span class="p">,</span> <span class="s1">&#39;hhs_add_admin_scripts&#39;</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">1</span> <span class="p">);</span></div><div class='line' id='LC83'><span class="k">function</span> <span class="nf">hhs_add_admin_scripts</span><span class="p">(</span> <span class="nv">$hook</span> <span class="p">)</span> <span class="p">{</span></div><div class='line' id='LC84'>	<span class="k">global</span> <span class="nv">$post</span><span class="p">;</span></div><div class='line' id='LC85'><br/></div><div class='line' id='LC86'>	<span class="c1">// There&#39;s probably a better way to check the screen...</span></div><div class='line' id='LC87'>	<span class="k">if</span> <span class="p">(</span> <span class="nv">$hook</span> <span class="o">==</span> <span class="s1">&#39;post-new.php&#39;</span> <span class="o">||</span> <span class="nv">$hook</span> <span class="o">==</span> <span class="s1">&#39;post.php&#39;</span> <span class="p">)</span> <span class="p">{</span></div><div class='line' id='LC88'>		<span class="k">if</span> <span class="p">(</span> <span class="s1">&#39;post&#39;</span> <span class="o">===</span> <span class="nv">$post</span><span class="o">-&gt;</span><span class="na">post_type</span> <span class="p">)</span> <span class="p">{</span>     </div><div class='line' id='LC89'>			<span class="nx">wp_enqueue_script</span><span class="p">(</span>  <span class="s1">&#39;chosen&#39;</span><span class="p">,</span> <span class="nx">get_template_directory_uri</span><span class="p">()</span><span class="o">.</span><span class="s1">&#39;/js/chosen/chosen.jquery.min.js&#39;</span><span class="p">,</span> <span class="k">array</span><span class="p">(</span> <span class="s1">&#39;jquery&#39;</span> <span class="p">),</span> <span class="s1">&#39;1.0&#39;</span> <span class="p">);</span></div><div class='line' id='LC90'>			<span class="nx">wp_enqueue_style</span><span class="p">(</span> <span class="s1">&#39;chosen&#39;</span><span class="p">,</span> <span class="nx">get_template_directory_uri</span><span class="p">()</span><span class="o">.</span><span class="s1">&#39;/js/chosen/chosen.css&#39;</span> <span class="p">);</span></div><div class='line' id='LC91'>		<span class="p">}</span></div><div class='line' id='LC92'>	<span class="p">}</span></div><div class='line' id='LC93'><span class="p">}</span></div><div class='line' id='LC94'><br/></div><div class='line' id='LC95'><span class="c1">// Hide unused taxonomy metabox(es)</span></div><div class='line' id='LC96'><span class="nx">add_action</span><span class="p">(</span> <span class="s1">&#39;do_meta_boxes&#39;</span><span class="p">,</span> <span class="s1">&#39;hhs_remove_tax_meta_boxes&#39;</span><span class="p">,</span> <span class="mi">10</span><span class="p">,</span> <span class="mi">3</span> <span class="p">);</span></div><div class='line' id='LC97'><span class="k">function</span> <span class="nf">hhs_remove_tax_meta_boxes</span><span class="p">(</span> <span class="nv">$post_type</span><span class="p">,</span> <span class="nv">$priority</span><span class="p">,</span> <span class="nv">$post</span> <span class="p">)</span> <span class="p">{</span></div><div class='line' id='LC98'>	<span class="nx">remove_meta_box</span><span class="p">(</span> <span class="s1">&#39;tagsdiv-post_tag&#39;</span><span class="p">,</span> <span class="s1">&#39;post&#39;</span><span class="p">,</span> <span class="s1">&#39;side&#39;</span> <span class="p">);</span></div><div class='line' id='LC99'><span class="p">}</span></div><div class='line' id='LC100'><span class="cp">?&gt;</span><span class="x"></span></div></pre></div>
          </div>

          <div class="gist-meta">
            <a href="https://gist.github.com/raw/1573966/b2511d311e254b0e1018d31ab196ec0ab3870883/wp-chosen-tax-metabox.php" style="float:right;">view raw</a>
            <a href="https://gist.github.com/1573966#file_wp_chosen_tax_metabox.php" style="float:right;margin-right:10px;color:#666">wp-chosen-tax-metabox.php</a>
            <a href="https://gist.github.com/1573966">This Gist</a> brought to you by <a href="http://github.com">GitHub</a>.
          </div>
        </div>
</div>

<p>If you see anything that could use improving, let me know!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.helenhousandi.com/wordpress/2012/01/using-chosen-for-a-replacement-taxonomy-metabox/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>The perks of contributing</title>
		<link>http://www.helenhousandi.com/wordpress/2011/12/the-perks-of-contributing/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-perks-of-contributing</link>
		<comments>http://www.helenhousandi.com/wordpress/2011/12/the-perks-of-contributing/#comments</comments>
		<pubDate>Fri, 09 Dec 2011 22:39:47 +0000</pubDate>
		<dc:creator>Helen</dc:creator>
				<category><![CDATA[Contributing]]></category>
		<category><![CDATA[3.3]]></category>

		<guid isPermaLink="false">http://www.helenhousandi.com/wordpress/?p=186</guid>
		<description><![CDATA[Behold this glorious little section of the WordPress 3.3 credits page: I&#8217;m never in anything for the recognition or glory, but I have to admit: this is pretty exciting. As of this writing, WordPress powers 15.7% of the top million websites and at least 22% of all new active websites in the US. That is [...]]]></description>
			<content:encoded><![CDATA[<p>Behold this glorious little section of the WordPress 3.3 credits page:</p>
<p><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/12/wp33-rockstars.png" rel="shadowbox[sbpost-186];player=img;" title="WordPress 3.3 Recent Rockstars"><img class="alignnone size-large wp-image-188" title="WordPress 3.3 Recent Rockstars" src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/12/wp33-rockstars-460x231.png" alt="WordPress 3.3 Recent Rockstars" width="460" height="231" /></a></p>
<p>I&#8217;m never in anything for the recognition or glory, but I have to admit: this is pretty exciting. As of this writing, WordPress powers <a href="http://w3techs.com/technologies/overview/content_management/all">15.7% of the top million websites</a> and at least <a href="http://techcrunch.com/2011/08/19/wordpress-now-powers-22-percent-of-new-active-websites-in-the-us/">22% of all new active websites in the US</a>. That is a mind-blowing number of times that the faces and names on the credits page might be seen, even given that it&#8217;s buried a little in the admin.</p>
<p>In 3.2 I was among the list of names under Core Contributors, which was more than enough for me, but this is kind of like a promotion for me in the (very awesome) WordPress community. I get a little bit of community time within my job at 10up and have been meeting some really cool people, like Chexee, above. I&#8217;m extremely busy these days, between continuing to play piano (performance in a week!) and all this work, but I feel very satisfied. I&#8217;ve been doing a lot with UI bits; notable in this release is semi-responsive work on the themes screens and the About/post-Update page. I also did a fair bit of color scheme, RTL, and IE work toward the end, as they tend to get neglected. That said, I love front-end and UI work, but being more of a developer than a designer, I feel like it&#8217;s important to both learn and contribute as much as possible in all ways, so I&#8217;m continuing to dive into the WordPress codebase as a whole and get more confident tracing and patching things. I also find myself helping out in IRC or the forums here and there and do a little bit of ticket watching and cleanup on Trac. Speaking of Trac&#8230; once 3.3 gets out the door, I need to start hassling somebody about whether or not that little reskinning project of mine is going to go anywhere.</p>
<p>Here&#8217;s to the imminent release of 3.3 and more amazing things in 3.4 and beyond! And here&#8217;s a full screenshot of the credits page (as of just now), because everybody involved deserves credit. Whenever you update to 3.3, make sure to check out http://yourdomain.com/wp-admin/credits.php. And please please please, do the update.</p>
<p><a href="http://www.helenhousandi.com/wordpress/2011/12/the-perks-of-contributing/wp33-credits/" rel="attachment wp-att-187" title="WordPress 3.3 Credits"><img class="alignnone size-medium wp-image-187" title="WordPress 3.3 Credits" src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/12/wp33-credits-300x451.png" alt="WordPress 3.3 Credits" width="300" height="451" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.helenhousandi.com/wordpress/2011/12/the-perks-of-contributing/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Blue Admin Bar 1.0</title>
		<link>http://www.helenhousandi.com/wordpress/2011/11/blue-admin-bar-1-0/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=blue-admin-bar-1-0</link>
		<comments>http://www.helenhousandi.com/wordpress/2011/11/blue-admin-bar-1-0/#comments</comments>
		<pubDate>Thu, 10 Nov 2011 20:33:51 +0000</pubDate>
		<dc:creator>Helen</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[admin bar]]></category>

		<guid isPermaLink="false">http://www.helenhousandi.com/wordpress/?p=166</guid>
		<description><![CDATA[When we were making mockups for the refreshed admin bar in 3.3, I created a blue version to mix things up and ended up really liking it (yes, this line appears in the plugin&#8217;s readme). So, I decided to make a plugin for it for you all to enjoy that has slightly different versions for [...]]]></description>
			<content:encoded><![CDATA[<p>When we were making mockups for the refreshed admin bar in 3.3, I created a blue version to mix things up and ended up really liking it (yes, this line appears in the plugin&#8217;s readme). So, I decided to make a plugin for it for you all to enjoy that has slightly different versions for 3.3 (currently in beta) and pre-3.3 versions with the admin bar. I am currently using it on my local development sites so that I know where I am, but it&#8217;s also really pretty with the blue admin theme. I plan to add RTL support sometime in the near future.</p>
<p>Available in the WordPress plugin repository: <a href="http://wordpress.org/extend/plugins/blue-admin-bar/">http://wordpress.org/extend/plugins/blue-admin-bar/</a></p>
<h2>Screenshots</h2>
<div id="attachment_168" class="wp-caption alignnone" style="width: 310px"><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-1.png" rel="shadowbox[sbpost-166];player=img;" title="3.3, gray admin theme, dashboard"><img class="size-medium wp-image-168" title="3.3, gray admin theme, dashboard" src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-1-300x197.png" alt="3.3, gray admin theme, dashboard" width="300" height="197" /></a><p class="wp-caption-text">3.3, gray admin theme, dashboard</p></div>
<div id="attachment_169" class="wp-caption alignnone" style="width: 310px"><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-2.png" rel="shadowbox[sbpost-166];player=img;" title="3.3, gray admin theme, add post"><img class="size-medium wp-image-169" title="3.3, gray admin theme, add post" src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-2-300x197.png" alt="3.3, gray admin theme, add post" width="300" height="197" /></a><p class="wp-caption-text">3.3, gray admin theme, add post</p></div>
<div id="attachment_170" class="wp-caption alignnone" style="width: 310px"><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-3.png" rel="shadowbox[sbpost-166];player=img;" title="3.3, blue admin theme, dashboard"><img class="size-medium wp-image-170" title="3.3, blue admin theme, dashboard" src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-3-300x197.png" alt="3.3, blue admin theme, dashboard" width="300" height="197" /></a><p class="wp-caption-text">3.3, blue admin theme, dashboard</p></div>
<div id="attachment_171" class="wp-caption alignnone" style="width: 310px"><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-4.png" rel="shadowbox[sbpost-166];player=img;" title="3.3, blue admin theme, add post"><img class="size-medium wp-image-171" title="3.3, blue admin theme, add post" src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-4-300x197.png" alt="3.3, blue admin theme, add post" width="300" height="197" /></a><p class="wp-caption-text">3.3, blue admin theme, add post</p></div>
<div id="attachment_172" class="wp-caption alignnone" style="width: 310px"><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-5.png" rel="shadowbox[sbpost-166];player=img;" title="3.3, Twenty Eleven"><img class="size-medium wp-image-172" title="3.3, Twenty Eleven" src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-5-300x197.png" alt="3.3, Twenty Eleven" width="300" height="197" /></a><p class="wp-caption-text">3.3, Twenty Eleven</p></div>
<div id="attachment_173" class="wp-caption alignnone" style="width: 310px"><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-6.png" rel="shadowbox[sbpost-166];player=img;" title="3.2.1, gray admin theme, dashboard"><img class="size-medium wp-image-173" title="3.2.1, gray admin theme, dashboard" src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-6-300x197.png" alt="3.2.1, gray admin theme, dashboard" width="300" height="197" /></a><p class="wp-caption-text">3.2.1, gray admin theme, dashboard</p></div>
<div id="attachment_174" class="wp-caption alignnone" style="width: 310px"><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-7.png" rel="shadowbox[sbpost-166];player=img;" title="3.2.1, gray admin theme, add post"><img class="size-medium wp-image-174" title="3.2.1, gray admin theme, add post" src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-7-300x197.png" alt="3.2.1, gray admin theme, add post" width="300" height="197" /></a><p class="wp-caption-text">3.2.1, gray admin theme, add post</p></div>
<div id="attachment_175" class="wp-caption alignnone" style="width: 310px"><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-8.png" rel="shadowbox[sbpost-166];player=img;" title="3.2.1, blue admin theme, dashboard"><img class="size-medium wp-image-175" title="3.2.1, blue admin theme, dashboard" src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-8-300x197.png" alt="3.2.1, blue admin theme, dashboard" width="300" height="197" /></a><p class="wp-caption-text">3.2.1, blue admin theme, dashboard</p></div>
<div id="attachment_176" class="wp-caption alignnone" style="width: 310px"><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-9.png" rel="shadowbox[sbpost-166];player=img;" title="3.2.1, blue admin theme, add post"><img class="size-medium wp-image-176" title="3.2.1, blue admin theme, add post" src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-9-300x197.png" alt="3.2.1, blue admin theme, add post" width="300" height="197" /></a><p class="wp-caption-text">3.2.1, blue admin theme, add post</p></div>
<div id="attachment_177" class="wp-caption alignnone" style="width: 310px"><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-10.png" rel="shadowbox[sbpost-166];player=img;" title="3.2.1, Twenty Ten"><img class="size-medium wp-image-177" title="3.2.1, Twenty Ten" src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/11/screenshot-10-300x197.png" alt="3.2.1, Twenty Ten" width="300" height="197" /></a><p class="wp-caption-text">3.2.1, Twenty Ten</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.helenhousandi.com/wordpress/2011/11/blue-admin-bar-1-0/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Contributing!!</title>
		<link>http://www.helenhousandi.com/wordpress/2011/09/contributing/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=contributing</link>
		<comments>http://www.helenhousandi.com/wordpress/2011/09/contributing/#comments</comments>
		<pubDate>Wed, 14 Sep 2011 15:25:41 +0000</pubDate>
		<dc:creator>Helen</dc:creator>
				<category><![CDATA[Contributing]]></category>

		<guid isPermaLink="false">http://www.helenhousandi.com/wordpress/?p=154</guid>
		<description><![CDATA[Back in July at WordCamp Boston, I met some of the core WordPress developers and other important folks and was told I should watch the responsive admin ticket. So, I did, finally managed to remember to get on IRC for a UI team meeting, and got assigned things to do. I started off with making [...]]]></description>
			<content:encoded><![CDATA[<p>Back in July at WordCamp Boston, I met some of the core WordPress developers and other important folks and was told I should watch the responsive admin ticket. So, I did, finally managed to remember to get on IRC for a UI team meeting, and got assigned things to do. I started off with making tables work better at smaller screen sizes, but it ended up being pretty much for mobile only, which is now punted to 3.4. But then I got plugin and theme screens on Tuesday to work on, so that I did and, along with an old ticket of mine, I had 3 patches committed in 3 days! Those would be changesets <a href="http://core.trac.wordpress.org/changeset/18666">[18666]</a>, <a href="http://core.trac.wordpress.org/changeset/18670">[18670]</a>, and <a href="http://core.trac.wordpress.org/changeset/18673">[18673]</a>. The first two are one-liners, but it doesn&#8217;t matter &#8211; contributing is awesome, and if you can do it, you should! Everybody I&#8217;ve interacted with has been very friendly and helpful, and there&#8217;s nothing better than really understanding just what it is that you&#8217;re using every day.</p>
<p>This has also inspired me to keep a running list of my contributions in the sidebar. Let&#8217;s see what I can find <img src='http://www.helenhousandi.com/wordpress/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.helenhousandi.com/wordpress/2011/09/contributing/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Customizing the special multisite dashboards</title>
		<link>http://www.helenhousandi.com/wordpress/2011/08/customizing-the-special-multisite-dashboards/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=customizing-the-special-multisite-dashboards</link>
		<comments>http://www.helenhousandi.com/wordpress/2011/08/customizing-the-special-multisite-dashboards/#comments</comments>
		<pubDate>Mon, 01 Aug 2011 19:56:43 +0000</pubDate>
		<dc:creator>Helen</dc:creator>
				<category><![CDATA[Actions]]></category>
		<category><![CDATA[Admin]]></category>
		<category><![CDATA[Multisite]]></category>

		<guid isPermaLink="false">http://www.helenhousandi.com/wordpress/?p=125</guid>
		<description><![CDATA[Edit (9/8/2011): This used to global $wp_meta_boxes and then unset() things from the array. NO MORE. Now we&#8217;ll do it the WordPress Way™ with remove_meta_box(). There are plenty of resources out there on customizing the usual WordPress Dashboard widgets, but not a whole lot (or maybe even anything beyond Xref) on the two additional screens [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Edit (9/8/2011):</strong> This used to global <code>$wp_meta_boxes</code> and then <code>unset()</code> things from the array. NO MORE. Now we&#8217;ll do it the WordPress Way™ with <code>remove_meta_box()</code>.</p>
<p>There are <a href="https://github.com/tw2113/WordPress-Starter-Theme/blob/master/custom_cms_admin.php">plenty</a> <a href="http://digwp.com/2010/10/customize-wordpress-dashboard/">of</a> <a href="http://coding.smashingmagazine.com/2009/12/14/advanced-power-tips-for-wordpress-template-developers-reloaded/">resources</a> out there on customizing the usual WordPress Dashboard widgets, but not a whole lot (or maybe even anything beyond Xref) on the two additional screens WordPress multisite introduces: the Network Admin screen, available to superadmins, and the Global Dashboard screen, which is seen by users who have an account but are not assigned to a site or sites*. The hooks for these screens are <code>wp_network_dashboard_setup</code> and <code>wp_user_dashboard_setup</code>, respectively.</p>
<p>To clear out the Network Admin Dashboard (remove or comment out the lines for ones you do want to keep):</p>
<pre class="brush: php; gutter: true; first-line: 1">add_action('wp_network_dashboard_setup', 'hhs_remove_network_dashboard_widgets' );
function hhs_remove_network_dashboard_widgets() {
 	remove_meta_box ( 'network_dashboard_right_now', 'dashboard-network', 'normal' ); // Right Now
 	remove_meta_box ( 'dashboard_plugins', 'dashboard-network', 'normal' ); // Plugins
 	remove_meta_box ( 'dashboard_primary', 'dashboard-network', 'side' ); // WordPress Blog
 	remove_meta_box ( 'dashboard_secondary', 'dashboard-network', 'side' ); // Other WordPress News
}</pre>
<p>To clear out the Global Dashboard:</p>
<pre class="brush: php; gutter: true; first-line: 1">add_action('wp_user_dashboard_setup', 'hhs_remove_user_dashboard_widgets' );
function hhs_remove_user_dashboard_widgets() {
 	remove_meta_box ( 'dashboard_primary', 'dashboard-user', 'normal' ); //WordPress Blog
 	remove_meta_box ( 'dashboard_secondary', 'dashboard-user', 'normal' ); //Other WordPress News
}</pre>
<p>* In case you&#8217;re wondering how a user ends up logged in but not belonging to a site: sometimes you might bulk add users, especially when using another authentication system, or you might have materials available to anybody who&#8217;s logged into the network but doesn&#8217;t necessarily have to belong to a site. I&#8217;ve got a custom dashboard widget (using the same <code>wp_user_dashboard_setup</code> hook) for Eastman&#8217;s Global Dashboard to hopefully un-confuse users (yes, the ghost of George Eastman is logged in).</p>
<p><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/08/Screen-Shot-2011-07-31-at-2.40.08-PM.png" rel="shadowbox[sbpost-125];player=img;" title="Eastman Global Dashboard Widget"><img class="alignnone size-large wp-image-136" title="Eastman Global Dashboard Widget" src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/08/Screen-Shot-2011-07-31-at-2.40.08-PM-460x332.png" alt="Eastman Global Dashboard Widget" width="460" height="332" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.helenhousandi.com/wordpress/2011/08/customizing-the-special-multisite-dashboards/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Really Simple Gallery Widget 1.1</title>
		<link>http://www.helenhousandi.com/wordpress/2011/06/really-simple-gallery-widget-1-1/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=really-simple-gallery-widget-1-1</link>
		<comments>http://www.helenhousandi.com/wordpress/2011/06/really-simple-gallery-widget-1-1/#comments</comments>
		<pubDate>Tue, 14 Jun 2011 03:20:36 +0000</pubDate>
		<dc:creator>Helen</dc:creator>
				<category><![CDATA[Plugins]]></category>

		<guid isPermaLink="false">http://www.helenhousandi.com/wordpress/?p=110</guid>
		<description><![CDATA[After several months of a severe reduction in the amount of &#8220;free&#8221; time I have, I finally managed to sit down and finish an update to the Really Simple Gallery Widget plugin. This update adds the ability to choose to use images from the entire media library and/or view only the images attached to the [...]]]></description>
			<content:encoded><![CDATA[<p>After several months of a severe reduction in the amount of &#8220;free&#8221; time I have, I finally managed to sit down and finish an update to the Really Simple Gallery Widget plugin. This update adds the ability to choose to use images from the entire media library and/or view only the images attached to the post/page being viewed. It also has some cleaner and safer HTML and should have a better memory footprint (not that it was a hog to begin with). Available in the WordPress plugin repository now.</p>
<h3><a href="http://wordpress.org/extend/plugins/really-simple-gallery-widget/">* Download Really Simple Gallery Widget 1.1 *</a></h3>
]]></content:encoded>
			<wfw:commentRss>http://www.helenhousandi.com/wordpress/2011/06/really-simple-gallery-widget-1-1/feed/</wfw:commentRss>
		<slash:comments>22</slash:comments>
		</item>
		<item>
		<title>Styling the Really Simple Gallery Widget</title>
		<link>http://www.helenhousandi.com/wordpress/2011/02/styling-the-really-simple-gallery-widget/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=styling-the-really-simple-gallery-widget</link>
		<comments>http://www.helenhousandi.com/wordpress/2011/02/styling-the-really-simple-gallery-widget/#comments</comments>
		<pubDate>Sun, 27 Feb 2011 06:49:29 +0000</pubDate>
		<dc:creator>Helen</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Plugins]]></category>

		<guid isPermaLink="false">http://www.helenhousandi.com/wordpress/?p=96</guid>
		<description><![CDATA[The Really Simple Gallery Widget has some very light CSS selectors in the HTML for you to apply your styles to. They amount to this: there is an outer div with the class &#8220;rsgallery&#8221;, each image is given a class of &#8220;rsg_image&#8221;, and captions are given a class of &#8220;rsg_caption&#8221;. There are no current plans [...]]]></description>
			<content:encoded><![CDATA[<p>The Really Simple Gallery Widget has some very light CSS selectors in the HTML for you to apply your styles to. They amount to this: there is an outer div with the class &#8220;rsgallery&#8221;, each image is given a class of &#8220;rsg_image&#8221;, and captions are given a class of &#8220;rsg_caption&#8221;. There are no current plans attach stylesheets, but some better structure and/or options for classes may be provided in a future version.</p>
<p>Examples:</p>
<pre class="brush: css; title: ; notranslate">/* Add some space (20 pixels in this example) under each image */
.rsg_image { margin-bottom:20px; }</pre>
<pre class="brush: css; title: ; notranslate">/* Add a border that changes when moused over
Important: don't forget that you need to add double the width of the border to the image width to get the total */
a .rsg_image { border:1px solid #00F; }
a:hover .rsg_image { border: 1px solid #F00; }</pre>
<pre class="brush: css; title: ; notranslate">/* Create a grid of images - will not work with captions in the current version. Adjust the margins to fit in the width of the widget area - there will be leftover margin on some sides
Be careful - the floating may cause your layout to behave strangely, especially anything that follows the gallery widget */
.rsg_image { float:left; margin:0 20px 20px 0; }
</pre>
<p>To add CSS to a theme that you can&#8217;t edit, try using the the <a href="http://wordpress.org/extend/plugins/simpler-css/">Simpler CSS</a> plugin. Remember that if you edit a CSS file in a downloaded theme like Twenty Ten, it will probably get overwritten if you upgrade the theme in the future. Make a <a href="http://codex.wordpress.org/Child_Themes">child theme</a> instead.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.helenhousandi.com/wordpress/2011/02/styling-the-really-simple-gallery-widget/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Showing other image sizes in the Media Gallery dialog</title>
		<link>http://www.helenhousandi.com/wordpress/2011/02/showing-other-image-sizes-in-the-media-gallery-dialog/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=showing-other-image-sizes-in-the-media-gallery-dialog</link>
		<comments>http://www.helenhousandi.com/wordpress/2011/02/showing-other-image-sizes-in-the-media-gallery-dialog/#comments</comments>
		<pubDate>Thu, 24 Feb 2011 20:28:34 +0000</pubDate>
		<dc:creator>Helen</dc:creator>
				<category><![CDATA[Filters]]></category>
		<category><![CDATA[Media Gallery]]></category>

		<guid isPermaLink="false">http://www.helenhousandi.com/wordpress/?p=89</guid>
		<description><![CDATA[As I was developing the Really Simple Gallery Widget, I started defining more custom image sizes and was irritated to find that they didn&#8217;t show in the Media Gallery dialog, even though they were being generated. So, what&#8217;s a girl to do except fix that? I noticed that the Max Image Size Control plugin did [...]]]></description>
			<content:encoded><![CDATA[<p>As I was developing the <a title="Really Simple Gallery Widget" href="http://www.helenhousandi.com/wordpress/2011/01/really-simple-gallery-widget/">Really Simple Gallery Widget</a>, I started defining more custom image sizes and was irritated to find that they didn&#8217;t show in the Media Gallery dialog, even though they were being generated. So, what&#8217;s a girl to do except fix that? I noticed that the <a href="http://wordpress.org/extend/plugins/max-image-size-control/">Max Image Size Control plugin</a> did add the sizes, so I looked inside the plugin to see how that was happening. Turns out there&#8217;s a not very well-known filter &#8220;attachment_fields_to_edit&#8221; which allowed me to do just what I needed to. Unfortunately, it doesn&#8217;t look too pretty because each of the items just floats to the left and they are not of consistent heights, but it works for what I need it to do. To use, just add the following to your functions.php or your plugin file.</p>
<pre class="brush: php; title: ; notranslate">/**
 * Add intermediate image sizes to media gallery modal dialog
 */

function image_sizes_attachment_fields_to_edit( $form_fields, $post ) {
	if ( !is_array( $imagedata = wp_get_attachment_metadata( $post-&gt;ID ) ) )
		return $form_fields;

	if ( is_array($imagedata['sizes']) ) :
		foreach ( $imagedata['sizes'] as $size =&gt; $val ) :
			if ( $size != 'thumbnail' &amp;&amp; $size != 'medium' &amp;&amp; $size != 'large' ) :
				$css_id = &quot;image-size-{$size}-{$post-&gt;ID}&quot;;
				$html .= '&lt;div class=&quot;image-size-item&quot;&gt;&lt;input type=&quot;radio&quot; name=&quot;attachments['.$post-&gt;ID.'][image-size]&quot; id=&quot;'.$css_id.'&quot; value=&quot;'.$size.'&quot; /&gt;';
				$html .= '&lt;label for=&quot;'.$css_id.'&quot;&gt;'.$size.'&lt;/label&gt;';
				$html .= ' &lt;label for=&quot;'.$css_id.'&quot; class=&quot;help&quot;&gt;'.sprintf( __(&quot;(%d&amp;nbsp;&amp;times;&amp;nbsp;%d)&quot;), $val['width'], $val['height'] ). '&lt;/label&gt;';
				$html .= '&lt;/div&gt;';
			endif;
		endforeach;
	endif;

	$form_fields['image-size']['html'] .= $html;
	return $form_fields;
}
add_filter( 'attachment_fields_to_edit', 'image_sizes_attachment_fields_to_edit', 100, 2 );</pre>
<h3>In action:</h3>
<p><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/02/intermediate-sizes.png" rel="shadowbox[sbpost-89];player=img;" title="Intermediate sizes in the WordPress Media Gallery dialog"><img src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/02/intermediate-sizes-460x86.png" alt="Intermediate sizes in the WordPress Media Gallery dialog" title="Intermediate sizes in the WordPress Media Gallery dialog" width="460" height="86" class="alignnone size-large wp-image-92" /></a></p>
<h3>Resources:</h3>
<ul>
<li><a href="# http://xplus3.net/2008/11/17/custom-thumbnails-wordpress-plugin/">http://xplus3.net/2008/11/17/custom-thumbnails-wordpress-plugin/</a></li>
<li><a href="http://net.tutsplus.com/tutorials/wordpress/creating-custom-fields-for-attachments-in-wordpress/">http://net.tutsplus.com/tutorials/wordpress/creating-custom-fields-for-attachments-in-wordpress/</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.helenhousandi.com/wordpress/2011/02/showing-other-image-sizes-in-the-media-gallery-dialog/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Really Simple Gallery Widget</title>
		<link>http://www.helenhousandi.com/wordpress/2011/01/really-simple-gallery-widget/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=really-simple-gallery-widget</link>
		<comments>http://www.helenhousandi.com/wordpress/2011/01/really-simple-gallery-widget/#comments</comments>
		<pubDate>Thu, 27 Jan 2011 19:11:08 +0000</pubDate>
		<dc:creator>Helen</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[gallery]]></category>
		<category><![CDATA[widget]]></category>

		<guid isPermaLink="false">http://www.helenhousandi.com/wordpress/?p=62</guid>
		<description><![CDATA[Yes, it&#8217;s yet another plugin born out of a specific work request that seems usable by the general public. We&#8217;ve got some pages that function as photo galleries and we like to show said photos in the sidebar in a random order with a link to an anchor on the gallery page or showing the [...]]]></description>
			<content:encoded><![CDATA[<p>Yes, it&#8217;s yet another plugin born out of a specific work request that seems usable by the general public. We&#8217;ve got some pages that function as photo galleries and we like to show said photos in the sidebar in a random order with a link to an anchor on the gallery page or showing the full-size image in a Shadowbox overlay. Turns out that the built-in gallery shortcode doesn&#8217;t actually do random (as far as I could tell) and shows captions by default and all kinds of things that just weren&#8217;t working for me (or the people I report to). I looked through and tried out a pretty ridiculous number of plugins, many of which required the use of separate galleries or new posts of a custom post type, and none of which did what I needed them to do &#8211; just use the built-in attachment functionality.</p>
<p>So, I wrote a widget and then made it into a plugin that does more than what I originally needed. A couple examples:</p>
<ul>
<li>Anchor link: <a href="http://tempest.esm.rochester.edu/">Main ESM development site</a></li>
<li>Shadowboxed file link: <a href="http://tempest.esm.rochester.edu/newmusic/">New Music dev site</a></li>
</ul>
<p>Available <s>shortly</s> now in the WordPress plugin repository: <a href="http://wordpress.org/extend/plugins/really-simple-gallery-widget/">http://wordpress.org/extend/plugins/really-simple-gallery-widget/</a>. Here&#8217;s all the stuff from the readme file:</p>
<h3>Really Simple Gallery Widget</h3>
<p>Donate link: <a title="Donate" href="http://www.helenhousandi.com/wordpress/donate/">http://www.helenhousandi.com/wordpress/donate/</a><br />
Tags: gallery, widget<br />
Requires at least: 2.8<br />
Tested up to: 3.1</p>
<p>Simple widget for displaying images attached to a specific post or page.</p>
<h3>Description</h3>
<p>Really Simple Gallery Widget adds a widget to display images that are attached to a post or page, no extra uploading or creating custom post types required. Especially helpful if you create photo gallery pages using the built-in WordPress gallery and just want to be able to display those images in a widget area.</p>
<h4>Features</h4>
<ul>
<li> Add as many widgets as you want, wherever you want</li>
<li> Select a number of images</li>
<li> Select any registered size in WordPress</li>
<li> Display the images in ascending, descending, or random order</li>
<li> Show or hide captions</li>
<li> Link the images to the original file, post, anchor in the post, attachment page, or nothing</li>
<li> Add a prefix to the link and image title (appears as a tooltip)</li>
<li> Use a rel attribute for the link &#8211; great for lightboxes</li>
</ul>
<h3>Installation</h3>
<p>Really Simple Gallery Widget is most easily installed automatically via the Plugins tab in your blog administration panel. Go to Appearance -> Widgets to set one or more widgets up.</p>
<h4>Manual Installation</h4>
<ol>
<li>Upload the really-simple-gallery-widget folder to the /wp-content/plugins/ directory</li>
<li>Activate the plugin through the &#8216;Plugins&#8217; menu in WordPress</li>
<li>Head over to Appearance -> Widgets to set up one or more Really Simple Gallery Widgets</li>
</ol>
<h3>Frequently Asked Questions</h3>
<p><strong>How do I get the ID for the post or page?</strong><br />
The easiest way is to mouseover or click an edit link for the post or page in question. The ID number will appear in the URL; e.g. http://yoursite.com/wp-admin/post.php?post=<strong>41</strong>&amp;action=edit indicates that the ID of the post or page you want to reference is 41.</p>
<p><strong>Why is the anchor link not working?</strong><br />
The anchor link relies on the ID that WordPress automatically generates when you insert an image with a caption. If you inserted the image manually or without a caption, the anchor won&#8217;t jump you to the spot in the page. The ability to specify an anchor may be added at a later time, or you can just add the ID (attachment_##) to the img tag.</p>
<p><strong>I selected a registered size but the images are showing up huge or in the wrong size.</strong><br />
The images may be missing the thumbnails of that size and by default will pull the full size image instead. Try using Viper007Bond&#8217;s fantastic <a href="http://wordpress.org/extend/plugins/regenerate-thumbnails/">Regenerate Thumbnails</a> plugin to create new versions for any new or changed image sizes.</p>
<h3>Screenshots</h3>
<p><div id="attachment_65" class="wp-caption alignleft" style="width: 140px"><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/01/screenshot-1.png" rel="shadowbox[sbpost-62];player=img;" title="Really Simple Gallery Widget options"><img src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/01/screenshot-1-130x300.png" alt="Really Simple Gallery Widget options" title="Really Simple Gallery Widget options" width="130" height="300" class="size-medium wp-image-65" /></a><p class="wp-caption-text">Widget options</p></div> <div id="attachment_66" class="wp-caption alignleft" style="width: 156px"><a href="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/01/screenshot-2.png" rel="shadowbox[sbpost-62];player=img;" title="Sample display with prefixed title showing"><img src="http://www.helenhousandi.com/wordpress/wp-content/uploads/2011/01/screenshot-2-146x300.png" alt="Sample display with prefixed title showing" title="Sample display with prefixed title showing" width="146" height="300" class="size-medium wp-image-66" /></a><p class="wp-caption-text">Sample display with prefixed title showing</p></div></p>
<h3 style="clear:both">Changelog</h3>
<h4>1.0</h4>
<ul>
<li>First version</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.helenhousandi.com/wordpress/2011/01/really-simple-gallery-widget/feed/</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
		<item>
		<title>Hide Admin Bar Search is now in the WordPress Plugin Directory</title>
		<link>http://www.helenhousandi.com/wordpress/2011/01/hide-admin-bar-search-is-now-in-the-wordpress-plugin-directory/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hide-admin-bar-search-is-now-in-the-wordpress-plugin-directory</link>
		<comments>http://www.helenhousandi.com/wordpress/2011/01/hide-admin-bar-search-is-now-in-the-wordpress-plugin-directory/#comments</comments>
		<pubDate>Tue, 18 Jan 2011 16:22:24 +0000</pubDate>
		<dc:creator>Helen</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[3.1]]></category>
		<category><![CDATA[admin bar]]></category>

		<guid isPermaLink="false">http://www.helenhousandi.com/wordpress/?p=37</guid>
		<description><![CDATA[Woohoo, 1.0! Basically the same as my earlier post, with a little cleanup and some readme.txt action: http://wordpress.org/extend/plugins/hide-admin-bar-search/ Fresh from the readme: Hide Admin Bar Search Contributors: helenyhou Tags: admin bar Requires at least: 3.1 Tested up to: 3.1 Small plugin to hide the search box in the admin bar in both dashboard and site [...]]]></description>
			<content:encoded><![CDATA[<p>Woohoo, 1.0! Basically the same as <a title="Hiding the search form in the 3.1 Admin Bar" href="http://www.helenhousandi.com/wordpress/2011/01/hiding-the-search-form-in-the-3-1-admin-bar/">my earlier post</a>, with a little cleanup and some readme.txt action: <a href="http://wordpress.org/extend/plugins/hide-admin-bar-search/">http://wordpress.org/extend/plugins/hide-admin-bar-search/</a></p>
<p>Fresh from the readme:</p>
<h3>Hide Admin Bar Search</h3>
<p>Contributors: <a href="http://profiles.wordpress.org/users/helenyhou/">helenyhou</a><br />
Tags: admin bar<br />
Requires at least: 3.1<br />
Tested up to: 3.1</p>
<p>Small plugin to hide the search box in the admin bar in both dashboard and site views.</p>
<h3>Description</h3>
<p>Hide Admin Bar Search is a small plugin that hides the search box in the 3.1 admin bar in both the dashboard and front-end site views. Useful for those who are not using the built-in WordPress search in the usual way or anybody who wants a more minimal admin bar.</p>
<h3>Installation</h3>
<p>Hide Admin Bar Search is most easily installed automatically via the Plugins tab in your blog administration panel. Activate to hide the search box &#8211; no settings required.</p>
<h5><strong>Manual Installation</strong></h5>
<ol>
<li>Upload the `hide-admin-bar-search` folder to the `/wp-content/plugins/` directory</li>
<li>Activate the plugin through the &#8216;Plugins&#8217; menu in WordPress</li>
<li>Enjoy your cleaner admin bar</li>
</ol>
<h3>Frequently Asked Questions</h3>
<h5><strong>Why would I want to do this?</strong></h5>
<p>The admin bar search uses the default WordPress search. If you are not using that search, or if you just want the admin bar to be more minimal, this is for you.</p>
<h5><strong>Can I choose to show the search box in the dashboard or site view?</strong></h5>
<p>Not at this time &#8211; this plugin is meant to be as simple as possible.</p>
<h3>Changelog</h3>
<h5><strong>1.0</strong></h5>
<ul>
<li>First version</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.helenhousandi.com/wordpress/2011/01/hide-admin-bar-search-is-now-in-the-wordpress-plugin-directory/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

