<?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>Andy Girvan &#187; wordpress - Andy Girvan - Freelance Web &amp; Mobile Developer, London - HTML5/JS/CSS3 -  PHP/MySQL - iOS</title>
	<atom:link href="http://andygirvan.com/tag/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>http://andygirvan.com</link>
	<description>Freelance Web &#38; Mobile Developer, London - HTML5/JS/CSS3 -  PHP/MySQL - iOS</description>
	<lastBuildDate>Tue, 17 Apr 2012 19:16:46 +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>When is WordPress the right tool for the job?</title>
		<link>http://andygirvan.com/2011/06/when-is-wordpress-the-right-tool-for-the-job/</link>
		<comments>http://andygirvan.com/2011/06/when-is-wordpress-the-right-tool-for-the-job/#comments</comments>
		<pubDate>Wed, 15 Jun 2011 23:09:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[expression engine]]></category>
		<category><![CDATA[opinion]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://andygirvan.com/?p=600</guid>
		<description><![CDATA[Over the past few years I've had the good fortune to work with a wide range of projects, from small single person business blogs to multinational systems. Interestingly, a common factor through all these projects has been "Can it be done quicker in WordPress?".]]></description>
			<content:encoded><![CDATA[<p>Over the past few years I&#8217;ve had the good fortune to work with a wide range of projects, from small single person business blogs to multinational systems. Interestingly, a common factor through all these projects has been &#8220;Can it be done quicker in <a href="http://wordpress.org/" target="_blank">WordPress</a>?&#8221;.</p>
<p><span id="more-600"></span></p>
<p>[box icon="exclamation"]<br />
&#8220;WordPress is web software you can use to create a beautiful website or blog&#8221; &#8211; WordPress.org<br />
[/box]</p>
<p>[line]</p>
<p>WordPress has relatively recently begun angling itself towards the CMS market with varied success. The recent addition of <a title="Adding custom post types to WordPress 3" href="http://andygirvan.com/2010/07/adding-custom-post-types-to-wordpress-3/">custom post types</a> in <a title="Incase you missed it – WordPress 3.0 released!" href="http://andygirvan.com/2010/06/incase-you-missed-it-wordpress-3-0-released/">WordPress 3.0</a> allows developers to leave behind the idea of posts, pages &amp; media. Additionally, WordPress has one of the most active developer communities; creating nearly <a href="http://thenextweb.com/socialmedia/files/2010/08/wordpress-by-the-numbers.jpg" target="_blank">11,000 plugins for the platform</a>. How far can these features be shoehorned into a site specification?</p>
<p>As of late 2010, WordPress powered <a href="http://thenextweb.com/socialmedia/files/2010/08/wordpress-by-the-numbers.jpg" target="_blank">nearly 8.5% of all websites</a> showing that there is possibility to extend WP past its intended use. However, when you start using WordPress as more of a CMS, you run the risk of releasing your content to the multitude of <a href="http://stackoverflow.com/questions/1059785/how-secure-is-wordpress" target="_blank">drive-by hacks, security vulnerabilities and viruses</a>. Definitely avoid using any of the free WordPress themes as they&#8217;re almost <a href="http://www.blueriotlabs.com/2011/wordpress-development/4-reasons-to-stay-away-from-free-wordpress-themes/" target="_blank">certainly riddled</a>.</p>
<p>So, what&#8217;s the answer?</p>
<p>[box icon="exclamation"]<br />
&#8220;If it looks like a duck, swims like a duck, and quacks like a duck, then it probably is a <a href="http://www.freefoto.com/images/01/08/01_08_52---Duck_web.jpg" target="_blank">duck</a>.&#8221; &#8211; Wiki<br />
[/box]</p>
<p>I have found that the &#8220;<a href="http://en.wikipedia.org/wiki/Duck_test" target="_blank">Duck Test</a>&#8221; applies perfectly to the WordPress scenario. If it looks like a blogging platform, it probably is best used as a blogging platform. It feels that the legacy code may be holding it back from being a full CMS platform. Perhaps they just want to straddle the line to take advantage of both scenarios.</p>
<p>In the end, WordPress still works very successfully as a CMS. It is perfectly suited for small to medium scale websites and the plugin directory is an invaluable tool for rolling out a website in minimal time. I would, however, suggest that if you&#8217;re finding yourself Googling for plugins, hacks and cracks to get WordPress to match a feature in your spec, you should probably take a look at the other, more CMS focused, platforms out there &#8211; <a title="Expression Engine: Add Global Variables to Channel Entries" href="http://andygirvan.com/2011/05/expression-engine-add-global-variables-to-channel-entries/">Expression Engine</a> is a personal favourite and a natural evolution of the WordPress idea of simple-to-roll-out websites.</p>
<p>[line]</p>
<p>If you enjoyed this post, why not subscribe to <a href="http://andygirvan.com/feed/">my feed</a> or check me out on <a href="http://twitter.com/andygirvan">Twitter</a>.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://andygirvan.com/2011/06/when-is-wordpress-the-right-tool-for-the-job/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Adding custom post types to WordPress 3</title>
		<link>http://andygirvan.com/2010/07/adding-custom-post-types-to-wordpress-3/</link>
		<comments>http://andygirvan.com/2010/07/adding-custom-post-types-to-wordpress-3/#comments</comments>
		<pubDate>Thu, 01 Jul 2010 12:47:22 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://andygirvan.com/?p=69</guid>
		<description><![CDATA[Last night WordPress 3.0 was released to the general public. Having previewed it previously on this blog, nothing has really surprised me in terms of what has been updated – but it is still nice to go from release candidate to full version.]]></description>
			<content:encoded><![CDATA[<p>In the latest version of the WordPress blogging platform, the developers have (<em>finally</em>) introduced <strong>Custom Post Types</strong>, allowing it to become more of a CMS without extensive use of plugins. Unfortunately, after installing the latest version, you&#8217;ll probably have noticed that there doesn&#8217;t immediatly appear to be any way to create your own. That&#8217;s because there is no UI to do this with &#8211; <em>doh</em>. The way to do this is to use the recently introducded method <strong>register_post_type().</strong></p>
<p><strong></strong><span id="more-69"></span></p>
<h2>The Example</h2>
<p>Lets say you are running a blog that will have podcasts as a content type every so often, but you don&#8217;t require a heavyweight plugin like <a href="http://wordpress.org/extend/plugins/podpress/" target="_blank">PodPress</a> &#8211; <strong>Custom Post Types </strong>are the perfect solution.</p>
<h2>The Code</h2>
<p>Take a look at the following code:<br />
[box icon="code"]register_post_type(&#8216;podcast&#8217;, array(<br />
&#8216;label&#8217; =&gt; __(&#8216;Podcasts&#8217;),<br />
&#8216;singular_label&#8217; =&gt; __(&#8216;Podcast&#8217;),<br />
&#8216;public&#8217; =&gt; true,<br />
&#8216;show_ui&#8217; =&gt; true,<br />
&#8216;hierarchical&#8217; =&gt; false,<br />
&#8216;query_var&#8217; =&gt; false,<br />
&#8216;supports&#8217; =&gt; array(&#8216;title&#8217;, &#8216;editor&#8217;, &#8216;author&#8217;)<br />
));[/box]<br />
Whack that straight in your theme&#8217;s <strong>functions.php </strong>file and voila &#8211; you&#8217;ll see the new Podcast custom post type right there listed underneath the Comments button. So what did this code do exactly?</p>
<h2>The Parameters</h2>
<p>As you can see, all we&#8217;re really doing is calling the new <strong>register_post_type()</strong> method and sending through some parameters:</p>
<ul>
<li><strong>Label </strong>is pretty straight forward, what do you want the custom post type to be displayed.</li>
<li><strong>Singular label </strong>is also intuitive, what do you call ONE of your post types.</li>
<li><strong>Public </strong>is a meta argument to determine whether your post type will be accessible via search, menu&#8217;s etc&#8230; (more about this on <a href="http://codex.wordpress.org/Function_Reference/register_post_type" target="_blank">wordpress docs</a>)</li>
<li><strong>Show UI </strong>- set to true to show the custom post type on the back end. False can be set to allow extra content to determine how the custom post type is displayed in the back end.</li>
<li><strong>Hierarchical </strong>is a parameter to determine whether each custom post can have or be a parent of another.</li>
<li><strong>Supports </strong>allows you to determine what content creation fields are used when creating or editing a custom post:
<ul>
<li>&#8216;title&#8217;</li>
<li>&#8216;editor&#8217; (content)</li>
<li>&#8216;author&#8217;</li>
<li>&#8216;thumbnail&#8217; (featured image) (current theme must also support post-thumbnails)</li>
<li>&#8216;excerpt&#8217;</li>
<li>&#8216;trackbacks&#8217;</li>
<li>&#8216;custom-fields&#8217;</li>
<li>&#8216;comments&#8217; (also will see comment count balloon on edit screen)</li>
<li>&#8216;revisions&#8217; (will store revisions)</li>
<li>&#8216;page-attributes&#8217; (template and menu order) (hierarchical must be true)</li>
</ul>
</li>
</ul>
<p>&nbsp;</p>
<h2>The Results</h2>
<p>Shown below: the new &#8220;Podcasts&#8221; custom post type. Now start filling that bad boy with some content!</p>
<p><a href="http://andygirvan.com/wp-content/uploads/2010/07/result.jpg"><img class="alignnone size-full wp-image-70" title="result" src="http://andygirvan.com/wp-content/uploads/2010/07/result.jpg" alt="" width="250" height="145" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://andygirvan.com/2010/07/adding-custom-post-types-to-wordpress-3/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Incase you missed it &#8211; WordPress 3.0 released!</title>
		<link>http://andygirvan.com/2010/06/incase-you-missed-it-wordpress-3-0-released/</link>
		<comments>http://andygirvan.com/2010/06/incase-you-missed-it-wordpress-3-0-released/#comments</comments>
		<pubDate>Fri, 18 Jun 2010 10:29:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://andygirvan.com/?p=62</guid>
		<description><![CDATA[Last night Wordpress 3.0 was released to the general public. Having <a href="http://andygirvan.com/2010/05/wordpress-3-0-whats-new-and-how-to-prepare/" target="_blank">previewed it previously on this blog</a>, nothing has really surprised me in terms of what has been updated - but it is still nice to go from release candidate to full version.]]></description>
			<content:encoded><![CDATA[<p>Last night WordPress 3.0 was released to the general public. Having <a href="http://andygirvan.com/2010/05/wordpress-3-0-whats-new-and-how-to-prepare/" target="_blank">previewed it previously on this blog</a>, nothing has really surprised me in terms of what has been updated &#8211; but it is still nice to go from release candidate to full version.</p>
<p>Set up is now quicker than ever, so give it a go on your <a href="http://www.wampserver.com/en/" target="_blank">local</a> or dev servers. I would give it a few weeks before upgrading or deploying any live sites however, WordPress updates are notorious for their <a href="http://www.blogtap.net/wp-config-php-security-leak-hundreds-of-blogs-hacked/" target="_blank">security leaks</a>.</p>
<p>Check out the official WordPress TV introduction to the new features below!</p>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="465" height="300" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="flashvars" value="guid=BQtfIEY1&amp;width=640&amp;height=360&amp;locksize=no&amp;dynamicseek=false&amp;qc_publisherId=p-18-mFEk4J448M" /><param name="src" value="http://v.wordpress.com/wp-content/plugins/video/flvplayer.swf?ver=1.21" /><param name="wmode" value="transparent" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="465" height="300" src="http://v.wordpress.com/wp-content/plugins/video/flvplayer.swf?ver=1.21" allowfullscreen="true" wmode="transparent" flashvars="guid=BQtfIEY1&amp;width=640&amp;height=360&amp;locksize=no&amp;dynamicseek=false&amp;qc_publisherId=p-18-mFEk4J448M"></embed></object></p>
]]></content:encoded>
			<wfw:commentRss>http://andygirvan.com/2010/06/incase-you-missed-it-wordpress-3-0-released/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>WordPress 3.0 &#8211; What&#8217;s New &amp; How to Prepare</title>
		<link>http://andygirvan.com/2010/05/wordpress-3-0-whats-new-and-how-to-prepare/</link>
		<comments>http://andygirvan.com/2010/05/wordpress-3-0-whats-new-and-how-to-prepare/#comments</comments>
		<pubDate>Fri, 28 May 2010 09:51:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[cms]]></category>
		<category><![CDATA[updates]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://andygirvan.com/?p=24</guid>
		<description><![CDATA[If, like me, you use wordpress as a daily tool to design, develop and launch websites, you'll probably be interested in what the creators over at Wordpress are doing with their soon to be released update, version 3.0.]]></description>
			<content:encoded><![CDATA[<p>If, like me, you use wordpress as a daily tool to design, develop and launch websites, you&#8217;ll probably be interested in what the creators over at WordPress are doing with their soon to be released update, <a href="http://wordpress.org/development/2010/05/wordpress-3-0-release-candidate/" target="_blank">version 3.0.</a></p>
<p><span id="more-24"></span></p>
<h2>What&#8217;s new?</h2>
<p>Here are the promised features:</p>
<ul>
<li>New default theme including extended customization options (background color).</li>
<li>Choose your admin name and password during installation.</li>
<li>WordPress MU (multi site wordpress) interegration.</li>
<li>Custom post types.</li>
<li>Menu management built into the &#8220;appearance&#8221; tab.</li>
<li>General back-end theme design.</li>
<li>Bug fixes.</li>
</ul>
<h3><strong>New Default Theme</strong></h3>
<p>Although 99% of people will probably switch this theme off, it&#8217;s a decent looking theme (although far from the <a href="http://www.smashingmagazine.com/2009/05/18/100-amazing-free-wordpress-themes-for-2009/" target="_blank">best I&#8217;ve seen</a>) with plenty of customization options.</p>
<h3><strong>Easier installation</strong></h3>
<p>The addition of allowing developers to define their admin username and password instead of being given a forgettable, randomly generated one is a blessing for anyone whos job involves setting up multiple sites a month. I can remember more than one occasion where I&#8217;ve had to go direct to the database to <a href="http://codex.wordpress.org/Resetting_Your_Password" target="_blank">reset the password</a>. This will be an understated but useful feature.</p>
<h3><strong>WordPress MU collaboration</strong></h3>
<p>With vanilla wordpress 3.0, bloggers will be able to roll out multiple blogs running off the same backend. Although this includes no groundbreaking features that haven&#8217;t been seen in <a href="http://mu.wordpress.org/" target="_blank">WordPress MU</a>, it is definately nice to have from the outset should a WordPress project scope change half way through development.</p>
<h3><strong>Custom post types</strong></h3>
<p>Although there are many plugins out there that have fixed this issue (my favourite being <a href="http://pods.uproot.us">Pods CMS</a>, highly recommended even after WP3.0 comes out), WordPress is going to get a lot easier from the outset to create a custom post type. Although you can do a lot with posts and pages, there are plenty of occasions where you may need a type of content on your site that can&#8217;t be categorized as either.</p>
<h3><strong>Menu Management</strong></h3>
<p><strong><a href="http://andygirvan.com/wp-content/uploads/2010/05/menueditor.gif"><img class="alignnone size-full wp-image-26" title="menueditor" src="http://andygirvan.com/wp-content/uploads/2010/05/menueditor.gif" alt="" width="350" height="114" /></a><br />
</strong></p>
<p>For any developer who has struggled to figure out the right combination of exludes and includes when using <a href="http://codex.wordpress.org/Template_Tags/wp_list_pages" target="_blank">wp_list_pages();</a> this is going to be a stand out feature. Using a WYSIWYG approach to designing the menu, this will be endlessly useful and very nice when handing over to clients. Definatly a lot easier to teach a non technical person a drag and drop system than telling them to manage parameters in the wp_list_pages function.</p>
<h3><strong>General polish and a tidy up</strong></h3>
<p>Overall there seems to be a general tidy up to the codebase and graphics. Hoverovers seem crisp, pages are more responsive and we&#8217;re promised several pages worth of bug fixes ensuring there are no hangovers from the 2&#8242;s.</p>
<h2>So, how can you prepare your site for the major update?</h2>
<p>If you are a developer running a vanilla rollout of any of the later 2.x&#8217;s then there should be no issues for you as the core codebase behind WordPress remains the same. If you are a plugin developer the best way to approach the update is to get the <a href="http://wordpress.org/wordpress-3.0-RC1.zip" target="_blank">latest beta/release candidate</a> version and throwing it on there. Considering WP3.0 is only weeks away from launching, the base code will more than likely remain the same &#8211; which should give you a good idea of how well (or not as the case may be) your plugin will be supported. If you have any concerns over how well your site or plugin will work with 3, I&#8217;d recommend keeping an eye on the <a href="http://wordpress.org/support/forum/12" target="_blank">forums</a> or the <a href="http://core.trac.wordpress.org/" target="_blank">bug tracking site.</a></p>
]]></content:encoded>
			<wfw:commentRss>http://andygirvan.com/2010/05/wordpress-3-0-whats-new-and-how-to-prepare/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

