<?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>Little Penguin Studio</title>
	<atom:link href="http://www.littlepenguinstudio.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.littlepenguinstudio.com</link>
	<description>Freelance Vancouver, BC, based WordPress developer Nathan Shubert</description>
	<lastBuildDate>Thu, 02 Feb 2012 05:22:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>What I&#8217;m Currently Reading WordPress Plugin</title>
		<link>http://www.littlepenguinstudio.com/2011/10/03/what-im-currently-reading/</link>
		<comments>http://www.littlepenguinstudio.com/2011/10/03/what-im-currently-reading/#comments</comments>
		<pubDate>Mon, 03 Oct 2011 04:06:21 +0000</pubDate>
		<dc:creator>Nathan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.littlepenguinstudio.com/?p=200</guid>
		<description><![CDATA[What I&#8217;m Currently Reading is a simple plugin to do one thing: tell the world what book you&#8217;re reading in the sidebar of your blog or website. The plugin gives you a widget that allows you to put in the title, author, and url for info of the book you&#8217;re reading, as well as customize [...]]]></description>
			<content:encoded><![CDATA[<p>What I&#8217;m Currently Reading is a simple plugin to do one thing: tell the world what book you&#8217;re reading in the sidebar of your blog or website. The plugin gives you a widget that allows you to put in the title, author, and url for info of the book you&#8217;re reading, as well as customize the title of your widget and the default text if you&#8217;re not currently reading a book. There are several other plugins that allow you to keep a more detailed archive of your reading history, and if that&#8217;s what you&#8217;re looking for those plugins take care of you beautifully. This one is if you don&#8217;t need that kind of functionality, but would like to be able to quickly tell visitors what you&#8217;re reading.</p>
<p>To use, simply activate, click on Appearance &gt; Widgets, drag the widget into your sidebar and save.</p>
<p><a href="http://www.littlepenguinstudio.com/wp-content/uploads/2011/10/what_im_currently_reading.php_.zip"><strong>Download Plugin</strong></a></p>
<h3>Screen Shots</h3>
<p><img class="size-full wp-image-201 alignleft" title="Screen Shot 2011-10-02 at 8.50.21 PM" src="http://www.littlepenguinstudio.com/wp-content/uploads/2011/10/Screen-Shot-2011-10-02-at-8.50.21-PM.png" alt="" width="268" height="414" /></p>
<p><img class="size-full wp-image-202 alignleft" title="Screen Shot 2011-10-02 at 8.52.55 PM" src="http://www.littlepenguinstudio.com/wp-content/uploads/2011/10/Screen-Shot-2011-10-02-at-8.52.55-PM.png" alt="" width="203" height="85" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.littlepenguinstudio.com/2011/10/03/what-im-currently-reading/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>LESS, Not Just Compiled Client-Side</title>
		<link>http://www.littlepenguinstudio.com/2011/09/12/less-not-just-compiled-client-side/</link>
		<comments>http://www.littlepenguinstudio.com/2011/09/12/less-not-just-compiled-client-side/#comments</comments>
		<pubDate>Mon, 12 Sep 2011 20:50:11 +0000</pubDate>
		<dc:creator>Nathan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[css]]></category>

		<guid isPermaLink="false">http://www.littlepenguinstudio.com/?p=193</guid>
		<description><![CDATA[I&#8217;ve come across quite a few blog posts and podcasts lately comparing the two popular css supersets LESS and Sass. And although these resources are relatively useful, I&#8217;ve noticed nearly all of them presenting the same false assumption: that whereas Sass can be compiled server-side, LESS is compiled client-side only. They then come to the [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter size-full wp-image-194" title="LESS Logo" src="http://www.littlepenguinstudio.com/wp-content/uploads/2011/09/logo.png" alt="" width="199" height="81" /></p>
<p>I&#8217;ve come across quite a few blog posts and podcasts lately comparing the two popular css supersets LESS and Sass. And although these resources are relatively useful, I&#8217;ve noticed nearly all of them presenting the same false assumption: that whereas Sass can be compiled server-side, LESS is compiled client-side only. They then come to the conclusion that since you don&#8217;t want to rely on JavaScript to compile your css, Sass is a better bet. Now, if that assumption were correct, then that would be a respectable conclusion, but the fact of the matter is that LESS is NOT limited to client-side compilation.</p>
<p>First off, you can <a href="http://lesscss.org/#-server-side-usage" target="_blank">compile LESS server-side</a>. Whereas Sass compiles server-side using Rails, LESS does so using Node.js, thus scoring several nerd-core points.</p>
<p>For an even easier way to compile LESS, you can also download the <a href="http://incident57.com/less/" target="_blank">Less app</a> that runs in the background and compiles a .css file whenever a .less file is saved in one of the app&#8217;s watched folders. To make a folder watched, you simply drag it into the app. Nothing could be easier. So you end up with a css file that you can use locally and for deployment, written in LESS, compiled as CSS, and you don&#8217;t have to worry about Node.</p>
<p>No, I realize that I&#8217;m probably coming across sounding like a complete LESS fan-boy. And don&#8217;t get me wrong, I DO really love working with LESS. But I just felt behooved as someone that uses LESS and doesn&#8217;t compile client-side, to counter this common misconception and remind folks about non client-side methods of compiling LESS code.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.littlepenguinstudio.com/2011/09/12/less-not-just-compiled-client-side/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CBC Radio 3 Social Icon</title>
		<link>http://www.littlepenguinstudio.com/2011/09/07/cbc-radio-3-social-icon/</link>
		<comments>http://www.littlepenguinstudio.com/2011/09/07/cbc-radio-3-social-icon/#comments</comments>
		<pubDate>Wed, 07 Sep 2011 04:03:38 +0000</pubDate>
		<dc:creator>Nathan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[canada]]></category>
		<category><![CDATA[music]]></category>

		<guid isPermaLink="false">http://www.littlepenguinstudio.com/?p=186</guid>
		<description><![CDATA[Here&#8217;s a bit of a niche one. Gedy&#8217;s social media icons have gotten a lot of notoriety, and they&#8217;re really great. Everybody seems to use them, including myself. There is one little gap though if you&#8217;re a Canadian musician or Canadian music fan: CBC Radio 3. Radio 3 is a fantastic place to share and [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><img class="aligncenter size-full wp-image-187" title="CBC Radio 3" src="http://www.littlepenguinstudio.com/wp-content/uploads/2011/09/Radio-3.png" alt="" width="280" height="126" /></p>
<p>Here&#8217;s a bit of a niche one. <a href="http://lifetreecreative.com/icons/" target="_blank">Gedy&#8217;s social media icons</a> have gotten a lot of notoriety, and they&#8217;re really great. Everybody seems to use them, including myself. There is one little gap though if you&#8217;re a Canadian musician or Canadian music fan: <a href="http://radio3.cbc.ca" target="_blank">CBC Radio 3</a>. Radio 3 is a fantastic place to share and discover music, and some bands have a substantial presence there. You can also create publicly available playlists on Radio 3. So I thought it&#8217;d be great to have a Radio 3 icon to use on your website alongside Gedy&#8217;s icons. So that&#8217;s what I did!</p>
<p>Feel free to <a href="http://www.littlepenguinstudio.com/wp-content/uploads/2011/09/CBC_Radio_3_Icons.zip" target="_blank">download it</a> and use if on your website.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.littlepenguinstudio.com/2011/09/07/cbc-radio-3-social-icon/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How To Move a WordPress Site</title>
		<link>http://www.littlepenguinstudio.com/2011/08/30/how-to-move-a-wordpress-site/</link>
		<comments>http://www.littlepenguinstudio.com/2011/08/30/how-to-move-a-wordpress-site/#comments</comments>
		<pubDate>Tue, 30 Aug 2011 01:05:28 +0000</pubDate>
		<dc:creator>Nathan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[beginner]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.littlepenguinstudio.com/?p=137</guid>
		<description><![CDATA[One thing I get asked about all the time is how to migrate (move) a WordPress site. The scenario&#8217;s pretty common: you developed a WordPress site on your sever, or it&#8217;s in a /test folder on the production server, and it&#8217;s time to make the site go live. Fortunately, this is actually really easy to [...]]]></description>
			<content:encoded><![CDATA[<p>One thing I get asked about all the time is how to migrate (move) a WordPress site. The scenario&#8217;s pretty common: you developed a WordPress site on your sever, or it&#8217;s in a /test folder on the production server, and it&#8217;s time to make the site go live. Fortunately, this is actually really easy to do and once you get the hang of it will take less than 5 minutes.</p>
<h3>What You&#8217;ll Need</h3>
<p>In order to move your website, you&#8217;ll need:</p>
<ul>
<li>FTP access on both the server you&#8217;re moving from and the server you&#8217;re moving to</li>
<li>Access to cPanel or whatever other admin interface is in use.</li>
</ul>
<p>Note: I&#8217;m assuming you know how to create a database and assign a user to it. If not, check out this <a href="http://www.webhostingsearch.com/video-tutorials/how-to-create-a-mysql-database-in-cpanel.php" target="_blank">handy video</a> to learn how.</p>
<h4>Moving From a Test Folder</h4>
<p>It&#8217;s common to put a site in a test folder on the production server before going live. Moving your site to the root folder is really easy.</p>
<h5>In your ftp</h5>
<ol>
<li>Backup the old website.</li>
<li>Make sure your backup is in place, then delete the old site.</li>
<li>Move all files from your test folder into the root folder.</li>
</ol>
<h5>In phpMyAdmin</h5>
<ol>
<li>Select the database used for your new site<br />
<img class="aligncenter size-large wp-image-143" title="phpMyAdmin Screenshot" src="http://www.littlepenguinstudio.com/wp-content/uploads/2011/08/Screen-Shot-2011-08-29-at-5.15.50-PM-1024x682.jpg" alt="" width="600" height="399" /></li>
<li>Click the &#8220;Structure&#8221; link in the wp_options row<br />
<img class="aligncenter size-full wp-image-145" title="phpMyAdmin Screenshot" src="http://www.littlepenguinstudio.com/wp-content/uploads/2011/08/Screen-Shot-2011-08-29-at-5.22.38-PM.jpg" alt="" width="587" height="273" /></li>
<li>Click &#8220;Browse&#8221;<br />
<img class="aligncenter size-full wp-image-146" title="phpMyAdmin Screenshot" src="http://www.littlepenguinstudio.com/wp-content/uploads/2011/08/Screen-Shot-2011-08-29-at-5.24.51-PM.jpg" alt="" width="628" height="154" /></li>
<li>Click &#8220;Edit&#8221; by the &#8220;siteurl&#8221; field. Enter your new address and click &#8220;Go&#8221;. Click to the next page and do the same for the &#8220;home&#8221; field.<br />
<img class="aligncenter size-full wp-image-148" title="phpMyAdmin Screenshot" src="http://www.littlepenguinstudio.com/wp-content/uploads/2011/08/Screen-Shot-2011-08-29-at-5.27.17-PM.jpg" alt="" width="580" height="235" /></li>
</ol>
<p><strong>Note:</strong> URLs created in the wysiwyg (images, internal links, etc) are created absolute to the site URL at the time you import the images. Those will either have to be updated manually, or see the addendum for a faster method.</p>
<h4>Moving From a Different Host</h4>
<p>Moving your site from a different host is the same as moving from a test folder, but with a couple extra steps. When you just move a site to a different folder on the same server, you don&#8217;t have to change the database information because it stays the same. If we&#8217;re moving from a different server though we&#8217;ll also need to move our database in addition to the steps above</p>
<p>First, transfer your files to your new server via FTP.</p>
<ol>
<li>Login to phpMyAdmin on the server you&#8217;re moving FROM, and choose the database that&#8217;s used for your site in the left-hand sidebar.</li>
<li>Click the &#8220;Export&#8221; tab.</li>
<li>With all table rows selected, SQL chosen and &#8220;Save as file&#8221; checked, click &#8220;Go&#8221;.<br />
<img class="aligncenter size-large wp-image-150" title="phpMyAdmin Screenshot" src="http://www.littlepenguinstudio.com/wp-content/uploads/2011/08/Screen-Shot-2011-08-29-at-5.37.49-PM-1024x707.jpg" alt="" width="600" height="414" /></li>
<li>Choose a place on your hard-drive to save your database. Personally, I save the database on my desktop, then move it to a dated backup folder after I import.</li>
<li>Login to phpMyAdmin on the server that your moving your site to.</li>
<li>Click the &#8220;Import&#8221; tab.</li>
<li>Browse for your database file that you just exported and click &#8220;Go&#8221;.</li>
<li>Follow the &#8220;In phpMyAdmin&#8221; instructions from the &#8220;Moving From a Test Folder&#8221; section above.</li>
<li>Open wp_config.php, which you will find in the root folder of your site and change the old database name, user, password, and host info to the new info for your new host.<br />
<img class="aligncenter size-full wp-image-158" title="TextMate Screenshot" src="http://www.littlepenguinstudio.com/wp-content/uploads/2011/08/Screen-Shot-2011-08-29-at-6.29.13-PM.jpg" alt="" width="583" height="274" /></li>
</ol>
<p><strong>Note:</strong> URLs created in the wysiwyg (images, internal links, etc) are created absolute to the site URL at the time you import the images. Those will either have to be updated manually, or see the addendum for a faster method.</p>
<h4>Addendum</h4>
<p>Thanks to <a href="http://www.mynettworks.com" target="_blank">Steve</a> for reminding me, and <a href="http://www.bluelimemedia.com" target="_blank">Christine</a> for this particular suggestion. Rather than change your URLs in the database, before uploading the database to your new server open the .sql file in TextMate (or your code editor of choice) and do a quick find/replace of the old URL to the new one. If you&#8217;re moving your site from a test folder, you could do it the same as above and change urls created in the wysiwyg manually, or export your .sql, do a quick find/replace, and then upload it again.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-163" title="Screen Shot 2011-09-02 at 12.43.15 PM" src="http://www.littlepenguinstudio.com/wp-content/uploads/2011/08/Screen-Shot-2011-09-02-at-12.43.15-PM.png" alt="" width="536" height="242" /></p>
]]></content:encoded>
			<wfw:commentRss>http://www.littlepenguinstudio.com/2011/08/30/how-to-move-a-wordpress-site/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Fetch Custom Field Values in WordPress</title>
		<link>http://www.littlepenguinstudio.com/2011/08/23/fetch-custom-field-values/</link>
		<comments>http://www.littlepenguinstudio.com/2011/08/23/fetch-custom-field-values/#comments</comments>
		<pubDate>Tue, 23 Aug 2011 05:26:08 +0000</pubDate>
		<dc:creator>Nathan</dc:creator>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://localhost:8888/studio/?p=72</guid>
		<description><![CDATA[I find with custom post types you end up fetching custom values a lot so I wrote a set of functions to make the process easier and more efficient. This code can be included in your functions.php file. Personally I like to bring it in with an include to keep my code tidy. You can [...]]]></description>
			<content:encoded><![CDATA[<p>I find with custom post types you end up fetching custom values a lot so I wrote a set of functions to make the process easier and more efficient. This code can be included in your functions.php file. Personally I like to bring it in with an include to keep my code tidy.</p>
<p>You can just pass your custom field name to custom_field() or get_custom_field to have the value retrieved. It has a couple ways to format data that I find are common custom fields: dates saved as Unix timestamps, text blocks, html code, and Google Maps embed codes. And if your value is a date, you can also pass a date format as your third argument, or get the default of F j, Y.</p>
<pre name="code" class="php">/* Functions for processing custom fields */

function get_custom_field($field, $format = '', $date_format = 'F j, Y')
{
        $fetch = $field;
        $fetch = get_post_custom_values($field);
        $fetch = $fetch[0];

        // Date
        if ($format == 'date' &amp; $fetch !='') $fetch = format_date($fetch, $date_format);

        // Text Block
        elseif ($format == 'text_block') $fetch = wpautop($fetch);

        // HTML
        elseif ($format == 'html') $fetch = html_entity_decode($fetch);

        // Google Map
        elseif ($format == 'google_map') $fetch = display_google_map($fetch);           

        return $fetch;
}

function custom_field($field, $format = '', $date_format = 'F j, Y')
{
        echo get_custom_field($field, $format, $date_format);
}

function format_date($date, $date_format)
{
        $date = date($date_format, $date);
        return $date;
}

function display_google_map($code)
{
        $code = html_entity_decode($code);
        // Remove the info bubble. Usually desirable, but use the html format if unwanted.
        $code = str_replace("output=embed", "output=embed&amp;iwloc=near", $code);
        return $code;
}</pre>
<p>So to summarize use:</p>
<pre name="code" class="php">custom_field('field name', 'format', 'date format');</pre>
<p>Also available:</p>
<pre name="code" class="php">get_custom_field($args);</pre>
<p>Field = required<br />
Format = optional<br />
Date Format = optional</p>
]]></content:encoded>
			<wfw:commentRss>http://www.littlepenguinstudio.com/2011/08/23/fetch-custom-field-values/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

