<?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>Richard Shepherd</title>
	<atom:link href="http://www.richardshepherd.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.richardshepherd.com</link>
	<description>Making the web. Better looking.</description>
	<lastBuildDate>Fri, 04 Jun 2010 18:03:25 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>This isn&#8217;t one of those blogs&#8230;</title>
		<link>http://www.richardshepherd.com/this-isnt-one-of-those-blogs/</link>
		<comments>http://www.richardshepherd.com/this-isnt-one-of-those-blogs/#comments</comments>
		<pubDate>Fri, 04 Jun 2010 17:54:08 +0000</pubDate>
		<dc:creator>richardshepherd</dc:creator>
				<category><![CDATA[Random]]></category>
		<category><![CDATA[Web]]></category>

		<guid isPermaLink="false">http://www.richardshepherd.com/?p=1273</guid>
		<description><![CDATA[(Flickr image from mar00ned) You know how there are those blogs that are updated regularly, and they have wonderful tutorials on everything? They keep you up to date with the latest trends. They have lots of regular commenters and a community of followers and evangelists? Yeah. This isn&#8217;t one of those blogs. I barely have [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/06/defective.jpg"><img class="aligncenter size-full wp-image-1276" title="defective" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/06/defective.jpg" alt="" width="500" height="338" /></a></p>
<p style="text-align: right;"><span style="font-size: x-small;">(Flickr image from </span><a href="http://www.flickr.com/photos/mar00ned/183189125/" target="_blank"><span style="font-size: x-small;">mar00ned</span></a><span style="font-size: x-small;">)</span></p>
<p>You know how there are those blogs that are updated regularly, and they have wonderful tutorials on everything? They keep you up to date with the latest trends. They have lots of regular commenters and a community of followers and evangelists?</p>
<p>Yeah. This isn&#8217;t one of those blogs. I barely have time to brush my teeth in the morning, and I certainly don&#8217;t have time to log in every evening and write something mega-awesome and valuable. Besides, there are plenty of those blogs out there and I encourage you to find them.</p>
<p>No, this is just a sporadic catch up with what&#8217;s going on with me. If I stumble across something I find useful then I&#8217;ll drop in a piece about it, and if you leave a comment or a question I&#8217;ll try to get back to you.</p>
<p>For a current run down on my brain, check out my <a href="http://richardshepherd.tumblr.com/">Tumblog</a>.</p>
<p>If you want a stream of my nonsense, I&#8217;m on <a href="http://twitter.com/richardshepherd">Twitter</a>.</p>
<p>If you want to read something useful, check out my articles for <a href="http://carsonified.com/blog/author/richardshepherd/">Think Vitamin</a>.</p>
<p>And if you&#8217;re wondering about this lovely theme, it&#8217;s from <a href="http://www.woothemes.com/themes/" target="_blank">WooThemes</a>.</p>
<p>So hang around and enjoy yourself, but if this place is pointless then don&#8217;t blame me :)</p>
<p>rich</p>
]]></content:encoded>
			<wfw:commentRss>http://www.richardshepherd.com/this-isnt-one-of-those-blogs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mesmerised</title>
		<link>http://www.richardshepherd.com/mesmerised/</link>
		<comments>http://www.richardshepherd.com/mesmerised/#comments</comments>
		<pubDate>Tue, 27 Apr 2010 13:14:37 +0000</pubDate>
		<dc:creator>richardshepherd</dc:creator>
				<category><![CDATA[Film & TV]]></category>
		<category><![CDATA[Production]]></category>
		<category><![CDATA[Videos]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.richardshepherd.com/?p=1242</guid>
		<description><![CDATA[This was the first film I ever made. In places, this shows. But like your first anything it&#8217;s very close to my heart &#8211; the perfections and the imperfections, I love them all. Everyone worked so hard, and the shortcomings you see are mine not theirs. Particular thanks must go to our wonderful producer Sandra [...]]]></description>
			<content:encoded><![CDATA[<p>This was the first film I ever made. In places, this shows. But like your first <em>anything </em>it&#8217;s very close to my heart &#8211; the perfections and the imperfections, I love them all.</p>
<p>Everyone worked so hard, and the shortcomings you see are mine not theirs. Particular thanks must go to our wonderful producer Sandra Bridgewater. I hope behind the sometimes choppy editing and quirky dialogue you see the heart of this film, because it&#8217;s a heart I think we can all empathise with.</p>
<p>Mesmerised was shot over four days, with a fifth day for pickups. After months of post production it was premièred at the Valhalla Cinema in Sydney, and subsequently bought by Qantas for their in-flight entertainment programme.</p>
<p>I hope you enjoy it.<br />
Rich</p>
<p>PS It&#8217;s best enjoyed with headphones on (thanks to the amazing mix by Luke Baker).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.richardshepherd.com/mesmerised/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The first Panda Preview</title>
		<link>http://www.richardshepherd.com/the-first-panda-preview/</link>
		<comments>http://www.richardshepherd.com/the-first-panda-preview/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 11:28:56 +0000</pubDate>
		<dc:creator>richardshepherd</dc:creator>
				<category><![CDATA[Creativity]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[thePandaSays]]></category>

		<guid isPermaLink="false">http://www.richardshepherd.com/?p=1211</guid>
		<description><![CDATA[The Pandas are getting ready, slowing positioning themselves for launch. Never before have so many Pandas worked so hard on a web app, crafting every inch with the finest bamboo their chubby little paws can carry. Here&#8217;s a sneak peak :)]]></description>
			<content:encoded><![CDATA[<p>The Pandas are getting ready, slowing positioning themselves for launch. Never before have so many Pandas worked so hard on a web app, crafting every inch with the finest bamboo their chubby little paws can carry.</p>
<p>Here&#8217;s a sneak peak :)</p>
<p style="text-align: center;"><a href="http://thepandasays.com"><img class="shadow-border size-full wp-image-1212 aligncenter" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/03/panda-preview1.png" alt="panda-preview1" width="350" height="200" /></a><a href="http://thepandasays.com"></a></p>
<p style="text-align: center;"><a href="http://thepandasays.com"><img class="shadow-border size-full wp-image-1213 aligncenter" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/03/panda-preview2.png" alt="panda-preview2" width="350" height="200" /></a></p>
<p style="text-align: center;"><a href="http://thepandasays.com"><img class="shadow-border size-full wp-image-1214 aligncenter" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/03/panda-preview3.png" alt="panda-preview3" width="350" height="200" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.richardshepherd.com/the-first-panda-preview/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Trapped</title>
		<link>http://www.richardshepherd.com/trapped/</link>
		<comments>http://www.richardshepherd.com/trapped/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 14:59:48 +0000</pubDate>
		<dc:creator>richardshepherd</dc:creator>
				<category><![CDATA[Film & TV]]></category>
		<category><![CDATA[Production]]></category>
		<category><![CDATA[Videos]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.richardshepherd.com/?p=1151</guid>
		<description><![CDATA[A few years ago I worked with a bunch of very talented people on the short film Trapped. Trapped played at a number of film festivals throughout the world, including the Palm Springs International Short Film Festival and Los Angeles International Short Film Festival. I got to go to both with one of the producers, [...]]]></description>
			<content:encoded><![CDATA[<p>A few years ago I worked with a bunch of very talented people on the short film Trapped.</p>
<p>Trapped played at a number of film festivals throughout the world, including the <a href="http://www.psfilmfest.org/" target="_blank">Palm Springs International Short Film Festival</a> and <a href="http://lashortsfest.com/" target="_blank">Los Angeles International Short Film Festival</a>. I got to go to both with one of the producers, which was really quite cool!</p>
<p>Whilst I was in LA, I even managed to meet up with another <a href="http://www.imdb.com/name/nm0791847/" target="_blank">Richard Shepherd</a>, who turned out to be the producer behind the wonderful film Breakfast at Tiffany&#8217;s. We had waffles at <a href="http://www.factorsdeli.com/" target="_blank">Factors Deli</a> in Beverly Hills, and I listened for an hour as he told stories of Hollywood in the 60s and 70s. Amazing stuff. It still gives me goosebumps when I think about that meeting.</p>
<p>Anyway, here it is. The thrid film I directed, and the most well received. I give you, Trapped.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.richardshepherd.com/trapped/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Custom Fonts in WordPress with Cufon</title>
		<link>http://www.richardshepherd.com/custom-fonts-in-wordpress-with-cufon/</link>
		<comments>http://www.richardshepherd.com/custom-fonts-in-wordpress-with-cufon/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 14:33:10 +0000</pubDate>
		<dc:creator>richardshepherd</dc:creator>
				<category><![CDATA[Web Design]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[cufon]]></category>
		<category><![CDATA[custom fonts]]></category>
		<category><![CDATA[font-face]]></category>
		<category><![CDATA[sifr]]></category>
		<category><![CDATA[typekit]]></category>

		<guid isPermaLink="false">http://www.richardshepherd.com/?p=1100</guid>
		<description><![CDATA[A couple of weeks ago I got an email from Ben who said &#8220;I would love to know how you do those header custom fonts &#8230;!!&#8221; Well, without wanting to turn this blog into an episode of Why Don&#8217;t You I thought I should really answer this question on the blog so that others could [...]]]></description>
			<content:encoded><![CDATA[<p>A couple of weeks ago I got an email from Ben who said</p>
<p><em>&#8220;I would love to know how you do those header custom fonts &#8230;!!&#8221;</em></p>
<p>Well, without wanting to turn this blog into an episode of <a href="http://en.wikipedia.org/wiki/Why_Don%27t_You" target="_blank">Why Don&#8217;t You</a> I thought I should really answer this question on the blog so that others could have a read.<span id="more-1100"></span></p>
<h3>Custom Fonts, different options and the pros and cons</h3>
<p><img class="alignnone size-full wp-image-1144" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/02/cufon.jpg" alt="cufon" width="490" height="122" /></p>
<p>First of all, there has always been some debate on the pros and cons of using custom fonts. In the old days, when people used to use IE6&#8230; What? They still do? Oh. Okay, well a few years ago the only way to use custom fonts on your site was using images. Image replacement has got more sophisticated with CSS techniques, and there&#8217;s a comprehensive round-up of these techniques over at the marvelous <a href="http://css-tricks.com/css-image-replacement/" target="_blank">CSS Tricks</a>. However, this is still <em>image replacement</em> &#8211; in other words, you&#8217;re looking at a graphical representation of the text and not the text itself.</p>
<p><img class="alignright size-full wp-image-1141" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/02/sifr.jpg" alt="sifr" width="192" height="116" />Another popular way to use custom fonts is the flash replacement technique, and <a href="http://www.mikeindustries.com/blog/sifr">sIFR</a> is one of the heavyweights in this area.  Until relatively recently this was the most popular way to get &#8216;real&#8217; fonts on your page with only a couple of drawbacks &#8211; the (slight) increase in page load time, and the fact that some browsers are set up to block flash (adverts).</p>
<p>There is some truth that not <em>everyone</em> has Flash installed but to be honest I&#8217;m not that interested in supporting them. We&#8217;re talking about a handful of visitors a year and, like the 1% (or less) that have JavaScript turned off I simply can&#8217;t justify penalising the other 99%. Sure, make your site IE6 compatible, but don&#8217;t lose any sleep over supporting Flash or Javascript.</p>
<p>Which brings us nicely on to Cufon, which uses Javascript to display custom fonts.</p>
<h4>Javascript? Fonts? How does THAT work?!?!</h4>
<p><img class="size-full wp-image-1138 alignright" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/02/cufon-logo.jpg" alt="Cufon" width="134" height="49" />The special headings on this site (which is an open-source font called Chunk Five) are rendered using <a href="http://cufon.shoqolate.com/generate/" target="_blank">Cufon</a>. For the techinically minded amongst you (and I don&#8217;t count myself in that illustrious bunch ) Cufon converts font paths to VML paths, stores this information as JSON (JavaScript Object Notation) and then renders the fonts using JavaScript. This is clever stuff, but we need not worry about the complex jiggery-pokery.</p>
<p>There are three (fairly) easy steps to WordPress custom font heaven with Cufon:</p>
<ol>
<li>Choose a font, and upload it to the Cufon Generator</li>
<li>Let Cufon work it&#8217;s magic, and then download the new font .js file</li>
<li>Upload this file, and add a couple of bits of javascript to the  of your page</li>
</ol>
<h3>Step One</h3>
<h4>Choose your font</h4>
<p>Step one is easy enough; just place the TrueType/OpenType/Printer Font Binary/PostScript file(s) somewhere handy, like on your desktop. Now you may have downloaded these files from an <a href="http://www.dafont.com">free font library</a>, or you may be copying them from your fonts directory, but you must consider the <em>legal implications</em> of using the font.</p>
<h4>A word on the law</h4>
<p>Do you own the right to use the font? If it&#8217;s a commercial font, have you paid for it? If you downloaded it from somewhere like <a href="http://www.dafont.com/">DaFont</a> you must check the licensing that accompanies the font. In short: keep it legal, kids.</p>
<p>If you&#8217;re not sure if you have permission to use your font then you might want to look at a service like TypeKit which I talk about below!</p>
<p>If you&#8217;re happy with your font then it&#8217;s time to upload it to Cufon, which you do over at <a href="http://cufon.shoqolate.com/generate/" target="_blank">http://cufon.shoqolate.com/generate/</a>.</p>
<h3>Step Two</h3>
<h4>Let Cufon work it&#8217;s magic</h4>
<p>There are a few things to fill in, but they&#8217;re fairly straightforward. Let&#8217;s look at some of the common options&#8230;</p>
<p><img class="alignnone size-full wp-image-1134" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/02/select-the-font.jpg" alt="Select the font" width="466" height="305" /></p>
<p>To save space, and therefore page load time, only choose the styles that you know you&#8217;re going to use. For example, I didn&#8217;t use the Italic or Bold Italic typefaces for  this site which makes the font.js file that little bit smaller (and so load that little bit quicker).</p>
<p><img class="alignnone size-full wp-image-1142" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/02/include-these-glyphs1.jpg" alt="Use the following glyphs" width="487" height="405" /></p>
<p>Take your pick really. You may adopt a &#8216;kitchen sink&#8217; approach and go for the lot (as above) or again just choose those glyphs you know you&#8217;ll need. There are further options such as &#8216;Latin Extended&#8217; and &#8216;Russian&#8217; but you probably won&#8217;t need these. Unless you Russian. Or Roman.</p>
<p><img class="alignnone size-full wp-image-1143" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/02/security1.jpg" alt="security" width="517" height="171" /></p>
<p>This is a <em>really</em> good idea. Restrict use to your own domain to stop thieves, squatters, and copyright issues!</p>
<p><img class="alignnone size-full wp-image-1137" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/02/lets-do-this.jpg" alt="Let's do this" width="178" height="48" /></p>
<p>Finally click the Let&#8217;s do this! button to download your newly created .font.js file!</p>
<h3>Step Three</h3>
<h4>Upload and add some script</h4>
<p>This next bit is entirely down to you &#8211; you&#8217;ll need to upload the .js file to your site somewhere, and make a note of the path. Let&#8217;s assume you upload <strong>ChunkFive_400.font.js</strong> to the <strong>www.example.com/js/</strong> folder. We could include this file in a page using the following:</p>
<div class="codecolorer-container javascript default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="javascript codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339933;">&lt;</span>script src<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;/js/ChunkFive_400.font.js&quot;</span> type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;&lt;/</span>script<span style="color: #339933;">&gt;</span></div></td></tr></tbody></table></div>
<p>You need to to do the same with the Cufon file, which you can download from <a href="http://cufon.shoqolate.com/js/cufon-yui.js" target="_blank">http://cufon.shoqolate.com/js/cufon-yui.js</a>. Again, you&#8217;ll need to include this in your page like so:</p>
<div class="codecolorer-container javascript default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="javascript codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339933;">&lt;</span>script src<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;/js/cufon-yui.js&quot;</span> type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;&lt;/</span>script<span style="color: #339933;">&gt;</span></div></td></tr></tbody></table></div>
<p>Of course, you could change that path to wherever your Cufon .js files are located. We now need to add them to your site, by placing them somewhere in the section. If you don&#8217;t know how to do this, the easiest way is to enter your WordPress admin area, and go to Appearance &gt; Editor. In the editor, select the file called <strong>header.php</strong> where you&#8217;ll find the head section, and problem see some other javascript files that are included. Just drop your two lines of code in there!</p>
<div class="codecolorer-container javascript default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="javascript codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339933;">&lt;</span>script src<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;/js/ChunkFive_400.font.js&quot;</span> type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;&lt;/</span>script<span style="color: #339933;">&gt;</span> <span style="color: #339933;">&lt;</span>script src<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;/js/cufon-yui.js&quot;</span> type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;&lt;/</span>script<span style="color: #339933;">&gt;</span></div></td></tr></tbody></table></div>
<p>One final thing. You need declare which bits of your page to change to the new custom font. Again this is pretty easy to do. If you want all your heading tags to take on this new font you might use something like this:</p>
<div class="codecolorer-container javascript default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="javascript codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span><br />
&nbsp; &nbsp; &nbsp; Cufon.<span style="color: #660066;">replace</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'h1, h2, h3, h4, h5, h6'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span></div></td></tr></tbody></table></div>
<p>You could even describe specific areas on the page using jQuery, like so:</p>
<div class="codecolorer-container javascript default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="javascript codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #339933;">&lt;</span>script type<span style="color: #339933;">=</span><span style="color: #3366CC;">&quot;text/javascript&quot;</span><span style="color: #339933;">&gt;</span><br />
&nbsp; &nbsp; &nbsp; Cufon.<span style="color: #660066;">replace</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">'#introduction'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<span style="color: #339933;">&lt;/</span>script<span style="color: #339933;">&gt;</span></div></td></tr></tbody></table></div>
<p>This would make all text in take on the custom font. Cool :)</p>
<p>If you wanted, just take a look at the source code for this page &#8211; that might help explain things a little better!</p>
<h3>Wp-Cufon</h3>
<p>If that sounds too much like hard work, and it <em>really</em> shouldn&#8217;t, you could take a look at a WordPress plugin which does some of the heavy lifting for you. You can find Wp-Cufon at <a href="http://wordpress.org/extend/plugins/wp-cufon/installation/" target="_blank">http://wordpress.org/extend/plugins/wp-cufon/installation/</a> but, to be honest, I encourage you to do this yourself because you&#8217;ll learn so much more about how Cufon works. In fact, even if you use the plug-in you still have to create the .js font file yourself.</p>
<h3>font-face, Typekit and others</h3>
<p>This post is already quite long enough, so I&#8217;m going to postpone looking at @font-face and Typekit for a later post. I&#8217;m going to <em>post</em>pone. Geddit?! I&#8217;ll be here all week&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.richardshepherd.com/custom-fonts-in-wordpress-with-cufon/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>iWant iPad</title>
		<link>http://www.richardshepherd.com/iwant-ipad/</link>
		<comments>http://www.richardshepherd.com/iwant-ipad/#comments</comments>
		<pubDate>Mon, 01 Feb 2010 15:54:33 +0000</pubDate>
		<dc:creator>richardshepherd</dc:creator>
				<category><![CDATA[Random]]></category>

		<guid isPermaLink="false">http://www.richardshepherd.com/?p=1154</guid>
		<description><![CDATA[Everyone wants an iPad, including you. Yeah yeah, it&#8217;s easy to say &#8220;it&#8217;s just a big iPhone&#8221; and moan about how let down you are about the technology. But you want one. Even if only out of curiosity. I mean, look at it for goodness sake&#8230; It&#8217;s beautiful. Sleek, shiny, sexy. And thin. Nice and [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Everyone wants an iPad, including you.</strong></p>
<p>Yeah yeah, it&#8217;s easy to say &#8220;it&#8217;s just a big iPhone&#8221; and moan about how let down you are about the technology. But you want one. Even if only out of curiosity.</p>
<p>I mean, look at it for goodness sake&#8230;</p>
<p><img class="size-medium wp-image-1155 alignleft no-border" title="Apple iPad" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/02/apple-ipad-1-300x199.jpg" alt="" width="300" height="199" /></p>
<p>It&#8217;s beautiful. Sleek, shiny, sexy. And thin. Nice and thin.</p>
<p>&#8220;But you can&#8217;t run multiple applications.&#8221; I  know, I know, but you will by version 2 or 3. In fact, by version 3 you&#8217;ll be queuing outside your local Apple Store for one.</p>
<p>It has faults, sure, but it is still a game-changer. As Steve Jobs said, it&#8217;s not a phone and it&#8217;s not a netbook &#8211; there is a gap for a recretional tablet, and Apple haved filled it first.</p>
<p><img class="size-medium wp-image-1156 alignright no-border" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/02/apple-ipad-3-300x174.jpg" alt="Apple iPad" width="300" height="174" /></p>
<p>We all know that browsing the web on an iPhone (or other smart phone) is difficult because of the screen size. And as much as I love my MacBook my legs get uncomfortably warm if I use it for much more than 30 mins.</p>
<p>The iPad is not for Photoshop. It&#8217;s not for productivity. Its for casual use, entertainment even.</p>
<p>And I think we all underestimate the fundamental changes the iPad will make to the experience of browsing the web. Jobs talked about this, but I don&#8217;t think he did a great job explaining the <em>feeling</em> of browsing the web with your fingers on the screen. It will be radically different, and it will draw you into a site in a way a mouse or touchpad simply can&#8217;t.</p>
<p><em>That</em> my friends is the difference. The game changer. The iPhone changed our expectations of mobile phones. The iPad will change the experience of browsing the web.</p>
<p>So rather than spending (or wasting) time pulling apart the tech specs of this gorgeous bit of kit, let&#8217;s wait until it&#8217;s in our sweaty palms as we lie on the couch browsing our favouite news sites. I know it&#8217;ll be worth the wait.</p>
<p style="text-align: center;"><img class="size-medium wp-image-1157 aligncenter no-border" src="http://www.richardshepherd.com/wpblog/wp-content/uploads/2010/02/apple-ipad-4-300x174.jpg" alt="Apple iPad" width="300" height="174" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.richardshepherd.com/iwant-ipad/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A new home!</title>
		<link>http://www.richardshepherd.com/and-weve-moved/</link>
		<comments>http://www.richardshepherd.com/and-weve-moved/#comments</comments>
		<pubDate>Fri, 08 Jan 2010 08:48:42 +0000</pubDate>
		<dc:creator>richardshepherd</dc:creator>
				<category><![CDATA[Random]]></category>

		<guid isPermaLink="false">http://s85883.gridserver.com/wpblog/?p=766</guid>
		<description><![CDATA[Yes, if you can see this post then you&#8217;ll know we&#8217;ve safely moved to Media Temple. Hooray! Why? Lots of reasons, but mainly because you&#8217;re going to see a huge upgrade over the coming weeks and I wanted to be with a host with a great reputation. (mt) is it!]]></description>
			<content:encoded><![CDATA[<p>Yes, if you can see this post then you&#8217;ll know we&#8217;ve safely moved to Media Temple. Hooray!</p>
<p>Why? Lots of reasons, but mainly because you&#8217;re going to see a huge upgrade over the coming weeks and I wanted to be with a host with a great reputation. (mt) is it!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.richardshepherd.com/and-weve-moved/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress Custom Fields For Beginners</title>
		<link>http://www.richardshepherd.com/wordpress-custom-fields-for-beginners/</link>
		<comments>http://www.richardshepherd.com/wordpress-custom-fields-for-beginners/#comments</comments>
		<pubDate>Tue, 17 Nov 2009 19:10:32 +0000</pubDate>
		<dc:creator>richardshepherd</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[custom fields]]></category>
		<category><![CDATA[Flickr]]></category>
		<category><![CDATA[get_post_meta]]></category>

		<guid isPermaLink="false">http://www.richardshepherd.com/?p=721</guid>
		<description><![CDATA[This is a tutorial for beginners, and we were all beginners once. To a beginner I remember custom fields looking quite pointless. I couldn&#8217;t quite grasp what they were for. Then, after building a few WordPress sites, I watched an excellent tutorial from Chris Coyier over at CSS Tricks and it really opened my eyes. [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-726" title="fieldsofgold" src="http://s85883.gridserver.com/wpblog/wp-content/uploads/2009/11/fieldsofgold.jpg" alt="fieldsofgold" width="520" height="250" /></p>
<p>This is a tutorial for beginners, and we were all beginners once.</p>
<p>To a beginner I remember custom fields looking quite pointless. I couldn&#8217;t quite grasp what they were for.</p>
<p>Then, after building a few WordPress sites, I watched an excellent tutorial from Chris Coyier over at CSS Tricks and it really opened my eyes. There&#8217;s a link at the bottom of this post to Chris&#8217;s excellent video series. And that link was generated using a custom field.<br />
<span id="more-721"></span><br />
To whet your appetite, here&#8217;s an example of a search function I <a href="http://www.thet.org" target="_blank">built for THET</a> using custom fields. You can select from three options and then WordPress will search through all the posts custom fields until it finds a match.</p>
<p style="text-align: center;"><a href="http://www.thet.org" target="_blank"><img class="size-full wp-image-733 aligncenter" title="thet-search" src="http://s85883.gridserver.com/wpblog/wp-content/uploads/2009/11/thet-search.jpg" alt="thet-search" width="216" height="220" /></a></p>
<p style="text-align: left;">That&#8217;s a really powerful way to harness WordPress custom fields, but we&#8217;re going to start with something a little easier.</p>
<h3 style="text-align: left;">The project</h3>
<p style="text-align: left;">In this tutorial, we&#8217;re going to stick with something simple. All you&#8217;ll need is some basic PHP, together with feeling comfortable working with some WordPress files; specifically single.php which you&#8217;ll find in http://your-wordpress-url.com/wp-content/themes/your-theme/single.php.</p>
<p style="text-align: left;">To keep things both easy <em>and</em> hopefully useful, we&#8217;re going to create a couple of custom fields which display a credit and a link to a flickr image. I&#8217;m using it in this post! The image at the top of the field (custom <em>fields</em>, gettit?!) came thanks to a flickr user called innoxiuss. And if you scroll to the bottom of this page you&#8217;ll see a credit that looks like this:</p>
<p><img class="alignnone size-full wp-image-732" title="attribute" src="http://s85883.gridserver.com/wpblog/wp-content/uploads/2009/11/atrribute.jpg" alt="atrribute" width="218" height="27" /></p>
<p>Well that credit is generated thanks to two custom fields and a little bit of php code.</p>
<h3>What is a WordPress Custom Field?</h3>
<p>Okay. So think of a custom field as a bit of data. It can be anything at all, as long as it&#8217;s an alpha numeric string that can be stored in the WordPress database. So a custom field is not an image, it&#8217;s the URL <em>of</em> the image.</p>
<p>A custom field has two properties, a <strong>name</strong> and a <strong>value</strong>.</p>
<p>For example, the name could be <strong>image </strong>and the value could be <strong>www.yoursite.com/image.jpg</strong>.</p>
<p>But here&#8217;s the thing: <em>it doesn&#8217;t have to make that much sense</em>. The name could be <strong>fruit</strong> and the value could be <strong>apple</strong>. And as pointless as that looks, there are instances where that information could come in useful.</p>
<p>Let&#8217;s take the real world example of the flickr credit on the bottom of this page. There are actually two custom fields in there. The first is the flickr user and the second is the URL of the photo.</p>
<p>Name: <strong>flickr_attribute_url</strong><br />
Value: <strong>http://www.flickr.com/photos/innoxiuss/2665404220/</strong></p>
<p>Name: <strong>flickr_attribute_name</strong><br />
Value: <strong>innoxiuss</strong></p>
<h3>How to add a Custom Field</h3>
<p>Custom fields are added on the Edit Post page, and it looks like this&#8230;</p>
<p><img title="custom-fields-empty" src="http://s85883.gridserver.com/wpblog/wp-content/uploads/2009/11/custom-fields-empty.jpg" alt="custom-fields-empty" width="787" height="236" /></p>
<p>If you can&#8217;t see it, then scroll to the top and under &#8216;Screen Options&#8217; make sure that &#8216;Custom Fields&#8217; is ticked.</p>
<p>All you have to do is click on the &#8216;Enter new&#8217; link (in blue) and enter a name for your data under &#8216;Name&#8217;.</p>
<p>Next enter your data&#8217;s value under &#8216;Value&#8217;.</p>
<p>Finally, click on the &#8216;Add Custom Field&#8217; button and you&#8217;re done. This is what it might look like&#8230;</p>
<p><img class="alignnone size-full wp-image-723" title="adding-custom-field" src="http://s85883.gridserver.com/wpblog/wp-content/uploads/2009/11/adding-custom-field.jpg" alt="adding-custom-field" width="765" height="166" /></p>
<p>You can add as many custom fields as you like, and on some posts I have over 20. Here you can see I&#8217;ve added two, making sure that the names are <strong>unique</strong>.</p>
<p><img title="custom-fields-full" src="http://s85883.gridserver.com/wpblog/wp-content/uploads/2009/11/custom-fields-full.jpg" alt="custom-fields-full" width="766" height="186" /></p>
<p>And that&#8217;s it. You now have two custom fields each containing a snippet of data.</p>
<p>But without rolling up our selves and getting our hands dirty with some PHP, this isn&#8217;t going to do a thing.</p>
<h3>Adding the PHP</h3>
<p>Here&#8217;s the code we&#8217;ll be using. Have a read through and see if it makes sense&#8230;</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br /></div></td><td><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">&lt;?php</span><br />
&nbsp; <span style="color: #666666; font-style: italic;">// Check to see if this data (custom field) exists</span><br />
&nbsp; <span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span>get_post_meta<span style="color: #009900;">&#40;</span><span style="color: #000088;">$post</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">ID</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'flickr_attribute_name'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
<br />
&nbsp; &nbsp; &nbsp;<span style="color: #666666; font-style: italic;">// It does, so let's start building our HTML!</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'&lt;div class=&quot;flickr_attribute&quot;&gt;'</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp;<span style="color: #666666; font-style: italic;">// Grab the name of the flickr user from the custom field</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #666666; font-style: italic;">// called 'flickr_attribute_name'</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #000088;">$flickr_attribute_name</span> <span style="color: #339933;">=</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;get_post_meta<span style="color: #009900;">&#40;</span><span style="color: #000088;">$post</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">ID</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'flickr_attribute_name'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp;<span style="color: #666666; font-style: italic;">// Grab the url of the flickr user from the custom field</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #666666; font-style: italic;">// called 'flickr_attribute_url'</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #000088;">$flickr_attribute_url</span> <span style="color: #339933;">=</span><br />
&nbsp; &nbsp; &nbsp; &nbsp;get_post_meta<span style="color: #009900;">&#40;</span><span style="color: #000088;">$post</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">ID</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'flickr_attribute_url'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp;<span style="color: #666666; font-style: italic;">// Continue with our HTML, using our new variables</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'photo courtesy of &lt;a href=&quot;'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$flickr_attribute_url</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'&quot; target=&quot;_blank&quot;&gt;'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$flickr_attribute_name</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'&lt;/a&gt; over at flickr'</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp;<span style="color: #666666; font-style: italic;">// Close of the DIV and we're done</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'&lt;/div&gt;&lt;!-- /.flickr attribute --&gt;'</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; <span style="color: #009900;">&#125;</span> <span style="color: #666666; font-style: italic;">// End of the get_post_meta if statement</span><br />
<span style="color: #000000; font-weight: bold;">?&gt;</span></div></td></tr></tbody></table></div>
<p>Okay, let&#8217;s take a moment to go through the code.</p>
<p>First of all, make sure you have created the custom fields in your WordPress post, and that you have the names of the fields exactly right. After all, if there&#8217;s no custom field data there&#8217;s nothing to do!</p>
<p>We check for the data in the first line:</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span>get_post_meta<span style="color: #009900;">&#40;</span><span style="color: #000088;">$post</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">ID</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'flickr_attribute_name'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span></div></td></tr></tbody></table></div>
<p>We use the WordPress function <a href="http://codex.wordpress.org/Function_Reference/get_post_meta">get_post_meta</a> to grab the value for &#8216;flickr_attribute_name&#8217;. If there&#8217;s no data there then this statement will be null and the if won&#8217;t run. If there is something in that custom field then the code will carry on executing.</p>
<p>But hold on a minute, what&#8217;s all that other stuff? Well, the get_post_meta function has the following parameters:</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">get_post_meta<span style="color: #009900;">&#40;</span><span style="color: #000088;">$post_id</span><span style="color: #339933;">,</span> <span style="color: #000088;">$key</span><span style="color: #339933;">,</span> <span style="color: #000088;">$single</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
<p>We set our <strong>$post_id</strong> as the current post using $post->ID. Our <strong>$key</strong> is the name of the custom field which is &#8216;flickr_attribute_name&#8217;. And finally we set <strong>$single</strong> to true.</p>
<p>What is single? If it&#8217;s set to <strong>true</strong> it returns a single result as a string. If it&#8217;s set to <strong>false</strong> it returns multiple results as an array. We&#8217;ll get on to arrays in later tutorials, but for now we&#8217;re going to keep it simple. We only have one value for our flickr credit so we leave it as <strong>true</strong>.</p>
<p>So now we know we have some data, let&#8217;s carry on with the code. We put our content in a DIV so we can style it to our liking</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br /></div></td><td><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;">// It does, so let's start building our HTML!</span><br />
<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'&lt;div class=&quot;flickr_attribute&quot;&gt;'</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
<p>And we also create two variables with our custom field data in. The <strong>get_post_meta</strong> function works exactly as we described it above.</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br /></div></td><td><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;">// Grab the name of the flickr user from the custom field</span><br />
<span style="color: #666666; font-style: italic;">// called 'flickr_attribute_name'</span><br />
<span style="color: #000088;">$flickr_attribute_name</span> <span style="color: #339933;">=</span><br />
<br />
&nbsp; get_post_meta<span style="color: #009900;">&#40;</span><span style="color: #000088;">$post</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">ID</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'flickr_attribute_name'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #666666; font-style: italic;">// Grab the url of the flickr user from the custom field</span><br />
<span style="color: #666666; font-style: italic;">// called 'flickr_attribute_url'</span><br />
<span style="color: #000088;">$flickr_attribute_url</span> <span style="color: #339933;">=</span><br />
&nbsp; get_post_meta<span style="color: #009900;">&#40;</span><span style="color: #000088;">$post</span><span style="color: #339933;">-&gt;</span><span style="color: #004000;">ID</span><span style="color: #339933;">,</span> <span style="color: #0000ff;">'flickr_attribute_url'</span><span style="color: #339933;">,</span> <span style="color: #009900; font-weight: bold;">true</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
<p>Again, note that we set the <strong>$single</strong> parameter to <strong>true</strong>, because we know there is only one bit of data. How do we know this? Well, in this instance it&#8217;s because we&#8217;ve set the custom field up ourselves in the WordPress backend.</p>
<p>Finally, we throw together the rest of the HTML, and close off the <strong>if</strong> statement.</p>
<div class="codecolorer-container php default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br /></div></td><td><div class="php codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">&nbsp; &nbsp; &nbsp;<span style="color: #666666; font-style: italic;">// Continue with our HTML, using our new variables</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'photo courtesy of &lt;a href=&quot;'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$flickr_attribute_url</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'&quot; target=&quot;_blank&quot;&gt;'</span> <span style="color: #339933;">.</span> <span style="color: #000088;">$flickr_attribute_name</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'&lt;/a&gt; over at flickr'</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp;<span style="color: #666666; font-style: italic;">// Close of the DIV and we're done</span><br />
&nbsp; &nbsp; &nbsp;<span style="color: #b1b100;">echo</span> <span style="color: #0000ff;">'&lt;/div&gt;&lt;!-- /.flickr attribute --&gt;'</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; <span style="color: #009900;">&#125;</span> <span style="color: #666666; font-style: italic;">// End of the get_post_meta if statement</span><br />
<span style="color: #000000; font-weight: bold;">?&gt;</span></div></td></tr></tbody></table></div>
<h3>Bringing it together</h3>
<p>So we have our custom fields in WordPress and we&#8217;ve entered some data into them. We&#8217;ve also created the snippet of easy PHP which&#8217;ll read this data and display it on the page.</p>
<p>But where does it go?</p>
<p>Well, for this snippet I&#8217;ve chosen to put it on the bottom of the <strong>single.php</strong> page in the wp-content folder, as this is the page that displays single posts.</p>
<p>On my page it comes just before the <tags> section, which itself is just before the <strong>comments</strong> bit. But you could put it anywhere you want.</p>
<p>Just boot up your favourite PHP editor (I like Expresso on the Mac and, predictably, Dreamweaver on the PC) and type in the code.</p>
<p>Save your page, upload, and you should have a lovely flickr photo credit.</p>
<h3>What next?</h3>
<p>Don&#8217;t have flickr photos on your page? Well then this could be a bit pointless. But remember, this tutorial should just give you a basic idea of how custom fields work. Sure, you could have put this flickr information in the post itself but as we&#8217;ll see, we can do all kinds of funky things once we have the ability to search custom fields and display data based on their contents.</p>
<p>In the mean time there is some further reading below. Oh, and the further reading is displayed from data in custom fields!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.richardshepherd.com/wordpress-custom-fields-for-beginners/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>The golden rule of email marketing</title>
		<link>http://www.richardshepherd.com/the-golden-rule-of-email-marketing/</link>
		<comments>http://www.richardshepherd.com/the-golden-rule-of-email-marketing/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 22:49:34 +0000</pubDate>
		<dc:creator>richardshepherd</dc:creator>
				<category><![CDATA[Email Marketing]]></category>
		<category><![CDATA[Online Marketing]]></category>

		<guid isPermaLink="false">http://www.richardshepherd.com/?p=587</guid>
		<description><![CDATA[Okay, let&#8217;s cut straight to the chase. Here&#8217;s the nugget of wisdom that fell out of my brain the other day: At the point where ‘what I want to say’ meets ‘what you want to hear’ is a potential sale. Think about that for a while, and you&#8217;ve nailed email marketing. Not quite sure? Well [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-694" title="mail_pouch" src="http://s85883.gridserver.com/wpblog/wp-content/uploads/2009/10/mail_pouch2.jpg" alt="mail_pouch" width="520" height="250" /></p>
<p style="text-align: left;">Okay, let&#8217;s cut straight to the chase. Here&#8217;s the nugget of wisdom that fell out of my brain the other day:</p>
<p style="text-align: center;"><strong>At the point where<br />
‘what I want to say’</strong><strong> meets ‘what you want to hear’<br />
is a potential sale.</strong></p>
<p>Think about that for a while, and you&#8217;ve nailed email marketing. Not quite sure? Well read on&#8230;<span id="more-587"></span></p>
<p>Every marketing communication, every email we send out, has an agenda. More often than not that agenda is ‘what you want to say’. You have products and services and you want to sell them. So, send out an email selling your stuff and how great (and well priced!) it is. That is essentially what you want to say.</p>
<p>But is it what a potential customer wants to hear? Of course it isn’t. They don’t care what you <em>want</em> to sell or what you <em>want</em> to provide.</p>
<p>Unless you have a solution to a problem. That problem could be ‘when should I think about writing a will’, ‘what can I buy dad for his birthday’ or ‘what should I wear out on Saturday night’.</p>
<p><strong>What I want to hear is a solution to a problem that you don’t know I have.</strong></p>
<p>Again, because we have no idea what the problems people have might be we fall back on old reliable – an email crammed full of things we want to say, in the hope that you might want to hear some of it.</p>
<p>Here’s an example. “Company X is proud to announce it’s recruited two new staff to head up the new Widget division”.</p>
<p>Seriously. Who cares?</p>
<p>“We specialise in providing you and your team with a fun yet professional experience.”</p>
<p>Wow. Really? Good grief.</p>
<p>So how on earth can we start to put together an email that gets beyond the clichés, and the arrogance of telling people what we want them to hear.</p>
<h3>We listen</h3>
<p>We listen. And we put ourselves in our customers shoes for a few minutes. We ask ourselves questions like,</p>
<p>“What do we want to hear” and “How do we want to be treated”.</p>
<p>Think about how many email newsletters/magazines/mailshots you get a week. And think about the one that gets the most time from you. That’s the one that works.</p>
<p>Now I don’t know you, but I bet I can guess what’s in that email. I bet it’s something you’re interested in. It may or may not be related to work, but whatever it is you are passionate about it. You might read magazines about this topic, or watch TV shows about it. You probably read news sources on the web about this topic.</p>
<p>It could be a  digest email. I bet it has a point of view on a number of current topics that then points you in the direction of further information if you need it. I bet it consists of small snippets of information, rather than long paragraphs of uninterrupted story.</p>
<p>I bet it has some colour in it. I bet the images are strong yet simplistic. I bet for some of you, you’re even surprised at how little ‘design’ seems to have gone into it. It might not have an ounce of eye-candy to it’s name.</p>
<p>But you care about the subject and this particular email always acts as the brightest and most compelling window into that subject.</p>
<h3>Guaranteed opens. Guaranteed clicks.</h3>
<p>So how do you guarantee that the people you email want to hear what you have to say?</p>
<p>Well here’s the rub: It’s nothing new, but we often forget it along the way somewhere.</p>
<p>Small targeted email lists are always, always better than large untargeted lists.</p>
<p><em>&#8220;Half the Money I Spend on Advertising Is Wasted. The Trouble Is, I Don&#8217;t Know Which Half&#8221;</em> &#8211; John Wanamaker</p>
<p>You <em>do</em> know which half. You can see on your list which half.</p>
<p>Here’s an idea. Delete them. Delete them from your list today. If someone hasn’t opened, say, the last three emails your have sent then delete them right now!!</p>
<p>You email list may halve in a second. You may worry about all those potential customers you have lost.</p>
<p>Delete them.</p>
<p>Surely they want something you sell.</p>
<p>Delete them.</p>
<p>They might have been on holiday for three weeks and so not had chance to read the emails.</p>
<p>You are kidding yourself. Delete them.</p>
<p>Okay, so maybe let&#8217;s first send an email along the lines of, “Hey you haven’t read the last few emails we sent so we’re going to remove you from our list. If you wish to remain subscribed then click here” – or something to that effect.</p>
<p>You need to remove these people from your list. You are getting an inflated sense of the number of people who want to hear from you, and you are wasting your time and money on marketing to people who have no interest in what you want to say.</p>
<p>It’s time to clean out the trash (or as we say here in England, the rubbish). It’s time to let go of the hope those people who genuinely has no interest in you or your products.</p>
<p>And watch your list of email subscribers dwindle.</p>
<h3>Here’s the good news.</h3>
<p>You now have a list of people who want to hear what you’ve got to say. They are avid readers. They are loyal ambassadors. They value your information, they value your insight, and they value the products and services you provide.</p>
<p>And here’s the better news. You don’t have to sell to these people because they are already sold. You merely have to start a conversation with them, which is a lot more fun. Don’t worry, they’ll buy when they’re ready. But whilst they are engaged in a conversation with you they ain’t goin’ nowhere.</p>
<p>Your list is gold. It is a list of targeted individuals who want to join in. It’s not small – it’s lean. It’s focused. It’s manageable.</p>
<p>Now you can do two things.</p>
<p>Firstly craft emails that engage these people. Don’t worry about selling to them. Talk to them about issues that affect your business and theirs. Review products with honest feedback. Share your stories, and invite their feedback. Have a conversation with the friends of your brand.</p>
<p>And secondly, put together a campaign of growing your list with like-minded people. Don’t buy or harvest thousands of email addresses. Look at ways of building you list so that it remains of excellent quality.</p>
<p>Make sure it’s double opt in for a start. That will stop, amongst other things, joke sign ups and spam. Sign people up when they enquire about your product or service. Sign people up when they buy something from you. And sign people up when they comment or review something on your site.</p>
<p>Always ask their permission, and always encourage them to be an active member of the community you are forging.</p>
<p>Draft in photo sharing and blog sharing elements. Ask your customers to contribute to your emails – not just read them. If they have a review then share it with the community. Spend more of your time trying to listen to your customers, rather than talking (or shouting!) at them.</p>
<p>Now you have a group of people who want to listen to what you want to say. You and your potential and existing customers are on the same wavelength, and both groups can add value to each other.</p>
<p>And in email marketing, what could be more important than that?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.richardshepherd.com/the-golden-rule-of-email-marketing/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Two Degrees</title>
		<link>http://www.richardshepherd.com/two-degrees/</link>
		<comments>http://www.richardshepherd.com/two-degrees/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 08:05:58 +0000</pubDate>
		<dc:creator>richardshepherd</dc:creator>
				<category><![CDATA[Film & TV]]></category>
		<category><![CDATA[Production]]></category>
		<category><![CDATA[Videos]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.richardshepherd.com/?p=651</guid>
		<description><![CDATA[Two degrees. That&#8217;s all it takes. This weekend I unearthed a bunch of short films and commericals I directed a couple of years ago, and thought they&#8217;d make a nice addition to the new site. They were part of a campaign to &#8216;Change the World in Five Minutes&#8217;, which I worked on with Film Australia [...]]]></description>
			<content:encoded><![CDATA[<p>Two degrees. That&#8217;s all it takes.</p>
<p>This weekend I unearthed a bunch of short films and commericals I directed a couple of years ago, and thought they&#8217;d make a nice addition to the new site. They were part of a campaign to &#8216;Change the World in Five Minutes&#8217;, which I worked on with Film Australia and Australian broadcaster SBS.</p>
<p>So here&#8217;s the first &#8211; it&#8217;s called &#8216;Two Degrees&#8217;.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.richardshepherd.com/two-degrees/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
