<?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>Joe Dolson Accessible Web Design &#187; WordPress</title>
	<atom:link href="http://www.joedolson.com/articles/category/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.joedolson.com/articles</link>
	<description>Tips and Commentary on Web Accessibility, Usability, and Search Marketing best practices.</description>
	<lastBuildDate>Thu, 02 Feb 2012 18:13:34 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Looking for developers for My Calendar customizations</title>
		<link>http://www.joedolson.com/articles/2012/01/looking-for-developers-for-my-calendar-customizations/</link>
		<comments>http://www.joedolson.com/articles/2012/01/looking-for-developers-for-my-calendar-customizations/#comments</comments>
		<pubDate>Tue, 17 Jan 2012 18:29:50 +0000</pubDate>
		<dc:creator>Joe Dolson</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[work]]></category>
		<category><![CDATA[wp]]></category>

		<guid isPermaLink="false">http://www.joedolson.com/articles/?p=1313</guid>
		<description><![CDATA[I get a lot of feature requests and customization requests for my event management WordPress plug-in. These requests range from minor tweaks, which I can add as features in less than 10 minutes to major re-skinning and behavioral changes. When I get a request which can potentially be worked into the calendar software as a [...]<p><strong><a href="http://www.joedolson.com/articles/2012/01/looking-for-developers-for-my-calendar-customizations/">Looking for developers for My Calendar customizations</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web Design</small></p>
]]></description>
			<content:encoded><![CDATA[<p>I get a lot of feature requests and customization requests for my <a href="http://wordpress.org/extend/plugins/my-calendar/">event management WordPress plug-in</a>. These requests range from minor tweaks, which I can add as features in less than 10 minutes to major re-skinning and behavioral changes. When I get a request which can potentially be worked into the calendar software as a permanent part of the plug-in, I&#8217;m usually happy to take on that work&thinsp;&#8212;&thinsp;but I only have so much time, and I&#8217;d rather put that time in on making a better plug-in rather than doing new styling and custom&nbsp;behaviors. </p>
<p>So, I&#8217;m in need of a few people who are skilled developers with strong <abbr title="Cascading Style Sheets">CSS</abbr>, JavaScript and/or WordPress/PHP experience. I&#8217;ll maintain this list as people I trust to do high-quality customization work with My Calendar (or with other work,&nbsp;potentially). </p>
<p>Mostly, this will be <abbr title="Cascading Style Sheets">CSS</abbr>/JavaScript work. There may be occasional needs to <abbr title="Hypertext PreProcessing">PHP</abbr> customizations, but that will probably be more&nbsp;rare. </p>
<p>If you&#8217;re interested in being on this list, please <a href="/contact.php">contact me</a>. Provide a couple of work samples where you&#8217;ve done <abbr title="Cascading Style Sheets">CSS</abbr>/JavaScript work. If possible, an actual instance of customizing My Calendar would be very&nbsp;beneficial. </p>
<p>This isn&#8217;t likely to be a flood of work&thinsp;&#8211;&thinsp;but what I&#8217;m getting is more than what I can&nbsp;do. </p>
<p>Thank you!
<p><strong><a href="http://www.joedolson.com/articles/2012/01/looking-for-developers-for-my-calendar-customizations/">Looking for developers for My Calendar customizations</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web&nbsp;Design</small></p>]]></content:encoded>
			<wfw:commentRss>http://www.joedolson.com/articles/2012/01/looking-for-developers-for-my-calendar-customizations/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Accessible WordPress Plug-ins: what does it mean?</title>
		<link>http://www.joedolson.com/articles/2011/11/accessible-wordpress-plug-ins-what-does-it-mean/</link>
		<comments>http://www.joedolson.com/articles/2011/11/accessible-wordpress-plug-ins-what-does-it-mean/#comments</comments>
		<pubDate>Tue, 15 Nov 2011 15:27:20 +0000</pubDate>
		<dc:creator>Joe Dolson</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[wp]]></category>

		<guid isPermaLink="false">http://www.joedolson.com/articles/?p=1256</guid>
		<description><![CDATA[I&#8217;ve been writing WordPress plug-ins for a while now&#8201;&#8212;&#8201;I launched my first plug-in a little more than 3 years ago. I&#8217;ve been involved in web site accessibility for about seven years. Naturally, when I started writing WordPress plug-ins, making them accessible was part of my goal. But accessible software extensions have two aspects: the interface, [...]<p><strong><a href="http://www.joedolson.com/articles/2011/11/accessible-wordpress-plug-ins-what-does-it-mean/">Accessible WordPress Plug-ins: what does it mean?</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web Design</small></p>
]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been writing WordPress plug-ins for a while now&thinsp;&#8212;&thinsp;I launched my first plug-in a little more than 3 years ago. I&#8217;ve been involved in web site accessibility for about seven years. Naturally, when I started writing WordPress plug-ins, making them accessible was part of my goal. But accessible software extensions have two aspects: the interface, and the output: and I don&#8217;t have complete control over&nbsp;either. </p>
<p>Is it possible to make a plug-in with accessible output, guaranteed, every time? Is that compatible with a desire to provide flexible software which developers can use for a wide variety of possible needs from a design and functionality&nbsp;perspective?</p>
<p>What I&#8217;ve found is that I can unquestionably make a plug-in which is capable of creating accessible content. However, I&#8217;ve also discovered that in order to really make a plug-in flexible, it can&#8217;t have too rigid of an output: it needs to allow the user to customize the structure and content at a pretty significant&nbsp;level. </p>
<p>As a web site developer, this is certainly something I always want: whenever I find myself using a plug-in which doesn&#8217;t have built-in templating for the output, I can be pretty certain that I&#8217;ll be making edits to the core plug-in files. The <abbr title="HyperText Markup Language">HTML</abbr> produced is rarely what I really want. My conclusion from this is that if I want to create plug-ins which will be used by sophisticated developers, then they need to be very, very&nbsp;flexible. </p>
<p>The downside to this, of course, is clear: if you can change the output, you can break it. As a result, every one of my plug-ins which creates web site output has equal potential to be accessible or inaccessible: and I can&#8217;t guarantee the results. Additionally, the core content of the site can only be as accessible as the theme surrounding it&thinsp;&#8212;&thinsp;so even if the plug-in is configured with my defaults, that doesn&#8217;t guarantee any particular level of&nbsp;accessibility. </p>
<p>I&#8217;ve had to accept that. But it does mean that I&#8217;m constantly seeing implementations of my plug-ins which, while well-done in general principle, just don&#8217;t meet my ultimate wishes for&nbsp;accessibility.  </p>
<p>But I wouldn&#8217;t turn back. I&#8217;d like very much to be able to enforce accessibility; but realistically, I can&#8217;t do it. There are too many&nbsp;factors.</p>
<p>My <a href="http://www.joedolson.com/articles/my-calendar/users-guide/">User&#8217;s Guide to My Calendar</a> includes a short section on the principles of Accessibility; hopefully, a few people will gain from that fact. The fact is that accessibility requires education: you can&#8217;t force accessibility on somebody by providing accessible software unless you also take total control over the look, feel, and function of that software, and that&#8217;s not the way the web works. With education, you can help move people towards making their own decision to support accessibility in how they customize their software; so that&#8217;s what I&#8217;m hoping&nbsp;for. </p>
<p>So, what does it mean to write an accessible plug-in for WordPress? I can&#8217;t control the administrative interface entirely; because the fundamental interface is the WordPress core, and I can&#8217;t just evade that. I can&#8217;t control the output, in either structure or design; and even if I could control what exists within the parameters of the plug-in&#8217;s output, I can&#8217;t control what surrounds&nbsp;it. </p>
<p>So an accessible plug-in is just a plug-in which is able to used accessibly; a plug-in which doesn&#8217;t actually implement a specific lack of accessibility. Somehow, that&#8217;s a little depressing, but you take what you can&nbsp;get. </p>
<p>The overall lesson to take from this is that no plug-in is actually going to give you an accessible web site. But hopefully, it&#8217;ll give the possibility of an accessible web site.
<p><strong><a href="http://www.joedolson.com/articles/2011/11/accessible-wordpress-plug-ins-what-does-it-mean/">Accessible WordPress Plug-ins: what does it mean?</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web&nbsp;Design</small></p>]]></content:encoded>
			<wfw:commentRss>http://www.joedolson.com/articles/2011/11/accessible-wordpress-plug-ins-what-does-it-mean/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Two new content development plug-ins for WordPress</title>
		<link>http://www.joedolson.com/articles/2011/11/content-development-plug-ins/</link>
		<comments>http://www.joedolson.com/articles/2011/11/content-development-plug-ins/#comments</comments>
		<pubDate>Mon, 07 Nov 2011 17:38:22 +0000</pubDate>
		<dc:creator>Joe Dolson</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[content]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wp]]></category>

		<guid isPermaLink="false">http://www.joedolson.com/articles/?p=1248</guid>
		<description><![CDATA[At the end of October, I took a very needed vacation. Naturally, I couldn&#8217;t just go on vacation, so while I was taking a break I developed two new WordPress plug-ins: My Content Management and Content&#160;Progress. These are plug-ins designed primarily for developers, really&#8201;&#8212;&#8201;although a novice user can probably get something out of them, even [...]<p><strong><a href="http://www.joedolson.com/articles/2011/11/content-development-plug-ins/">Two new content development plug-ins for WordPress</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web Design</small></p>
]]></description>
			<content:encoded><![CDATA[<p>At the end of October, I took a very needed vacation. Naturally, I couldn&#8217;t just go on vacation, so while I was taking a break I developed two new WordPress plug-ins: <a href="http://www.joedolson.com/articles/my-content-management/">My Content Management</a> and <a href="http://www.joedolson.com/articles/content-progress/">Content&nbsp;Progress</a>. </p>
<p>These are plug-ins designed primarily for developers, really&thinsp;&#8212;&thinsp;although a novice user can probably get something out of them, even so. They aren&#8217;t terribly complicated; they&#8217;re just designed as plug-ins which are used for developing new web&nbsp;sites. </p>
<h3>About My Content&nbsp;Management</h3>
<p>The first of the two, <a href="http://www.joedolson.com/articles/my-content-management/">My Content Management</a>, is a tool which creates a suite of custom post types intended to fulfill a variety of special content needs which are common to many web sites. Obviously, these can be done using normal pages, as well&thinsp;&#8212;&thinsp;or dedicated plug-ins for the specific content, but I like to have the option to use a standard, common interface. Using this plug-in, you can have an <abbr title="Frequently Asked Questions">FAQ</abbr>, Testimonials, Staff Members, an artist&#8217;s Portfolio, etc.&thinsp;&#8212;&thinsp;all using the same&nbsp;interface. </p>
<p>If you normally develop web sites and then train your client&#8217;s to maintain the site themselves, it&#8217;s a tremendous help to have a standardized interface for all the content they need to&nbsp;add! </p>
<p>The plug-in features highly customizable templates for three different views of each content type; shortcodes to display the content; widgets for lists of content; special custom field support for the content; and custom taxonomies for each content&nbsp;type. </p>
<h3>About Content&nbsp;Progress</h3>
<p>This is really a simple plug-in, but particularly useful during the early content development stages for any web site. <a href="http://www.joedolson.com/articles/content-progress/">Content Progress</a> adds a flag to the posts list view which allows you to easily pick out which pages have not been completed. For large sites, this can be particularly handy when you need to keep track of what has and hasn&#8217;t been taken care&nbsp;of. </p>
<p>There are two automatic labels: marking pages which have no content or which have very little content, since these are common indicators that content still needs to be completed. Since these are obviously not a complete picture of the site, there are also two manual flags, to specifically mark pages as completed or&nbsp;incomplete.</p>
<p>Hopefully, developers and content creators will find these plug-ins&nbsp;useful!</p>
<ul>
<li><a href="http://wordpress.org/extend/plugins/my-content-management/">Download &#8220;My Content&nbsp;Management&#8221;</a></li>
<li><a href="http://wordpress.org/extend/plugins/content-progress/">Download &#8220;Content&nbsp;Progress&#8221;</a></li>
</ul>
<p><strong><a href="http://www.joedolson.com/articles/2011/11/content-development-plug-ins/">Two new content development plug-ins for WordPress</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web&nbsp;Design</small></p>]]></content:encoded>
			<wfw:commentRss>http://www.joedolson.com/articles/2011/11/content-development-plug-ins/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>My Calendar Version 1.9.0 is almost released</title>
		<link>http://www.joedolson.com/articles/2011/08/my-calendar-version-1-9-0/</link>
		<comments>http://www.joedolson.com/articles/2011/08/my-calendar-version-1-9-0/#comments</comments>
		<pubDate>Wed, 17 Aug 2011 00:22:36 +0000</pubDate>
		<dc:creator>Joe Dolson</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[my-calendar]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wp]]></category>

		<guid isPermaLink="false">http://www.joedolson.com/articles/?p=1147</guid>
		<description><![CDATA[My Calendar version 1.9.0 has been released! Download My Calendar Version&#160;1.9.0 Note for upgraders: During the automatic upgrade process, My Calendar makes a copy of your stylesheet and re-installs it in place of the copy in the package. However, if you are uploading the plug-in manually, this process will not happen. You should either move [...]<p><strong><a href="http://www.joedolson.com/articles/2011/08/my-calendar-version-1-9-0/">My Calendar Version 1.9.0 is almost released</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web Design</small></p>
]]></description>
			<content:encoded><![CDATA[<div class="notice"><strong>My Calendar version 1.9.0 has been released!</strong></div>
<div class="aside">
<p><a href="http://wordpress.org/extend/plugins/my-calendar/">Download My Calendar Version&nbsp;1.9.0</a></p>
<p><strong>Note for upgraders:</strong> During the automatic upgrade process, My Calendar makes a copy of your stylesheet and re-installs it in place of the copy in the package. However, if you are uploading the plug-in manually, this process will not happen. You should either move your current stylesheet into a custom styles folder or choose not to upload that stylesheet in order to retain your&nbsp;styles.</p>
<p><del datetime="2011-09-12T22:55:25+00:00">There has been a problem with My Calendar upgrading settings properly in this update&thinsp;&#8212;&thinsp;if you&#8217;re finding major problems after upgrading, please check your settings; you may need to reset a number of them. (This is the reason I haven&#8217;t released officially yet.)</del></p>
</div>
<p>In point of fact, My Calendar version 1.9 is ready to go. It&#8217;s packaged up, ready to be shipped out. (Well, promoted to the subversion repository.&nbsp;Whatever.) </p>
<p>However, I&#8217;m not ready to launch it yet&thinsp;&#8212;&thinsp;and this is just because I&#8217;ve been very short of time recently, and I don&#8217;t anticipate this changing soon. I don&#8217;t believe that there are any major bugs in the release&thinsp;&#8212;&thinsp;I&#8217;m sure there are small ones, despite the time I&#8217;ve spent on testing, but probably nothing earth-shattering. However, I have to be realistic&thinsp;&#8212;&thinsp;I don&#8217;t know this for sure. And because of that, I need to delay the full launch. This isn&#8217;t because I&#8217;m worried about the possibility of problems, particularly. Rather, it&#8217;s because on the off-hand chance that there are problems, I simply don&#8217;t have the time right now to be able to deal with them&nbsp;responsibly.</p>
<p>That&#8217;s a worrying position&thinsp;&#8211;&thinsp;if I launch, and there&#8217;s a major problem, I may not be able to fix it promptly. No matter how confident I am in the preparation of this version, that&#8217;s clearly grounds to delay. Unfortunately, I&#8217;ve been delaying for a long time; partially because I keep adding new features, and partially because I&#8217;ve been too busy for a&nbsp;while.</p>
<p>So I&#8217;m making this available here, now&thinsp;&#8212;&thinsp;<a href="http://www.joedolson.com/articles/downloads/my-calendar.zip">version 1.9.0 can be downloaded now</a>. I&#8217;m launching it here, instead of through the WordPress repository, because I know that many, many fewer people will get a hold of it here. This means fewer potential problems, and it&#8217;s much more likely I&#8217;ll be able to deal with any problems&nbsp;responsibly.</p>
<p>Since you don&#8217;t have easy access to the changelog, like you would at WordPress.org, here are the changes which apply to the new&nbsp;version:</p>
<h3>Additions:</h3>
<ul>
<li>template editing for list, grid, mini, and single event output.
<li>pop-up box is now draggable.
<li>date format option for grid mode, week view.
<li>templating for details link text.
<li>templating for event <abbr title="Uniform Resource Locator">URL</abbr> link text.
<li>location filtering from shortcode.
<li>image upload option for events
<li>day class to calendar date headings and cells
<li>individual instances of repeating events can be edited
<li>feature to add multiple occurrences of an event simultaneously. (concept from Dave Heitzman)
<li>feature to mass edit information for groups of events (concept from Dave Heitzman)
<li>stored <abbr title="Uniform Resource Locator">URL</abbr> for locations (contrib by John Colvin)
<li>recurring daily events on weekdays only (based on contrib by John Colvin)
<li>optional templating for all event output formats
<li>individual event occurrence iCal export
<li>numerous additional template tags
<li>Option to use custom location filter fields as data control
<li>Shortcode to generate list of saved locations
<li>Network administrators can control whether sub-site calendars contribute only to a central calendar, only to their own calendar, or whether site administrators can make that choice.
<li>Upgrade notice information in dashboard for future upgrades.
<li>implementation of WordPress text diff to compare your styles and scripts against my current released versions
<li>Option to skip a defined number of events in upcoming events lists.
</ul>
<h3>Bug&nbsp;fixes:</h3>
<ul>
<li>jump box was displaying in week/grid&nbsp;view.</li>
<li>some potentially repeatable IDs (code&nbsp;validation).</li>
<li><span class="quo">&#8216;</span>Administrators see all options&#8217; did not&nbsp;work.</li>
<li>Fixed timestamps on main calendar&nbsp;objects</li>
<li>Squashed e_notice&nbsp;errors.</li>
<li>category limiting did not work without permalinks due to GET variable conflict with WordPress&nbsp;core</li>
<li>Missing nonce in database upgrade&nbsp;routine</li>
<li>Mini calendar simultaneously displayed single event view when&nbsp;visited.</li>
<li>Link generation for details view did not work if calendar link&nbsp;parameterized</li>
<li>Issue with weekdays only calendar if day of week set to start on&nbsp;Sunday</li>
<li>Issue with retrieval of user-specific&nbsp;settings</li>
<li>Issue with accessing styles and javascript if My Calendar installed in non-standard&nbsp;directory.</li>
<li>Problem in Today&#8217;s Events widget when Holiday restrictions are&nbsp;enabled.</li>
</ul>
<h3>Changes:</h3>
<ul>
<li>replaced all default icons with 24-bit transparent&nbsp;PNGs</li>
<li>jumpbox output to automatically scope to the oldest dates in the&nbsp;database.</li>
<li>iCal output to output event for complete current&nbsp;month</li>
<li><abbr title="Really Simple Syndication">RSS</abbr> output to prioritize newly added&nbsp;events</li>
<li>holiday skipping/fifth week customization moved into event manager&nbsp;function</li>
<li>new &#8216;close&#8217; icon for pop-up box; added close icon and scripting to mini calendar&nbsp;pop-up</li>
<li>copy in several places; updated template&nbsp;tags.</li>
<li>location lists sorted by location label (contrib by John&nbsp;Colvin)</li>
<li>Eliminated calendar heading&nbsp;option</li>
<li>default style resets no longer stored in global variables, instead stored as&nbsp;files.</li>
<li>Map links now trigger the driving directions dialog in Google&nbsp;Maps</li>
<li>New default stylesheet,&nbsp;refresh.css</li>
</ul>
<p><strong><a href="http://www.joedolson.com/articles/2011/08/my-calendar-version-1-9-0/">My Calendar Version 1.9.0 is almost released</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web&nbsp;Design</small></p>]]></content:encoded>
			<wfw:commentRss>http://www.joedolson.com/articles/2011/08/my-calendar-version-1-9-0/feed/</wfw:commentRss>
		<slash:comments>28</slash:comments>
		</item>
		<item>
		<title>Book Review: WordPress 3 Plugin Development Essentials</title>
		<link>http://www.joedolson.com/articles/2011/07/book-review-wordpress-3-plugin-development-essentials/</link>
		<comments>http://www.joedolson.com/articles/2011/07/book-review-wordpress-3-plugin-development-essentials/#comments</comments>
		<pubDate>Mon, 11 Jul 2011 21:02:14 +0000</pubDate>
		<dc:creator>Joe Dolson</dc:creator>
				<category><![CDATA[Reviews]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.joedolson.com/articles/?p=1127</guid>
		<description><![CDATA[WordPress 3 Plugin Development Essentials by Brian Bondari and Everett&#160;Griffiths Read more about this book at Packt Publishing &#187; or Buy it at Amazon At root, this book is an excellent overview of the techniques and issues which will be encountered by any developer&#8201;&#8212;&#8201;however experienced&#8201;&#8212;&#8201;when they are authorizing a plug-in using the WordPress plug-in API [...]<p><strong><a href="http://www.joedolson.com/articles/2011/07/book-review-wordpress-3-plugin-development-essentials/">Book Review: WordPress 3 Plugin Development Essentials</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web Design</small></p>
]]></description>
			<content:encoded><![CDATA[<h3><a href="http://www.amazon.com/gp/product/184951352X/ref=as_li_ss_tl?ie=UTF8&#038;tag=joedolsonacce-20&#038;linkCode=as2&#038;camp=217145&#038;creative=399373&#038;creativeASIN=184951352X">WordPress 3 Plugin Development Essentials</a><img src="http://www.assoc-amazon.com/e/ir?t=&#038;l=as2&#038;o=1&#038;a=184951352X&#038;camp=217145&#038;creative=399373" width="1" height="1" alt="" /></h3>
<p>by Brian Bondari and Everett&nbsp;Griffiths</p>
<p><img src="http://ecx.images-amazon.com/images/I/51WPwzcqncL._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA300_SH20_OU01_.jpg" alt="" class="alignright" /></p>
<p><a href="http://link.packtpub.com/Wwr2I7">Read more about this book at Packt Publishing</a> &raquo; or <a href="http://www.amazon.com/gp/product/184951352X/ref=as_li_ss_tl?ie=UTF8&#038;tag=joedolsonacce-20&#038;linkCode=as2&#038;camp=1789&#038;creative=390957&#038;creativeASIN=184951352X">Buy it at Amazon</a><img src="http://www.assoc-amazon.com/e/ir?t=joedolsonacce-20&#038;l=as2&#038;o=1&#038;a=184951352X" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" /></p>
<p>At root, this book is an excellent overview of the techniques and issues which will be encountered by any developer&thinsp;&#8212;&thinsp;however experienced&thinsp;&#8212;&thinsp;when they are authorizing a plug-in using the WordPress plug-in <abbr title="Application Programming Interface">API</abbr> in WordPress 3. In particular, I appreciated the emphasis on organization and coding best practices. I&#8217;ve worked with plenty of plug-ins, and there&#8217;s a lot of ugly, unmaintainable code out there. (And I&#8217;ve written some of it, too!) The fact that anybody looking to develop a plug-in who uses this book as a major reference will also get a guide to some best practices in writing software is a <strong>definite</strong>&nbsp;bonus. </p>
<p>The authors are very realistic about the limitations and benefits of the WordPress plug-in system. They observe that WordPress has a great deal of flexibility when it comes to coding style and organization&thinsp;&#8212;&thinsp;and the result is that there&#8217;s a low resistance to entry. Great for beginners, but it does mean that trusting the code you find is something you shouldn&#8217;t do blindly. Clearly the authors want to emphasize that anybody looking to begin developing plug-ins should give some significant thought to the sustainability and quality of their work. Kudos to&nbsp;them!</p>
<p>The book doesn&#8217;t cover an enormous number of different <abbr title="Application Programming Interface">API</abbr> functions, but it does give a good overview of the key hooks that are needed to get started programming for WordPress. Given the scope of what can be done in WordPress, it&#8217;s really a better solution to solidly introduce some of the core techniques rather than try and cram a huge number of concepts down the throats of their&nbsp;readers. </p>
<p>I found the systematic approach taken by the book to be extremely effective&thinsp;&#8212;&thinsp;I appreciated that the book intentionally had the reader introduce common errors into their plug-ins. Having encountered most of those issues by accident somewhere along the line, it&#8217;s tremendously valuable to already have been made aware of some key&nbsp;elements. </p>
<p>I do think that this is a good book, and very worthwhile for the beginning plug-in developer. There are a few additional areas which I would have liked to have seen covered,&nbsp;however. </p>
<p>Although the book is very thorough in addressing programming best practices, it doesn&#8217;t address the quality of output code at all. Valid <abbr title="HyperText Markup Language">HTML</abbr>, consistent use of elements, semantics, and accessibility are all issues which deserve a significant mention in the programming of a WordPress extension&thinsp;&#8212;&thinsp;however easily the plug-in can be maintained, if it doesn&#8217;t produce high-quality output, this can be a major disadvantage for the plug-in. It is very dissatisfying to install a plug-in which does exactly what you need it to, but produces output which can&#8217;t easily be styled or doesn&#8217;t meet the standards required for your web&nbsp;site. </p>
<p>Nonetheless, there are no other issues which I felt were truly missed&thinsp;&#8212;&thinsp;the book is well-written, thorough, and methodical. I can highly recommend it to anybody looking to start authoring WordPress&nbsp;plug-ins. </p>
<p><em>Note: although this review was not paid, I was provided with a free review copy by Packt publishing in exchange for the review. It was definitely a worthwhile&nbsp;trade!</em></p>
<p><strong><a href="http://www.joedolson.com/articles/2011/07/book-review-wordpress-3-plugin-development-essentials/">Book Review: WordPress 3 Plugin Development Essentials</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web&nbsp;Design</small></p>]]></content:encoded>
			<wfw:commentRss>http://www.joedolson.com/articles/2011/07/book-review-wordpress-3-plugin-development-essentials/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>The Vocal Minority</title>
		<link>http://www.joedolson.com/articles/2011/07/the-vocal-minority/</link>
		<comments>http://www.joedolson.com/articles/2011/07/the-vocal-minority/#comments</comments>
		<pubDate>Fri, 01 Jul 2011 18:33:26 +0000</pubDate>
		<dc:creator>Joe Dolson</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wp]]></category>

		<guid isPermaLink="false">http://www.joedolson.com/articles/?p=1122</guid>
		<description><![CDATA[As an accessibility consultant and passionate standards advocate, I&#8217;m generally in the position of appreciating the concerns of the minority. As a WordPress plug-in developer, I have a much harder time with it. In fact, as a WordPress plug-in developer, I find the vocal minority very, very&#160;frustrating. So I&#8217;m just going to whinge a little [...]<p><strong><a href="http://www.joedolson.com/articles/2011/07/the-vocal-minority/">The Vocal Minority</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web Design</small></p>
]]></description>
			<content:encoded><![CDATA[<p>As an accessibility consultant and passionate standards advocate, I&#8217;m generally in the position of appreciating the concerns of the minority. As a WordPress plug-in developer, I have a much harder time with it. In fact, as a WordPress plug-in developer, I find the vocal minority very, very&nbsp;frustrating. </p>
<p>So I&#8217;m just going to whinge a little bit. You can stop reading now if you&#8217;re going to be a dick about&nbsp;it. </p>
<p>I recently released a new version (version 2.3.x) of my plug-in <a href="http://www.joedolson.com/articles/wp-to-twitter/">WP to Twitter</a>, which does exactly what it says&thinsp;&#8212;&thinsp;posts status updates from WordPress to Twitter. This release included a couple of heavily demanded features, including support for custom post types and for tweeting updates on&nbsp;comments. </p>
<p>I&#8217;ll admit that there were a couple minor bugs in that release&thinsp;&#8212;&thinsp;as a result, I&#8217;ve released two updates since then, cleaning up those&nbsp;errors. </p>
<p>Some people, in reading this post, will quibble with the statement that they were minor bugs&thinsp;&#8212;&thinsp;and I&#8217;m sure that those who were affected by them don&#8217;t think so. That&#8217;s perfectly&nbsp;fair. </p>
<p>What really bugs me, however, is that if I look at the only real metrics I have for estimating the success of a new feature release, then I&#8217;d have to judge that this was a complete and utter failure. Since that release, I&#8217;ve had dozens of support requests because of bugs, a handful of small donations adding up to at most $45 (if I include all contributions which weren&#8217;t attributable to a specific project), and on the <a href="http://wordpress.org/extend/plugins/wp-to-twitter/">WP to Twitter page at WordPress.org</a>, the &#8220;works&#8221; gauge has been hovering between split towards broken. And the only working vote was&nbsp;mine.</p>
<p>However, I know that this isn&#8217;t really accurate. The reason that I know this is because about a year and a half ago, give or take a few months, I did release a version of the same plug-in that was *really* broken. That was a definite screw-up. At the time, WP to Twitter was a much less popular plug-in, so the impact was dampened, but in the first few hours after release I had several dozen e-mails and support requests informing me of the&nbsp;problem. </p>
<p>In this case, there&#8217;ve been 20,000 plus downloads of the updated version with a handful of people (about 10-12) complaining of problems. In my estimation, this is a very small number of issues given the apparent numbers of&nbsp;users. </p>
<p>But I don&#8217;t really know that, because I don&#8217;t hear very much from those who have a good&nbsp;experience. </p>
<p>This is actually pretty intentional. WP to Twitter is supposed to work quietly in the background&thinsp;&#8212;&thinsp;it&#8217;s not supposed to be an &#8220;in-your-face&#8221; plug-in. So when it works, people don&#8217;t notice it. However, from my seat today, it seems somewhat demoralizing. It makes me very seriously wonder why I continue to work on WP to Twitter. (For the record, I get a lot more positive feedback on <a href="http://www.joedolson.com/articles/my-calendar/">My Calendar</a>, which does&nbsp;help.)</p>
<p>Nonetheless, I have no intention to discontinue support for WP to Twitter. Maybe it&#8217;s just an ego trip, but it&#8217;s certainly helped me build a thick&nbsp;skin&#8230;</p>
<p><strong><a href="http://www.joedolson.com/articles/2011/07/the-vocal-minority/">The Vocal Minority</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web&nbsp;Design</small></p>]]></content:encoded>
			<wfw:commentRss>http://www.joedolson.com/articles/2011/07/the-vocal-minority/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Quick Tips: URLs in WordPress development sites</title>
		<link>http://www.joedolson.com/articles/2011/05/quick-tips-urls-in-wordpress-development-sites/</link>
		<comments>http://www.joedolson.com/articles/2011/05/quick-tips-urls-in-wordpress-development-sites/#comments</comments>
		<pubDate>Fri, 13 May 2011 13:43:53 +0000</pubDate>
		<dc:creator>Joe Dolson</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[shortcodes]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[wp]]></category>

		<guid isPermaLink="false">http://www.joedolson.com/articles/?p=976</guid>
		<description><![CDATA[Something I&#8217;ve occasionally found irritating when developing a web site outside of it&#8217;s long-term residence (on a temporary URL, in a subdirectory, etc.), is having to choose between either adding relative URLs, the URLs for the current address, or the URLs for the final address for internal links in the development&#160;site. Obviously, using relative URLs [...]<p><strong><a href="http://www.joedolson.com/articles/2011/05/quick-tips-urls-in-wordpress-development-sites/">Quick Tips: URLs in WordPress development sites</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web Design</small></p>
]]></description>
			<content:encoded><![CDATA[<p>Something I&#8217;ve occasionally found irritating when developing a web site outside of it&#8217;s long-term residence (on a temporary <abbr title="Uniform Resource Locator">URL</abbr>, in a subdirectory, etc.), is having to choose between either adding relative URLs, the URLs for the current address, or the URLs for the final address for internal links in the development&nbsp;site. </p>
<p>Obviously, using relative URLs will work, but I&#8217;m generally reluctant to use them in any <abbr title="Content Management System">CMS</abbr> (Content Management System), knowing that I may later want to provide access to that content elsewhere on the site. One of the luxuries of a <abbr title="Content Management System">CMS</abbr> is the ability to use a single source for content which is used in multiple locations, after all&thinsp;&#8212;&thinsp;but I don&#8217;t much like paying for that with broken&nbsp;links. </p>
<p>However, and especially with a larger web site, it&#8217;s not exactly a lot of fun to have to either do a big search and replace or manually run through and replace URLs at the time of&nbsp;launch. </p>
<p>Fortunately, WordPress&#8217; shortcodes <abbr title="Application Programming Interface">API</abbr> provides an insanely easy way to get around&nbsp;this.</p>
<p>Add this to your theme&#8217;s <code>functions.php</code>&nbsp;file:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;">add_shortcode<span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'url'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'home_url'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>If you&#8217;re not comfortable editing your <code>functions.php</code> file, you can also <a href="http://www.joedolson.com/articles/downloads/url-shortcode.zip">download it as a&nbsp;plug-in</a>.</p>
<p>This very, very short line of code will provide you with the simple inline shortcode <code>[url]</code>, which will provide (obviously) the home <abbr title="Uniform Resource Locator">URL</abbr> for your WordPress web&nbsp;site.</p>
<p>You can use this in any page or post when you know the <abbr title="Uniform Resource Locator">URL</abbr> will be changing like this: <code>&lt;a&nbsp;href=&quot;[url]/pretend-page/&quot;&gt;</code>.</p>
<p>Even if you&#8217;re not planning on moving your web site, it&#8217;s clear that typing those five characters is probably a much faster way of getting your home <abbr title="Uniform Resource Locator">URL</abbr> than typing it out!
<p><strong><a href="http://www.joedolson.com/articles/2011/05/quick-tips-urls-in-wordpress-development-sites/">Quick Tips: URLs in WordPress development sites</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web&nbsp;Design</small></p>]]></content:encoded>
			<wfw:commentRss>http://www.joedolson.com/articles/2011/05/quick-tips-urls-in-wordpress-development-sites/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>WordPress Call for Accessibility</title>
		<link>http://www.joedolson.com/articles/2011/05/wordpress-call-for-accessibility/</link>
		<comments>http://www.joedolson.com/articles/2011/05/wordpress-call-for-accessibility/#comments</comments>
		<pubDate>Fri, 06 May 2011 20:39:52 +0000</pubDate>
		<dc:creator>Joe Dolson</dc:creator>
				<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.joedolson.com/articles/?p=985</guid>
		<description><![CDATA[Jane Wells, the WordPress user interface lead, posted a call for accessibility reviewers for WordPress 3.2 and the new Twenty Eleven theme. I would dearly love to help with this, but in all practicality I don&#8217;t think I can commit to it right now. However, I hope that if there&#8217;s anybody out there with a [...]<p><strong><a href="http://www.joedolson.com/articles/2011/05/wordpress-call-for-accessibility/">WordPress Call for Accessibility</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web Design</small></p>
]]></description>
			<content:encoded><![CDATA[<p>Jane Wells, the WordPress user interface lead, posted a call for accessibility reviewers for WordPress 3.2 and the new Twenty Eleven theme. I would dearly love to help with this, but in all practicality I don&#8217;t think I can commit to it right now. However, I hope that if there&#8217;s anybody out there with a good handle on accessibility issues and a little extra time they&#8217;ll volunteer to provide their&nbsp;thoughts! </p>
<p>WordPress has demonstrated an interest in accessibility, but they need your&nbsp;help! </p>
<p>If you&#8217;re interested, Jane has asked for names and information to sign up (although, so far, it seems like most people have just gone ahead and started making comments&nbsp;directly.)</p>
<p>Show your interest here: <a href="http://make.wordpress.org/accessibility/2011/05/06/if-anyone-would-like-to-take-a-stroll-th/">Make WordPress&nbsp;Accessible</a></p>
<p>Keep in mind, please, that the WordPress development team are asking for help, not criticism. They are asking for help because they know that they aren&#8217;t accessibility experts&thinsp;&#8212;&thinsp;keep the tone constructive! WordPress is a great application&thinsp;&#8212;&thinsp;and from the vantage point of making the web more accessible, making such a popular and widespread application as accessible as possible would be huge progress.
<p><strong><a href="http://www.joedolson.com/articles/2011/05/wordpress-call-for-accessibility/">WordPress Call for Accessibility</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web&nbsp;Design</small></p>]]></content:encoded>
			<wfw:commentRss>http://www.joedolson.com/articles/2011/05/wordpress-call-for-accessibility/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WP to Twitter announcements</title>
		<link>http://www.joedolson.com/articles/2011/02/wp-to-twitter-announcements/</link>
		<comments>http://www.joedolson.com/articles/2011/02/wp-to-twitter-announcements/#comments</comments>
		<pubDate>Sat, 19 Feb 2011 00:00:46 +0000</pubDate>
		<dc:creator>Joe Dolson</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[plugins]]></category>
		<category><![CDATA[wp]]></category>
		<category><![CDATA[wp to twitter]]></category>

		<guid isPermaLink="false">http://www.joedolson.com/articles/?p=932</guid>
		<description><![CDATA[First of all, I released version 2.2.7 today. This version is mostly a bug fix and error message improvement release, intended to help users solve their own problems more easily, as well as enhancing the overall stability of the plug-in with a wider variety of installation&#160;scenarios. Second, I want you to know about my WP [...]<p><strong><a href="http://www.joedolson.com/articles/2011/02/wp-to-twitter-announcements/">WP to Twitter announcements</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web Design</small></p>
]]></description>
			<content:encoded><![CDATA[<p>First of all, I released version 2.2.7 today. This version is mostly a bug fix and error message improvement release, intended to help users solve their own problems more easily, as well as enhancing the overall stability of the plug-in with a wider variety of installation&nbsp;scenarios. </p>
<p>Second, I want you to know about my <a href="http://fundry.com/project/10-wp-to-twitter">WP to Twitter Fundry page</a>. Fundry is a site which helps developers raise money to improve their projects. There are a handful of pledges already, but I&#8217;m hoping to be able to use this as a way to both fund improvements to the plug-in and to know what kinds of changes are really the most desired in the user&nbsp;base. </p>
<p>Finally, I thought I&#8217;d mention that Vladimir Prelovac has recently released a new plug-in called <a href="http://www.prelovac.com/vladimir/wordpress-plugins/wp-quick-deploy">WP Quick Deploy</a>. This plug-in is meant to provide people with a method to quickly and easily install a variety of their favorite plug-ins, and he&#8217;s chosen to include WP to Twitter as one of the recommended tools available in the social media section of his plug-in. This sounds like a great time-saver of a project, especially for developers, so I highly recommend you take a look at it!
<p><strong><a href="http://www.joedolson.com/articles/2011/02/wp-to-twitter-announcements/">WP to Twitter announcements</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web&nbsp;Design</small></p>]]></content:encoded>
			<wfw:commentRss>http://www.joedolson.com/articles/2011/02/wp-to-twitter-announcements/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>My Calendar version 1.7.0</title>
		<link>http://www.joedolson.com/articles/2011/01/my-calendar-version-1-7-0/</link>
		<comments>http://www.joedolson.com/articles/2011/01/my-calendar-version-1-7-0/#comments</comments>
		<pubDate>Fri, 14 Jan 2011 18:34:57 +0000</pubDate>
		<dc:creator>Joe Dolson</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[my-calendar]]></category>
		<category><![CDATA[plugins]]></category>

		<guid isPermaLink="false">http://www.joedolson.com/articles/?p=916</guid>
		<description><![CDATA[My Calendar version 1.7.0 is about to be released. This version contains a large number of significant changes, some of which may have consequences for your existing installation. I have taken every precaution I could, but there are aspects inherent in the automatic update process which cannot easily be tested thoroughly in advance. In preparation [...]<p><strong><a href="http://www.joedolson.com/articles/2011/01/my-calendar-version-1-7-0/">My Calendar version 1.7.0</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web Design</small></p>
]]></description>
			<content:encoded><![CDATA[<p>My Calendar version 1.7.0 is about to be released. This version contains a large number of significant changes, some of which may have consequences for your existing installation. I  have taken every precaution I could, but there are aspects inherent in the automatic update process which cannot easily be tested thoroughly in advance.  In preparation for the release, I strongly recommend that you make a copy of your current styles and note the settings of the Upcoming and Today&#8217;s Events&nbsp;widgets. </p>
<p>Both widgets have been entirely replaced with the WordPress Multiwidget class, which will allow you to use multiple individual instances of your&nbsp;widgets. </p>
<p>The stylesheet editor is moving from a database-driven editor to a file-based editor, which will increase the cacheability of the plug-in styles, improving performance of your site when using the styles. This also comes with the ability to choose between several different&nbsp;stylesheets. </p>
<p><strong><a href="http://www.joedolson.com/articles/2011/01/my-calendar-version-1-7-0/">My Calendar version 1.7.0</a></strong><br /><small>Copyright 2004&thinsp;&ndash;&thinsp;2011 Joseph C Dolson, Accessible Web&nbsp;Design</small></p>]]></content:encoded>
			<wfw:commentRss>http://www.joedolson.com/articles/2011/01/my-calendar-version-1-7-0/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
	</channel>
</rss>

