<?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>eruANNA &#187; Tutorials</title>
	<atom:link href="http://www.eruanna.net/category/tutorials/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.eruanna.net</link>
	<description>The blog of a multimedia technology student based in the UK.</description>
	<lastBuildDate>Sat, 19 Nov 2011 13:47:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Adding your geotagged flickr photos to a google map</title>
		<link>http://www.eruanna.net/adding-your-geotagged-flickr-photos-to-a-google-map/</link>
		<comments>http://www.eruanna.net/adding-your-geotagged-flickr-photos-to-a-google-map/#comments</comments>
		<pubDate>Fri, 15 May 2009 19:28:35 +0000</pubDate>
		<dc:creator>Nnax</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://www.eruanna.net/?p=708</guid>
		<description><![CDATA[I can claim absolutely no credit for this bit of code, its all courtesy wubbahed.com. All I&#8217;m doing here is displaying the code for you to copy and paste. This bit of code will display your geotagged flickr photos on a google map. I use this in the sidebar of one of my blogs. You [...]]]></description>
			<content:encoded><![CDATA[<p>I can claim absolutely no credit for this bit of code, its all courtesy <a href="http://wubbahed.com/2007/04/16/google-maps-flickr-georss-feed/">wubbahed.com</a>. All I&#8217;m doing here is displaying the code for you to copy and paste. </p>
<p>This bit of code will display your geotagged flickr photos on a google map. I use this in the sidebar of one of my blogs.</p>
<p>You will need your own API key. <a href="http://code.google.com/apis/maps/signup.html">Get yours here</a>.</p>
<p>The geoFeed can be found at the <a href="http://www.flickr.com/photos/xhan104/">bottom of your flickr page </a>.</p>
<div class="postimg"><img src="http://farm3.static.flickr.com/2410/3533539505_4404e0056c.jpg" alt="" /></div>
<p>Once you have this information replace the sections in bold.</p>
<p>&lt;script src=&quot;http://maps.google.com/maps?file=api&amp;v=2&amp;key=<b>ABQIAAAA-W9uqIa2PP530F8zDw7ifhTU7ZIBfnHw4wAfJHH0RagnnLKqYRRMSJ_Im0zVLMtCE6XFGDom2iMmrA</b>&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;</p>
<p>&lt;script type=&quot;text/javascript&quot;&gt;<br />
var map;<br />
var geoXml = new GGeoXml(&quot;<b>http://api.flickr.com/services/feeds/geo/?id=38083777@N08&amp;lang=en-us&amp;format=rss_200</b>&quot;);<br />
function loadMap() {<br />
if (GBrowserIsCompatible()) {<br />
var map = new GMap2(document.getElementById(&quot;map&quot;));<br />
map.setCenter(new GLatLng(51.26835954379726, 1.1254119873046875), 10);<br />
map.addControl(new GLargeMapControl());<br />
map.addControl(new GMapTypeControl());<br />
map.addOverlay(geoXml);<br />
}<br />
}<br />
&lt;/script&gt;<br />
&lt;div id=&quot;map&quot; style=&quot;width: 300px; height: 500px&quot;&gt;&lt;/div&gt;<br />
&lt;script  type=&quot;text/javascript&quot;&gt;setTimeout(&quot;loadMap()&quot;, 1);&lt;/script&gt;</p>
<p>There is another way of doing it, simple go to <a href="http://maps.google.com">maps.google.com</a> and paste the georss feed url into the search box and click search, you can then embed it using an iframe. I couldn&#8217;t use this method on my other site because of some weird bug with adbrite!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.eruanna.net/adding-your-geotagged-flickr-photos-to-a-google-map/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Setting up the Cron Job for wp-o-matic in Cpanel</title>
		<link>http://www.eruanna.net/setting-up-the-cron-job-for-wp-o-matic-in-cpanel/</link>
		<comments>http://www.eruanna.net/setting-up-the-cron-job-for-wp-o-matic-in-cpanel/#comments</comments>
		<pubDate>Thu, 14 May 2009 12:27:31 +0000</pubDate>
		<dc:creator>Nnax</dc:creator>
				<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://www.eruanna.net/setting-up-the-cron-job-for-wp-o-matic-in-cpanel/</guid>
		<description><![CDATA[To set up the cron job for wp-o-matic, you need to login to your cpanel and select the cron jobs option. Select standard as your experience level. The code wp-o-matic gives you looks like the following: */20 * * * * /usr/bin/curl http://www.blah.com/blog/wp-content/plugins/wp-o-matic/cron.php?code=xxxxx You only need the http://www.blah.com/blog/wp-content/plugins/wp-o-matic/cron.php?code=xxxxx part. Paste that into the command to [...]]]></description>
			<content:encoded><![CDATA[<p>To set up the cron job for wp-o-matic, you need to login to your cpanel and select the cron jobs option.</p>
<p>Select standard as your experience level.</p>
<p>The code wp-o-matic gives you looks like the following:<br />
<b>*/20 * * * * /usr/bin/curl http://www.blah.com/blog/wp-content/plugins/wp-o-matic/cron.php?code=xxxxx</b></p>
<p>You only need the <b>http://www.blah.com/blog/wp-content/plugins/wp-o-matic/cron.php?code=xxxxx</b> part. Paste that into the command to run field and select how many minutes/hours/days you wish it to run, then click save. </p>
<p>When you go to add another cron job the wp-o-matic job should have been saved and appear as &#8220;entry 1&#8243; in the Cron Manager.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.eruanna.net/setting-up-the-cron-job-for-wp-o-matic-in-cpanel/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Drupal: Stuck on Database Configuration Page</title>
		<link>http://www.eruanna.net/drupal-stuck-on-database-configuration-page/</link>
		<comments>http://www.eruanna.net/drupal-stuck-on-database-configuration-page/#comments</comments>
		<pubDate>Fri, 08 May 2009 09:05:57 +0000</pubDate>
		<dc:creator>Nnax</dc:creator>
				<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://www.eruanna.net/drupal-stuck-on-database-configuration-page/</guid>
		<description><![CDATA[If your installing Drupal (even on localhost) if you get stuck on the Database Configuration page open ./sites/default/settings.php and change the $db_url variable to your database settings. Depending on the type of database your using this is what your variable will look like. $db_url = &#8216;mysql://username:password@localhost/databasename&#8217;; $db_url = &#8216;mysqli://username:password@localhost/databasename&#8217;; $db_url = &#8216;pgsql://username:password@localhost/databasename&#8217;; In the case [...]]]></description>
			<content:encoded><![CDATA[<p>If your installing Drupal (even on localhost) if you get stuck on the Database Configuration page open ./sites/default/settings.php and change the $db_url variable to your database settings.</p>
<p>Depending on the type of database your using this is what your variable will look like.<br />
$db_url = &#8216;mysql://username:password@localhost/databasename&#8217;;<br />
$db_url = &#8216;mysqli://username:password@localhost/databasename&#8217;;<br />
$db_url = &#8216;pgsql://username:password@localhost/databasename&#8217;;</p>
<p>In the case of my localhost install that line would be:<br />
$db_url = &#8216;mysql://root:root@localhost/drupal&#8217;;</p>
<p>Drupal being the name of my database. Username and password are always root with <a href="http://www.mamp.info/">mamp</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.eruanna.net/drupal-stuck-on-database-configuration-page/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>How to autopost Flickr to WordPress</title>
		<link>http://www.eruanna.net/how-to-autopost-flickr-to-wordpress/</link>
		<comments>http://www.eruanna.net/how-to-autopost-flickr-to-wordpress/#comments</comments>
		<pubDate>Wed, 06 May 2009 14:59:50 +0000</pubDate>
		<dc:creator>Nnax</dc:creator>
				<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://www.eruanna.net/how-to-autopost-flickr-to-wordpress/</guid>
		<description><![CDATA[I set myself a mission the other day &#8211; to automatically post photos from flickr to wordpress. I have my other blog set to update twitter when I add a new post to wordpress &#8211; but I didn&#8217;t want to have to go to Flickr and click &#8220;blog this&#8221; every time I upload a photo [...]]]></description>
			<content:encoded><![CDATA[<p>I set myself a mission the other day &#8211; to automatically post photos from flickr to wordpress. </p>
<p>I have my other blog set to update twitter when I add a new post to wordpress &#8211; but I didn&#8217;t want to have to go to Flickr and click &#8220;blog this&#8221; every time I upload a photo from my iPhone. I know I could just upload to wordpress but I dont trust my host enough so I always want to have as few files as possible to move hosts quickly!! &#8211; bad experiences ¬¬)</p>
<p>To cut a long story short heres what I do to autopost Flickr posts to WordPress:</p>
<p><a href="http://pipes.yahoo.com/flickrrssmedium">Clone this yahoo pipe</a>. I cloned and modified this from <a href="http://www.manifestdensity.net/2007/04/02/full_size_images_in_flickr_rss/">Manifest DeNsity</a>.</p>
<p>Edit the pipe and replace the fetch feed with the url found at the bottom of your flickr page.<br />
The structure will be something like this:</p>
<p>http://api.flickr.com/services/feeds/photos_public.gne?id=<b>38083777@N08</b>&#038;lang=en-us&#038;format=rss_200</p>
<p><a href="http://www.idgettr.com">Find your ID here</a>.</p>
<p>Save the pipe and run it. Click the &#8220;Get an RSS&#8221; link and burn that feed using <a href="http://www.feedburner.google.com">Feedburner</a>. Under the Optimize tab enable smart feed, this neatens the RSS feed up. You could skip this step but if you find theres some problems with importing the posts it could be because of this.</p>
<p>Install <a href="http://devthought.com/tag/wp-o-matic/">WP-O-Matic</a> and follow the setup instructions. I&#8217;ve set my cron job to update every 6 hours. <a href="http://www.eruanna.net/setting-up-the-cron-job-for-wp-o-matic-in-cpanel/">More info on how to do this can be found here</a></p>
<p>In the wp-o-matic admin add a new campaign using the feedburned URL. Select the Category you wish to post into &#8211; and your done! </p>
]]></content:encoded>
			<wfw:commentRss>http://www.eruanna.net/how-to-autopost-flickr-to-wordpress/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>How to reload fonts without restarting Photoshop</title>
		<link>http://www.eruanna.net/how-to-reload-fonts-without-restarting-photoshop/</link>
		<comments>http://www.eruanna.net/how-to-reload-fonts-without-restarting-photoshop/#comments</comments>
		<pubDate>Mon, 20 Apr 2009 05:00:13 +0000</pubDate>
		<dc:creator>Nnax</dc:creator>
				<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://www.eruanna.net/?p=680</guid>
		<description><![CDATA[This is one of the most invaluable things I&#8217;ve learnt about photoshop! When your working on a design and you want to try out a particular font the last thing you want to do is close Photoshop and reopen it this little trick will let you reset your fonts and add any new ones you&#8217;ve [...]]]></description>
			<content:encoded><![CDATA[<p>This is one of the most invaluable things I&#8217;ve learnt about photoshop!</p>
<p>When your working on a design and you want to try out a particular font the last thing you want to do is close Photoshop and reopen it this little trick will let you reset your fonts and add any new ones you&#8217;ve installed to the font list.</p>
<p>I always start a new text layer &#8211; otherwise your paragraph/character settings are lost on your current text selection (<i>press T and click anywhere on the document</i>) then go to <i>Window > Character</i></p>
<div class="postimg">
<img src="http://farm4.static.flickr.com/3492/3455823477_a9974a4b94.jpg" alt="How to reload fonts in Photoshop without restarting" />
</div>
<p>Click the little icon with the three lines and the down arrow in the top right hand corner of the Character Pallet, then select Reset Character and all your new fonts will be added to the list! </p>
]]></content:encoded>
			<wfw:commentRss>http://www.eruanna.net/how-to-reload-fonts-without-restarting-photoshop/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>How to make a no sew skirt</title>
		<link>http://www.eruanna.net/how-to-make-a-no-sew-skirt/</link>
		<comments>http://www.eruanna.net/how-to-make-a-no-sew-skirt/#comments</comments>
		<pubDate>Tue, 20 May 2008 05:00:37 +0000</pubDate>
		<dc:creator>Nnax</dc:creator>
				<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://www.eruanna.net/?p=334</guid>
		<description><![CDATA[Making a skirt, no sewing required! This is what the skirt will look like: 1. Buy a length of material from a fabric shop &#8211; it can be whatever you want. I bought a metre and a half just to be sure I had the right amount. Lay out the material and fold it lengthways [...]]]></description>
			<content:encoded><![CDATA[<p>Making a skirt, no sewing required!</p>
<p>This is what the skirt will look like:</p>
<div class="postimg"><a href="http://www.flickr.com/photos/eruannax/2498115352/" title="skirt by eruannax, on Flickr"><img src="http://farm3.static.flickr.com/2028/2498115352_4223975bf3_o.jpg" width="500" height="593" alt="skirt" /></a></div>
<p>1. Buy a length of material from a fabric shop &#8211; it can be whatever you want. I bought a metre and a half just to be sure I had the right amount. </p>
<p>Lay out the material and fold it lengthways so you have a long thin rectangle</p>
<div class="postimg"><a href="http://www.flickr.com/photos/eruannax/2502540102/" title="nosewskirt1 by eruannax, on Flickr"><img src="http://farm4.static.flickr.com/3165/2502540102_5e64bd41b6_o.jpg" width="356" height="202" alt="nosewskirt1" /></a></div>
<p>3. Measure using a piece of string from above your hips (the widest bit) to wherever you want the skirt to end.</p>
<p>Tie the piece of string to a pen/pencil/fabric marker and starting where you know the pen wont go over the edges of the material draw a semi circle.</p>
<div class="postimg"><a href="http://www.flickr.com/photos/eruannax/2502540262/" title="nosewskirt2 by eruannax, on Flickr"><img src="http://farm4.static.flickr.com/3087/2502540262_fe0b6f20b9_o.jpg" width="456" height="191" alt="nosewskirt2" /></a></div>
<p>Cut along this line &#8211; you now have a circle &#8211; but don&#8217;t unfold it yet!</p>
<p>4. Fold the circle in half vertically and then diagonally.</p>
<div class="postimg"><a href="http://www.flickr.com/photos/eruannax/2502540434/" title="nosewskirt3 by eruannax, on Flickr"><img src="http://farm4.static.flickr.com/3169/2502540434_375f899840_o.jpg" width="382" height="213" alt="nosewskirt3" /></a></div>
<p>5. Cut a rounded quarter circle about 2inches from the point of the folded fabric &#8211; you should have two concentric circles.</p>
<div class="postimg"><a href="http://www.flickr.com/photos/eruannax/2502540586/" title="nosewskirt45 by eruannax, on Flickr"><img src="http://farm4.static.flickr.com/3187/2502540586_765d5affd2_o.jpg" width="445" height="346" alt="nosewskirt45" /></a></div>
<p>Then all you need to do is force yourself into it &#8211; head first! You may need to make a slight rip in the waist to get in but once you&#8217;ve done that it&#8217;s easy enough to get in and out of it!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.eruanna.net/how-to-make-a-no-sew-skirt/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>How to make Skittles Vodka</title>
		<link>http://www.eruanna.net/how-to-make-skittles-vodka/</link>
		<comments>http://www.eruanna.net/how-to-make-skittles-vodka/#comments</comments>
		<pubDate>Fri, 16 May 2008 21:45:58 +0000</pubDate>
		<dc:creator>Nnax</dc:creator>
				<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://www.eruanna.net/?p=332</guid>
		<description><![CDATA[Its my friends birthday on Saturday night so I decided to make my own &#8216;cocktail&#8217;. Which is essentially skittles in a bottle of vodka! Take one cheap bottle of vodka: and lots of skittles: Separate all the purple and green ones &#8211; because apparently their mean or something. And add the remaining ones to the [...]]]></description>
			<content:encoded><![CDATA[<p>Its my friends birthday on Saturday night so I decided to make my own &#8216;cocktail&#8217;. Which is essentially skittles in a bottle of vodka! </p>
<p>Take one cheap bottle of vodka:</p>
<div class="postimg"><a href="http://www.flickr.com/photos/eruannax/2498112884/" title="skittlesvodka1 by eruannax, on Flickr"><img src="http://farm3.static.flickr.com/2398/2498112884_70dfe5d3a7_o.jpg" width="500" height="667" alt="skittlesvodka1" /></a></div>
<p>and lots of skittles:</p>
<div class="postimg"><a href="http://www.flickr.com/photos/eruannax/2497283195/" title="skittlesvodka4 by eruannax, on Flickr"><img src="http://farm3.static.flickr.com/2245/2497283195_e1446490da_o.jpg" width="500" height="375" alt="skittlesvodka4" /></a></div>
<p>Separate all the purple and green ones &#8211; because apparently their mean or something. And add the remaining ones to the bottle.</p>
<div class="postimg"><a href="http://www.flickr.com/photos/eruannax/2497283411/" title="skittlesvodka2 by eruannax, on Flickr"><img src="http://farm4.static.flickr.com/3144/2497283411_c89363d4bd_o.jpg" width="500" height="667" alt="skittlesvodka2" /></a></div>
<p>They all dissolve into this:</p>
<div class="postimg"><a href="http://www.flickr.com/photos/eruannax/2498113556/" title="skittlesvodka3 by eruannax, on Flickr"><img src="http://farm4.static.flickr.com/3135/2498113556_2d80208918_o.jpg" width="500" height="379" alt="skittlesvodka3" /></a></div>
<p>I have a feeling tomorrow night could be messy!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.eruanna.net/how-to-make-skittles-vodka/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>How to write your own wordpress theme</title>
		<link>http://www.eruanna.net/how-to-write-your-own-wordpress-theme/</link>
		<comments>http://www.eruanna.net/how-to-write-your-own-wordpress-theme/#comments</comments>
		<pubDate>Mon, 20 Aug 2007 05:00:53 +0000</pubDate>
		<dc:creator>Nnax</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://www.eruanna.net/x/?p=130</guid>
		<description><![CDATA[Rhys suggested I write some design tutorials &#8211; so thats just what I&#8217;m going to do. I&#8217;m going to teach you how to design your blog, graphics, CSS, HTML and all! This is effectively a rewrite of my previous tutorial on how to customise WordPress, only in much greater detail. You can view the final [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.gospelrhys.co.uk">Rhys</a> suggested I write some design tutorials &#8211; so thats just what I&#8217;m going to do. I&#8217;m going to teach you how to design your blog, graphics, CSS, HTML and all! This is effectively a rewrite of my previous tutorial on how to customise WordPress, only in much greater detail.</p>
<p>You can view the final theme <a href="http://www.eruanna.net/themes/index.php?wptheme=eruannatutorial">here</a>.</p>
<p>I&#8217;m going to assume you have basic skills when it comes to web design or at least some concept of design! No tiny fonts and clashing colours here please! You&#8217;ll also need to have <a href="http://www.wordpress.org">wordpress</a> installed. Please also keep <a href="http://codex.wordpress.org/Template_Tags">this</a> page open, its the most useful thing when making themes!</p>
<p>Some other useful pages are <a href="http://codex.wordpress.org/Using_Themes">Using Themes</a>, <a href="http://codex.wordpress.org/Theme_Development">Theme Development</a> and <a href="http://codex.wordpress.org/Templates">Templates</a>.<br />
<span id="more-130"></span><br />
Navigation</p>
<ul>
<li><a href="#initialdesign">Initial Design</a></li>
<li>CSS fundamentals</li>
<ul>
<li><a href="#2column">2 column layout</a></li>
<li><a href="#3column">3 column layout</a></li>
</ul>
<li><a href="#makestyle">style.css</a></li>
<li><a href="#headerdotphp">header.php</a></li>
<li><a href="#indexdotphp">index.php</a></li>
<li><a href="#footerdotphp">footer.php</a></li>
<li><a href="#sidebardotphp">sidebar.php</a></li>
<ul>
<li><a href="#listpages">List Pages</a></li>
<li><a href="#includesearch">Search Bar</a></li>
<li><a href="#listarchives">Archives</a></li>
<ul>
<li><a href="#listarchivesmonthly">Monthly</a></li>
<li><a href="#listarchivesrecently">Recent Posts</a></li>
</ul>
<li><a href="#listcategories">List Categories</a></li>
<li><a href="#listlinks">List Links</a></li>
<li><a href="#displaycalendar">Display Calendar</a></li>
</ul>
<li><a href="#commentsdotphp">comments.php</a></li>
<li><a href="#pagedotphp">page.php</a></li>
<ul>
<li><a href="#custompage">Custom Pages</a></li>
</ul>
<li><a href="#styling">Styling the Template</a></li>
<ul>
<li><a href="#stylepositioning">Positioning</a></li>
<li><a href="#finalstyle">Final Stylesheet</a></li>
</ul>
<li><a href="#finished">Download the finished product</a></li>
</ul>
<p>I&#8217;m working with wordpress here but the design concepts and the coding remain the same for all platforms, the only things that differ are the template tags, but we&#8217;ll get onto those later.</p>
<div class="title">Initial Design</div>
<p>First you need to know what you want your blog to look like. I usually do a mock up in Photoshop, its easy to modify and expand upon. (If you don&#8217;t have Photoshop you can use paint shop pro or <a href="http://www.gimp.org/">the gimp</a>)</p>
<p>For some ideas have a look at my <a href="http://del.icio.us/xhan104/inspiration">inspiration</a> tag on del.icio.us.</p>
<p>Open Photoshop and Create a new document, I usually make mine 1000&#215;700, it helps having a widescreen laptop here! Because this is a blog I&#8217;m going to go for a simple two column layout with a header on the top.</p>
<div class="postimg"><a href="http://www.flickr.com/photos/25677180@N02/2416893042/" title="layout by eruannax, on Flickr"><img src="http://farm3.static.flickr.com/2370/2416893042_afe03cb681_o.gif" width="500" height="350" alt="layout" /></a></div>
<p>Now I have a rough idea of what I want my site to look like, I&#8217;m going to start coding it.</p>
<div></div>
<p>First though I need to explain a bit about the structure of the site. I find it really helps to visualise CSS.</p>
<div class="postimg"><a href="http://www.flickr.com/photos/25677180@N02/2416893102/" title="css by eruannax, on Flickr"><img src="http://farm4.static.flickr.com/3105/2416893102_66f0f52b10_o.gif" width="500" height="350" alt="css" /></a></div>
<p>This is effectively the stylesheet I&#8217;ll be using, in graphical form. A great way to understand CSS layouts is to mess around with the <a href="http://csscreator.com/?q=tools/layout">CSS Creator</a>, Its a great starting point for any website.</p>
<div></div>
<p>A <b>3 Column</b> layout uses the same &#8216;container&#8217; principal.</p>
<div class="postimg"><a href="http://www.flickr.com/photos/25677180@N02/2416893182/" title="css2 by eruannax, on Flickr"><img src="http://farm3.static.flickr.com/2172/2416893182_1af0b98a7b_o.gif" width="500" height="350" alt="css2" /></a></div>
<div></div>
<p>Login to your FTP and navigate to your wordpress installation directory, go to <b>wp-content/themes</b> and create a new folder, call it whatever you want. This is the folder where we will start building your site.</p>
<p>Firstly make a file called style.css and add the following to it.</p>
<pre>
	&#47;*
	Theme Name&#58; eruanna.net
	Theme URI&#58; http&#58;&#47;&#47;www.eruanna.net
	Description&#58; eruanna.net theme tutorial
	Author&#58; Hannah
	Author URI&#58; http&#58;&#47;&#47;www.eruanna.net
	*&#47;
</pre>
<p>These is needed in order for you to be able to select the working theme in wp admin.</p>
<p>The first section of the theme we&#8217;re going to work on is the main page, this is the section people see first.</p>
<div class="title">header.php</div>
<p>This is &#8216;included&#8217; in all pages using a php include. It helps to maintain consistency throughout the site. Everything in this file will be included in the site &#8211; this can be very useful.</p>
<p>Create a new file in your folder, call it header.php. Add this to your header.php page.</p>
<pre>
	&lt;!DOCTYPE html PUBLIC &quot;-&#47;&#47;W3C&#47;&#47;DTD HTML 4.01&#47;&#47;EN&quot;
	   &quot;http&#58;&#47;&#47;www.w3.org&#47;TR&#47;html4&#47;strict.dtd&quot;&gt;

	&lt;html lang=&quot;en&quot;&gt;
	&lt;head&gt;
</pre>
<p>This is called a doctype, it tells a validator which type of markup your using. In order to have valid markup this must be present, you can find out more about doctypes <a href="http://www.alistapart.com/articles/doctype/">here</a></p>
<pre>
   &lt;title&gt;&lt;?php wp_title()&#59; ?&gt; &lt;?php bloginfo(&#39;name&#39;)&#59; ?&gt;&lt;&#47;title&gt;
</pre>
<p>This is our first example of a template tag. This is wordpress&#8217;s way of calling up a set of variables you have defined in the various options in the wordpress admin.</p>
<pre>
	&lt;!-- Meta Data --&gt;
	   &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text&#47;html&#59; charset=&lt;?php bloginfo(&#39;charset&#39;)&#59; ?&gt;&quot; &#47;&gt;
	   &lt;meta name=&quot;generator&quot; content=&quot;WordPress &lt;?php bloginfo(&#39;version&#39;)&#59; ?&gt;&quot; &#47;&gt;
	   &lt;meta name=&quot;description&quot; content=&quot;This is a tutorial on how to create a wordpress theme&quot; &#47;&gt;
	  &lt;meta name=&quot;keywords&quot; content=&quot;keywords, that, descibe, your, blog&quot; &#47;&gt;
</pre>
<p>Meta tags, Some people say their useless and that search engines ignore them, but I think their vital. They give search engines data to index your site.</p>
<pre>
	&lt;!-- CSS --&gt;
	&lt;link type=&quot;text&#47;css&quot; rel=&quot;stylesheet&quot; href=&quot;&lt;?php bloginfo(&#39;template_url&#39;)&#59; ?&gt;&#47;style.css&quot; &#47;&gt;
</pre>
<p>CSS, cascading style sheets should be the only thing applying style to your website. Without CSS a site should have a white background, black text and horrible blue links in a solid block of text.</p>
<pre>
	&lt;!-- RSS Feeds --&gt;
	   &lt;link rel=&quot;alternate&quot; type=&quot;application&#47;rss+xml&quot; title=&quot;RSS&quot; href=&quot;&lt;?php bloginfo(&#39;rss_url&#39;)&#59; ?&gt;&quot; &#47;&gt;

	&lt;!-- Ping URL --&gt;
	   &lt;link rel=&quot;pingback&quot; href=&quot;&lt;?php bloginfo(&#39;pingback_url&#39;)&#59; ?&gt;&quot; &#47;&gt;

	&lt;!-- Get Archives Tag--&gt;
	   &lt;?php wp_get_archives(&#39;type=monthly&amp;format=link&#39;)&#59; ?&gt;

	&lt;!-- Call to various plugin data --&gt;
	   &lt;?php wp_head()&#59; ?&gt;

	&lt;&#47;head&gt;
</pre>
<p>The rest of the information in the head tag, allows browsers to auto detect your RSS feed, your ping URL, archives and a little tag some plugins use.</p>
<p>Everything after this is setting up the content to be formatted with CSS.</p>
<pre>
&lt;body&gt;

&lt;!--main width definition--&gt;
&lt;div id=&quot;container&quot; &gt;

&lt;div id=&quot;Header&quot;&gt;
&lt;div class=&quot;name&quot;&gt;&lt;a href=&quot;&lt;?php bloginfo(&#39;blog_url&#39;)&#59; ?&gt;&quot;&gt;&lt;?php bloginfo(&#39;name&#39;)&#59; ?&gt;&lt;&#47;a&gt;&lt;&#47;div&gt;
&lt;div class=&quot;description&quot;&gt;&lt;?php bloginfo(&#39;description&#39;)&#59; ?&gt;&lt;&#47;div&gt;
&lt;&#47;div&gt;&#9;

&lt;!--right container--&gt;
&lt;div id=&quot;main&quot; &gt;
</pre>
<p>As a general rule id is used for positioning and class is used within id, to customise text and links, etc.</p>
<p>So here is our header.php, save it to your theme folder.</p>
<pre>
	&lt;!DOCTYPE html PUBLIC &quot;-&#47;&#47;W3C&#47;&#47;DTD HTML 4.01&#47;&#47;EN&quot;
	   &quot;http&#58;&#47;&#47;www.w3.org&#47;TR&#47;html4&#47;strict.dtd&quot;&gt;

	&lt;html lang=&quot;en&quot;&gt;
	&lt;head&gt;
	   &lt;title&gt;&lt;?php wp_title()&#59; ?&gt; &lt;?php bloginfo(&#39;name&#39;)&#59; ?&gt;&lt;&#47;title&gt;

	&lt;!-- Meta Data --&gt;
	   &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text&#47;html&#59; charset=&lt;?php bloginfo(&#39;charset&#39;)&#59; ?&gt;&quot; &#47;&gt;
	   &lt;meta name=&quot;generator&quot; content=&quot;WordPress &lt;?php bloginfo(&#39;version&#39;)&#59; ?&gt;&quot; &#47;&gt;
	   &lt;meta name=&quot;description&quot; content=&quot;This is a tutorial on how to create a wordpress theme&quot; &#47;&gt;
	  &lt;meta name=&quot;keywords&quot; content=&quot;keywords, that, descibe, your, blog&quot; &#47;&gt;

	&lt;!-- CSS --&gt;
	&lt;link type=&quot;text&#47;css&quot; rel=&quot;stylesheet&quot; href=&quot;&lt;?php bloginfo(&#39;template_url&#39;)&#59; ?&gt;&#47;style.css&quot; &#47;&gt;

	&lt;!-- RSS Feeds --&gt;
	   &lt;link rel=&quot;alternate&quot; type=&quot;application&#47;rss+xml&quot; title=&quot;RSS&quot; href=&quot;&lt;?php bloginfo(&#39;rss_url&#39;)&#59; ?&gt;&quot; &#47;&gt;

	&lt;!-- Ping URL --&gt;
	   &lt;link rel=&quot;pingback&quot; href=&quot;&lt;?php bloginfo(&#39;pingback_url&#39;)&#59; ?&gt;&quot; &#47;&gt;

	&lt;!-- Get Archives Tag--&gt;
	   &lt;?php wp_get_archives(&#39;type=monthly&amp;format=link&#39;)&#59; ?&gt;

	&lt;!-- Call to various plugin data --&gt;
	   &lt;?php wp_head()&#59; ?&gt;

	&lt;&#47;head&gt;

	&lt;body&gt;

	&lt;!--main width definition--&gt;
	&lt;div id=&quot;container&quot; &gt;

	&lt;div id=&quot;Header&quot;&gt;
	&lt;div class=&quot;name&quot;&gt;&lt;a href=&quot;&lt;?php bloginfo(&#39;blog_url&#39;)&#59; ?&gt;&quot;&gt;&lt;?php bloginfo(&#39;name&#39;)&#59; ?&gt;&lt;&#47;a&gt;&lt;&#47;div&gt;
	&lt;div class=&quot;description&quot;&gt;&lt;?php bloginfo(&#39;description&#39;)&#59; ?&gt;&lt;&#47;div&gt;
	&lt;&#47;div&gt;&#9;

	&lt;!--right container--&gt;
	&lt;div id=&quot;main&quot; &gt;
</pre>
<div class="title">index.php</div>
<p>This is a bog standard index.php page, the main purpose of the index page is to display your posts. You&#8217;ll notice &lt;?php get_header()&#59; ?&gt; this calls your header.php page and displays it as if it was there all along.</p>
<p>I started some div tags in the header, the content of the div is in the index.php page and the div tag is closed in the footer.php file. This is particularly helpful with the other pages in the template, single.php, page.php etc.</p>
<p>index.php is where &#8216;the loop&#8217; comes in. Its just a fancy way of showing more than one post.</p>
<p>Again you&#8217;ll want to refer to <a href="http://codex.wordpress.org/Template_Tags">The Template Tags</a> for things you can add to your index page, I&#8217;ve included the most common ones, date, category, edit this link and comments.</p>
<pre>
	&lt;?php get_header()&#59; ?&gt;

	&lt;!--this is the loop--&gt;
	&lt;?php if (have_posts()) &#58; while (have_posts()) &#58; the_post()&#59; ?&gt;

	&lt;div class=&quot;postHead&quot;&gt;

	&lt;div class=&quot;title&quot;&gt;
	&lt;h2 id=&quot;post-&lt;?php the_ID()&#59; ?&gt;&quot;&gt;
	&lt;a class=&quot;title&quot; href=&quot;&lt;?php the_permalink() ?&gt;&quot; rel=&quot;bookmark&quot; title=&quot;Permanent Link to &lt;?php the_title(&#39;&#39;)&#59; ?&gt;&quot;&gt;&lt;?php the_title(&#39;&#39;)&#59; ?&gt;&lt;&#47;a&gt;&lt;&#47;h2&gt;
	&lt;&#47;div&gt; &lt;!--end title--&gt;

	&lt;div class=&quot;postinfo&quot;&gt;
	Posted in &lt;em&gt;&lt;?php the_category(&#39;, &#39;) ?&gt;&lt;&#47;em&gt; on &lt;?php the_date()&#59; ?&gt;
	&lt;?php comments_popup_link(__(&#39;Leave a Comment&#39;), __(&#39;1 Comment&#39;), __(&#39;&#37; Comments&#39;))&#59; ?&gt;
	&lt;&#47;div&gt; &lt;!--end postinfo--&gt;

	&lt;&#47;div&gt; &lt;!--end postHead--&gt;

	&lt;!--call to the posts--&gt;
	&lt;div class=&quot;post&quot;&gt;&lt;?php the_content(&#39;click to read more &amp;raquo&#59;&#39;)&#59; ?&gt;&lt;&#47;div&gt;

	&lt;?php comments_template()&#59; &#47;&#47; Get wp-comments.php template ?&gt;

	&lt;?php endwhile&#59; else&#58; ?&gt; &lt;!--ends the loop--&gt;

	&lt;!--this is displayed if you have no posts--&gt;
	&lt;p&gt;&lt;?php _e(&#39;Sorry, no posts matched your criteria.&#39;)&#59; ?&gt;&lt;&#47;p&gt;

	&lt;?php endif&#59; ?&gt; &lt;!--ends the loop--&gt;

	&lt;!--navigation between posts--&gt;
	&lt;div class=&quot;navigation&quot;&gt;
	&lt;?php next_posts_link(&#39;&amp;laquo&#59; Previous Entries&#39;) ?&gt;&lt;?php previous_posts_link(&#39;Next Entries &amp;raquo&#59;&#39;) ?&gt;
	&lt;&#47;div&gt;

	&lt;?php get_footer()&#59; ?&gt;
</pre>
<div class="title">footer.php</div>
<p>In the footer.php file we see another include, this time to sidebar.php. A footer is included for disclaimers etc and the container div is closed.</p>
<pre>
	&lt;&#47;div&gt; &lt;!--end main--&gt;

	&lt;!--call to sidebar--&gt;
	&lt;?php get_sidebar()&#59; ?&gt;

	&lt;div id=&quot;footer&quot;&gt;
	This is an &lt;a href=&quot;http&#58;&#47;&#47;www.eruanna.net&quot;&gt;eruanna.net&lt;&#47;a&gt; tutorial.
	&lt;&#47;div&gt;

	&lt;&#47;div&gt;
	&lt;!--end container--&gt;

	&lt;&#47;body&gt;
	&lt;&#47;html&gt;
</pre>
<div class="title">sidebar.php</div>
<p>This is where you can include lots of exciting <a href="http://codex.wordpress.org/Template_Tags">Template Tags</a>!</p>
<p>Start off your sidebar.php with the following.</p>
<pre>
	&lt;div id=&quot;sidebar&quot;&gt;

	&lt;&#47;div&gt;
</pre>
<p>From here you can add what you do and don&#8217;t need.</p>
<div></div>
<p>Firstly, how about a <a href="http://codex.wordpress.org/Template_Tags/wp_list_pages">list of your pages</a>?</p>
<pre>
	&lt;ul&gt;
	&lt;?php wp_list_pages(&#39;title_li=&#39;)&#59; ?&gt;
	&lt;&#47;ul&gt;
</pre>
<div></div>
<p>Your visitors are going to want to search your site, so include a search form too!</p>
<pre>&lt;?php include (TEMPLATEPATH . &#39;&#47;searchform.php&#39;)&#59; ?&gt;</pre>
<p>You&#8217;ll need to create a new file, searchform.php and place this in it.</p>
<pre>
	&lt;form method=&quot;get&quot; id=&quot;searchform&quot; action=&quot;&lt;?php bloginfo(&#39;home&#39;)&#59; ?&gt;&#47;&quot;&gt;
	&lt;input type=&quot;text&quot; name=&quot;s&quot; class=&quot;search&quot; value=&quot;&quot; &#47;&gt;
	&lt;input type=&quot;submit&quot; id=&quot;searchsubmit&quot; value=&quot;Search&quot; &#47;&gt;
	&lt;&#47;form&gt;
</pre>
<div></div>
<p>A list of <a href="http://codex.wordpress.org/Template_Tags/wp_get_archives">Archives</a> is useful too.</p>
<div></div>
<p>This will display a list of the last 5 months</p>
<pre>
	&lt;ul&gt;
	&lt;?php wp_get_archives(&#39;type=monthly&amp;limit=5&amp;before=&lt;li&gt;&amp;after=&lt;&#47;li&gt;&#39;)&#59; ?&gt;
	&lt;&#47;ul&gt;
</pre>
<div></div>
<p>or a list of your last 5 posts</p>
<pre>
	&lt;ul&gt;
	&lt;?php wp_get_archives(&#39;type=postbypost&amp;limit=5&amp;before=&lt;li&gt;&amp;after=&lt;&#47;li&gt;&#39;)&#59; ?&gt;
	&lt;&#47;ul&gt;
</pre>
<div></div>
<p>You might also want to display a <a href="http://codex.wordpress.org/Template_Tags/wp_list_categories">list of Categories</a></p>
<pre>
	&lt;ul&gt;
	&lt;?php wp_list_categories(&#39;title_li=&#39;)&#59; ?&gt;
	&lt;&#47;ul&gt;
</pre>
<div></div>
<p>and finally, some <a href="http://codex.wordpress.org/Template_Tags/get_links">links</a>.</p>
<pre>
	&lt;ul&gt;
	&lt;?php get_linksbyname(&#39;Categoryname&#39;, &#39;&lt;li&gt;&#39;, &#39;&lt;&#47;li&gt;&#39;, &#39;&#39;, FALSE,
	&#39;name&#39;, FALSE)&#59; ?&gt;
	&lt;&#47;ul&gt;
</pre>
<div></div>
<p>You can also display the <a href="http://codex.wordpress.org/Template_Tags/get_calendar">calendar</a>.</p>
<pre>&lt;?php get_calendar()&#59; ?&gt;</pre>
<p>The sidebar is where most plugin functions will be placed.</p>
<p>This is what my sidebar.php looks like now.</p>
<pre>
	&lt;div id=&quot;sidebar&quot;&gt;

	&lt;h1&gt;Pages&lt;&#47;h1&gt;
	&lt;ul&gt;
	&lt;?php wp_list_pages(&#39;title_li=&#39;)&#59; ?&gt;
	&lt;&#47;ul&gt;

	&lt;h1&gt;Search&lt;&#47;h1&gt;
	&lt;?php include (TEMPLATEPATH . &#39;&#47;searchform.php&#39;)&#59; ?&gt;

	&lt;h1&gt;Latest Posts&lt;&#47;h1&gt;
	&lt;ul&gt;
	&lt;?php wp_get_archives(&#39;type=postbypost&amp;limit=5&amp;before=&lt;li&gt;&amp;after=&lt;&#47;li&gt;&#39;)&#59; ?&gt;
	&lt;&#47;ul&gt;

	&lt;h1&gt;Archives&lt;&#47;h1&gt;
	&lt;ul&gt;
	&lt;?php wp_get_archives(&#39;type=monthly&amp;limit=5&amp;before=&lt;li&gt;&amp;after=&lt;&#47;li&gt;&#39;)&#59; ?&gt;
	&lt;&#47;ul&gt;

	&lt;h1&gt;Categories&lt;&#47;h1&gt;
	&lt;ul&gt;
	&lt;?php wp_list_categories(&#39;title_li=&#39;)&#59; ?&gt;
	&lt;&#47;ul&gt;

	&lt;h1&gt;Links&lt;&#47;h1&gt;
	&lt;ul&gt;
	&lt;?php get_linksbyname(&#39;Sites&#39;, &#39;&lt;li&gt;&#39;, &#39;&lt;&#47;li&gt;&#39;, &#39;&#39;, FALSE,
	&#39;name&#39;, FALSE)&#59; ?&gt;
	&lt;&#47;ul&gt;

	&lt;h1&gt;Calendar&lt;&#47;h1&gt;
	&lt;?php get_calendar()&#59; ?&gt;

	&lt;&#47;div&gt;
</pre>
<p>Thats your main bit done!</p>
<p>Obviously when you view your site it&#8217;ll be a complete and utter mess but we&#8217;ve still got more pages to do before we start styling it!</p>
<div class="title">comments.php</div>
<p>comments.php is one of the hardest files to get to grips with! I&#8217;ve edited this one and commented it as best I can, I wouldn&#8217;t worry hugely about customising it.</p>
<pre>
	&lt;!--If theres comments - display them like this--&gt;
	&lt;?php if ( $comments ) &#58; ?&gt;
	&#9;&lt;div class=&quot;singolocommento&quot;&gt;
	&#9;&#9;&lt;ol class=&quot;commentlist&quot;&gt;
	&#9;&#9;&#9;&lt;?php foreach ($comments as $comment) &#58; ?&gt;
	&#9;&#9;&#9;&#9;&lt;div class=&quot;bubble&quot;&gt;

	&lt;li class=&quot;$oddcomment&quot; id=&quot;comment-&lt;?php comment_ID() ?&gt;&quot;&gt;
	&lt;cite&gt;
	&lt;strong&gt;
	&lt;!--comment author and link to their site--&gt;
	&lt;a class=&quot;author&quot; href=&quot;&lt;?php comment_author_url()&#59; ?&gt;&quot;&gt;&lt;?php comment_author()&#59; ?&gt;&lt;&#47;a&gt;
	&lt;&#47;strong&gt;
	&lt;!--comment info--&gt;
	&lt;?php comment_date() ?&gt;, &lt;?php comment_time() ?&gt; &lt;?php edit_comment_link(&#39;edit&#39;, &#39;&#39;, &#39;&#39;)&#59; ?&gt;
	&lt;br &#47;&gt;
	&lt;&#47;cite&gt;
	&lt;div class=&quot;commentText&quot;&gt;&lt;?php comment_text() ?&gt;&lt;&#47;div&gt;
	&lt;&#47;li&gt;
	&#9;&#9;&#9;&#9;&lt;&#47;div&gt;
	&#9;&#9;&#9;&lt;?php endforeach&#59; ?&gt;
	&#9;&#9;&lt;&#47;ol&gt;
	&#9;&lt;&#47;div&gt; &lt;!--end singleolocommento--&gt;

	&lt;!--this is what happens if theirs no comments--&gt;
	&lt;?php else &#58; &#47;&#47; If there are no comments yet ?&gt;
	&lt;p&gt;&lt;?php _e(&#39;No comments yet.&#39;)&#59; ?&gt;&lt;&#47;p&gt;

	&lt;?php endif&#59; ?&gt;

	&lt;!--start comment form--&gt;
	&lt;div class=&quot;commentEntry&quot;&gt;
	&lt;div class=&quot;title&quot;&gt;&lt;?php comments_number(__(&#39;No Comments&#39;), __(&#39;1 Comment&#39;), __(&#39;&#37; Comments&#39;))&#59; ?&gt;

	&lt;!--this is displayed if comments are allowed--&gt;
	&lt;?php if ( comments_open() ) &#58; ?&gt;
	&#9;&lt;a href=&quot;#postcomment&quot; title=&quot;&lt;?php _e(&quot;Leave a Comment..&quot;)&#59; ?&gt;&quot;&gt;&amp;raquo&#59;&lt;&#47;a&gt;
	&lt;?php endif&#59; ?&gt;

	&lt;&#47;div&gt;&lt;!--end commentEntry--&gt;

	&lt;div class=&quot;postinfo&quot;&gt;
	&lt;br &#47;&gt;
	&lt;?php comments_rss_link(__(&#39;&lt;abbr title=&quot;Really Simple Syndication&quot;&gt;RSS&lt;&#47;abbr&gt; feed for comments on this post.&lt;br &#47;&gt;&#39;))&#59; ?&gt;

	&lt;!--display this if pings are open--&gt;
	&lt;?php if ( pings_open() ) &#58; ?&gt;
	&lt;a href=&quot;&lt;?php trackback_url() ?&gt;&quot; rel=&quot;trackback&quot;&gt;&lt;?php _e(&#39;TrackBack &lt;abbr title=&quot;Uniform Resource Identifier&quot;&gt;URI&lt;&#47;abbr&gt;&#39;)&#59; ?&gt;&lt;&#47;a&gt;
	&lt;?php endif&#59; ?&gt;

	&lt;&#47;div&gt;&lt;!--end postinfo--&gt;

	&lt;?php if ( comments_open() ) &#58; ?&gt;

	&lt;!--if you must be logged in to comment--&gt;
	&lt;?php if ( get_option(&#39;comment_registration&#39;) &amp;&amp; !$user_ID ) &#58; ?&gt;

	&lt;p&gt;You must be &lt;a href=&quot;&lt;?php echo get_option(&#39;siteurl&#39;)&#59; ?&gt;&#47;wp-login.php?redirect_to=&lt;?php the_permalink()&#59; ?&gt;&quot;&gt;logged in&lt;&#47;a&gt; to post a comment.&lt;&#47;p&gt;

	&lt;?php else &#58; ?&gt;

	&lt;!--if anyone can comment--&gt;
	&lt;form action=&quot;&lt;?php echo get_option(&#39;siteurl&#39;)&#59; ?&gt;&#47;wp-comments-post.php&quot; method=&quot;post&quot; id=&quot;commentform&quot;&gt;

	&lt;!--get registered users info--&gt;
	&lt;?php if ( $user_ID ) &#58; ?&gt;

	&lt;p&gt;Logged in as
	&lt;a href=&quot;&lt;?php echo get_option(&#39;siteurl&#39;)&#59; ?&gt;&#47;wp-admin&#47;profile.php&quot;&gt;&lt;?php echo $user_identity&#59; ?&gt;&lt;&#47;a&gt;.
	&lt;a href=&quot;&lt;?php echo get_option(&#39;siteurl&#39;)&#59; ?&gt;&#47;wp-login.php?action=logout&quot; title=&quot;&lt;?php _e(&#39;Log out of this account&#39;) ?&gt;&quot;&gt;Logout ?&lt;&#47;a&gt;&lt;&#47;p&gt;

	&lt;!--If not Registered enter your info here--&gt;
	&lt;?php else &#58; ?&gt;
	&lt;table border=&quot;0&quot; width=&quot;70&#37;&quot; class=&quot;commentTable&quot;&gt;
	&lt;tr&gt;
	&lt;td valign=&quot;top&quot;&gt;
	&lt;input type=&quot;text&quot; name=&quot;author&quot; id=&quot;author&quot; value=&quot;Name&quot; size=&quot;22&quot; tabindex=&quot;1&quot;&#47;&gt;
	&lt;br &#47;&gt;
	&lt;input type=&quot;text&quot; name=&quot;email&quot; id=&quot;email&quot; value=&quot;email&quot; size=&quot;22&quot; tabindex=&quot;2&quot;&#47;&gt;
	&lt;br &#47;&gt;
	&lt;input type=&quot;text&quot; name=&quot;url&quot; id=&quot;url&quot; value=&quot;URL&quot; size=&quot;22&quot; tabindex=&quot;3&quot;&#47;&gt;
	&lt;?php endif&#59; ?&gt;

	&lt;!--comments textarea is shown to everyone--&gt;
	&lt;textarea name=&quot;comment&quot; id=&quot;comment&quot; cols=&quot;70&#37;&quot; rows=&quot;20&quot; tabindex=&quot;4&quot; value=&quot;your comment?&quot;&gt;&lt;&#47;textarea&gt;
	&lt;br &#47;&gt;
	&lt;input name=&quot;submit&quot; type=&quot;submit&quot; id=&quot;submit&quot; tabindex=&quot;5&quot; value=&quot;Submit Comment&quot; &#47;&gt;
	&lt;input type=&quot;hidden&quot; name=&quot;comment_post_ID&quot; value=&quot;&lt;?php echo $id&#59; ?&gt;&quot; &#47;&gt;
	&lt;input type=&quot;hidden&quot; name=&quot;comment_reply_ID&quot; id=&quot;comment_reply_ID&quot; value=&quot;0&quot; &#47;&gt;
	&lt;?php do_action(&#39;comment_form&#39;, $post-&gt;ID)&#59; ?&gt;
	&lt;&#47;form&gt;
	&lt;&#47;td&gt;
	&lt;&#47;tr&gt;
	&lt;&#47;table&gt;
	&lt;p&gt;&lt;small&gt;
	&lt;strong&gt;XHTML&#58;&lt;&#47;strong&gt; You may use these tags&#58; &lt;?php echo allowed_tags()&#59; ?&gt;
	&lt;&#47;small&gt;
	&lt;&#47;p&gt;

	&lt;?php endif&#59; &#47;&#47; If registration required and not logged in ?&gt;

	&lt;!--this is what is displayed when comments are closed--&gt;
	&lt;?php else &#58; &#47;&#47; Comments are closed ?&gt;
	&lt;p&gt;&lt;?php _e(&#39;Sorry, the comment form is closed at this time.&#39;)&#59; ?&gt;&lt;&#47;p&gt;
	&lt;?php endif&#59; ?&gt;

	&lt;&#47;div&gt; &lt;!--end commentEntry--&gt;
</pre>
<div class="title">page.php</div>
<p>pages.php is the template which you want your pages to follow. Read more about pages <a href="http://codex.wordpress.org/Pages">here</a>.<br />
This is a simple page template.</p>
<pre>
	&lt;?php get_header()&#59; ?&gt;

	&lt;!--the loop--&gt;
	&lt;?php if (have_posts()) &#58; ?&gt;
	&lt;?php while (have_posts()) &#58; the_post()&#59; ?&gt;

	&lt;div class=&quot;title&quot;&gt;&lt;?php the_title(&#39;&#39;)&#59; ?&gt;&lt;&#47;div&gt;

	&lt;?php the_content()&#59; ?&gt;

	&lt;?php edit_post_link(&#39;Edit this entry.&#39;, &#39;&#39;, &#39;&#39;)&#59; ?&gt;

	&lt;?php endwhile&#59; ?&gt;

	&lt;?php endif&#59; ?&gt;

	&lt;?php get_footer()&#59; ?&gt;
</pre>
<div></div>
<p>You can also create custom page templates, for specific requirements by adding the following to the top of a new .php file. You can then select the template name from the drop down &#8216;page template&#8217; option on the &#8216;write page&#8217; page. (phew!)</p>
<pre>
	&lt;?php
	&#47;*
	Template Name&#58; Template Name
	*&#47;
	?&gt;
</pre>
<div class="title">Styling</div>
<p>wow, we&#8217;ve made a wordpress theme! Well, almost &#8211; now we need to style it with the <i>style.css</i> file!</p>
<p>We&#8217;ve already created the beginnings of the style.css page, these variables are needed in order for you to be able to select the working theme in wp admin.</p>
<p>Use this <a href="http://www.w3schools.com/css/css_reference.asp">CSS reference</a> for help.</p>
<div></div>
<p>We&#8217;ll start by positioning all the elements. I showed in my diagram earlier.</p>
<pre>
	/*positioning*/

	#container {
	-moz-border-radius: 20px 20px 20px 20px;
	width: 80%;
	margin-left:auto;
	margin-right:auto;
	position: relative;
	background-color: #212121;
	padding: 10px;
	}

	#Header {
	-moz-border-radius: 20px 20px 20px 20px;
	background-image: url(headerurl) !important;
	background-repeat: no-repeat;
	background-position: bottom left;
	background-color: #212121;
	width: 100%;
	height: 160px;
	text-align: center;
	}

	#main {
	float: right;
	display:inline;
	position: relative;
	width: 70%;
	}

	#sidebar {
	float: left;
	display:inline;
	position: relative;
	width: 30%;
	}

	#footer
	{
	clear:both;
	text-align: center;
	width: 100%;
	}
</pre>
<p>I&#8217;ve included some snazzy CSS3 for rounded corners in this <a href="http://www.css3.info/preview/rounded-border.html">Read more here</a></p>
<p>Once I&#8217;ve positioned everything its time to work on the class divs.</p>
<div></div>
<p>The final stylesheet for this particular theme will look something like this.</p>
<pre>
	/*
	Theme Name: eruanna.net
	Theme URI: http://www.eruanna.net
	Description: eruanna.net theme tutorial
	Author: Hannah
	Author URI: http://www.eruanna.net
	*/

	/*positioning*/

	html, body
	{
	background-color: #282828;
	margin-top: 10px;
	margin-bottom: 10px;
	font-family: tahoma, verdana, sans-serif;
	font-size: 12px;
	color: #555;
	line-height: 18pt;
	}

	/*positioning*/

	#container {
	-moz-border-radius: 20px 20px 20px 20px;
	width: 80%;
	margin-left:auto;
	margin-right:auto;
	position: relative;
	background-color: #212121;
	padding: 10px;
	}

	#Header {
	-moz-border-radius: 20px 20px 20px 20px;
	background-image: url(http://localhost:8888/wordpress/wp-content/themes/55/header.gif) !important;
	background-repeat: no-repeat;
	background-position: bottom left;
	background-color: #212121;
	width: 100%;
	height: 160px;
	text-align: center;
	}

	#Header .name {
	color: #cefa48;
	font-family: "century gothic", sans-serif;
	font-size: 30px;
	font-weight: lighter;
	letter-spacing: 20px;
	padding-top: 80px;
	}

	#Header .name a {
	color: #cefa48;
	}

	#Header .description {
	color: #ccc;
	text-transform: uppercase;
	font-size: 10px;
	font-weight: lighter;
	}

	#main {
	float: right;
	display:inline;
	position: relative;
	width: 70%;
	}

	#sidebar {
	float: left;
	display:inline;
	position: relative;
	width: 30%;
	}

	#footer
	{
	clear:both;
	text-align: center;
	width: 100%;
	}

	/*posts*/
	.postHead {
	-moz-border-radius: 10px 10px 10px 10px;
	background-color: #282828;
	padding-left: 10px;
	}

	h2 a.title, h2 .title, .title, .wrap h2, .catlink, #newlink h2
	{
	padding-left: 0px;
	font-family: "century gothic", arial, georgia, sans-serif;
	font-size: 20px;
	color: #cefa48;
	text-align: left;
	font-weight: lighter;
	}

	.postinfo
	{
	font-size: 11px;
	font-family: "arial", "century gothic", sans-serif;
	font-weight: lighter;
	text-align: left;
	padding-left: 0px;
	color: #ccc;
	text-transform: lowercase;
	margin-top: -15px;
	}

	/*navigationlinks*/
	.navigation a {
	text-align: center;
	padding: 30px;
	margin-bottom: 15px;
	font-family: arial, sans-serif;
	font-size: 20px;
	}

	.navigation a:link {
	color: #cefa48;
	}

	.navigation a:hover{
	color: #111;
	}

	/*Sidebar*/

	#sidebar h1 {
	padding-left: 0px;
	font-family: "century gothic", arial, georgia, sans-serif;
	font-size: 14px;
	color: #cefa48;
	text-align: left;
	font-weight: lighter;
	}

	#sidebar ul {
	list-style: none;
	margin-left: -20px;
	}

	/*Comments*/

	#commentlist li , .singolocommento li {
	list-style-type: none;
	padding: 0px;
	width: 470px;
	}

	div.bubble {
	width: auto;
	margin-bottom: 24px;
	border: 0px solid #ccc;
	}

	div.bubble cite {
	position: relative;
	margin: 0px;
	padding: 7px 0px 0px 0px;
	top: 6px;
	background: transparent url(tip.gif) no-repeat 20px 0;
	font-style: normal;
	}

	a.author, a.author:active, a.author:visited {
	text-decoration: none;
	font-family: arial, "century gothic", georgia, "times new roman", sans-serif;
	font-size: 17px;
	font-weight: lighter;
	text-transform: uppercase;
	letter-spacing: -1px;
	color: #ec008c;
	}

	/* extras */

	a, a:visited, a:link, a:active { color: #ec008c; text-decoration: none; background-color: inherit;}
	a:hover{ color: #282828; text-decoration: none;}
	b, strong, em, i{ color: #4fd0ad; background-color: inherit;}
	u{ text-decoration: none; color: #d4eb89;border-bottom: 1px solid #d4eb89; background-color: inherit;}

	img {border:0px;}

	.search, #searchsubmit {
	width: 75px;
	}

	input, textarea, select {
	background-color: #282828;
	color: #ccc;
	font-size: 11px;
	font-family: "lucida grande", sans-serif;
	border: 0px;
	}
</pre>
<div></div>
<p>The final product!</p>
<div class="postimg"><a href="http://www.flickr.com/photos/25677180@N02/2416074611/" title="picture-2 by eruannax, on Flickr"><img src="http://farm3.static.flickr.com/2147/2416074611_a6a95fd9a6_o.jpg" width="500" height="320" alt="picture-2" /></a></div>
<p>You can download it <a href="http://www.eruanna.net/wordpressthemes/#eruannatutorial">here</a>. View the <a href="http://www.eruanna.net/themes/index.php?wptheme=eruannatutorial">Demo</a>.</p>
<p>If there&#8217;s anything else you want to know please comment, If I&#8217;ve missed anything do tell me!</p>
<p>[tags]wordpress, theme, tutorial[/tags]</p>
]]></content:encoded>
			<wfw:commentRss>http://www.eruanna.net/how-to-write-your-own-wordpress-theme/feed/</wfw:commentRss>
		<slash:comments>88</slash:comments>
		</item>
		<item>
		<title>One of Those posts &#8211; 17 wordpress plugins</title>
		<link>http://www.eruanna.net/one-of-those-posts-17-wordpress-plugins/</link>
		<comments>http://www.eruanna.net/one-of-those-posts-17-wordpress-plugins/#comments</comments>
		<pubDate>Thu, 16 Aug 2007 06:00:30 +0000</pubDate>
		<dc:creator>Nnax</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://www.eruanna.net/x/?p=123</guid>
		<description><![CDATA[ahh, the wordpress plugins post, another way of saying &#8216;I dont know what to blog about&#8217; or in my case, &#8216;I have something to blog its just not ready yet&#8217; It&#8217;ll be exciting though! (at least thats the plan!) Sorry about the downtime yesterday &#8211; especially to all my hostees! May, Kai, Guy and Taylor. [...]]]></description>
			<content:encoded><![CDATA[<p>ahh, the wordpress plugins post, another way of saying &#8216;I dont know what to blog about&#8217; or in my case, &#8216;I have something to blog its just not ready yet&#8217; It&#8217;ll be exciting though! (at least thats the plan!)</p>
<p>Sorry about the downtime yesterday &#8211; especially to all my hostees! <a href="http://www.mayplanet.net">May</a>, <a href="http://www.twistedphate.com">Kai</a>, <a href="http://www.mcgechan.co.uk">Guy</a> and <a href="http://schnapp.eruanna.net">Taylor</a>. The server was being DOS&#8217;d apparently so they had to move us to a new IP. I guess thats the risk with shared hosting, if one person pisses off a hacker we&#8217;re all screwed! Now do you see why I don&#8217;t rely on my own server! I spent all of yesterday moving my files to my box.net account!</p>
<p>Without further ado, These are in no particular order.</p>
<p>1. <a href="http://www.stuff.yellowswordfish.com/admin-drop-down-menus/">Advanced Admin Menus</a><br />
I worship this plugin! It converts all the sub links in your wordpress admin, under dashboard, write, manage etc into drop downlinks so you don&#8217;t have to click, presentations, wait for the page to load and then click theme editor. You just hover and select theme editor! Simple but SO effective.</p>
<p>2. <a href="http://www.ceprix.net/archives/spotmilk-admin-theme-for-wordpress/">Spotmilk</a><br />
Beautiful with the above plugin &#8211; it makes the wordpress admin pretty, theres a blue theme and a black theme. (to get the black you uncomment a line of code &#8211; its easy enough to do)</p>
<p>3. <a href="http://sw-guide.de/wordpress/plugins/category-tagging/">Category Tagging</a><br />
Creates a tag cloud with all your categories.</p>
<p>4. <a href="http://www.justinshattuck.com/comment-relish/">Comment Relish</a><br />
Sends an email to a user on their first comment.</p>
<p>5. <a href="http://www.maxpower.ca/wordpress-plugins/">Digital Finger Print</a><br />
Lets you find the people who steal your rss feed and display it on their site. You make up a random string of words and set up a custom google search to find them, if your reading my feed you&#8217;ll see some random words at the top of it, thats my digital finger print, Its actually a pretty good idea!</p>
<p>6. <a href="http://txfx.net/code/wordpress/enforce-www-preference/">Enforce www. Preference</a><br />
Does what its name implies, if someone goes to eruanna.net the url is changed to www.eruanna.net, I wanted some consistancy.</p>
<p>7. <a href="http://www.feedburner.com/fb/a/help/wordpress_quickstart">FeedSmith</a><br />
Directs people to your feedburner feed not your wordpress /~rss one. So you can concentrate all your readers in one!</p>
<p>8. <a href="http://eightface.com/wordpress/flickrrss/">FlickrRSS</a><br />
Everyone knows about this plugin, it shows your recent flickr photos on your website.</p>
<p>9. <a href="http://cavemonkey50.com/code/full-feed/">Full Text Feed</a><br />
In wordpress 2.1 it automatically places a read more link after the first few lines in your feed, this gets rid of that nasty habit.</p>
<p>10. <a href="http://www.smackfoo.com/plugins/sig2feed/">Sig2Feed</a><br />
Allows you to add your signature to the bottom of your feed, or anything you want for that matter, images, links and text.</p>
<p>11. <a href="http://wordpress.org/extend/plugins/sideblog/">Sideblog</a><br />
I&#8217;ve had a few people email me about this one so here it is. It shows a list of &#8216;mini updates&#8217; in the sidebar instead of getting random @soandso comments from twitter! Its all managed from the wordpress admin.</p>
<p>12. <a href="http://www.broobles.com/scripts/simpletags/">Simple Tags</a><br />
Adds technorati tags to the ends of your posts, if you remember to add them though!</p>
<p>13. <a href="http://coderseye.com/2006/related-posts-plugin-modifications.html">Related Entries</a><br />
Shows a list of entried related to the one your viewing.</p>
<p>14. <a href="http://alexking.org/projects/wordpress">WordPress Mobile Edition</a><br />
I used to use this and I only just rediscovered it, it makes your site viewable on PDA&#8217;s and Smart Phones, it works, I&#8217;ve tested it!</p>
<p>15. <a href="http://alexking.org/projects/wordpress">WP-Grins</a><br />
Lets you have clickable smilies in both the wordpress admin panel and the comments form. Especially useful if you&#8217;ve used my tutorial on <a href="http://www.eruanna.net/content/wordpress/changing-the-default-wordpress-smilies/">Changing the Default WordPress Smilies</a>.</p>
<p>16. <a href="http://www.ilfilosofo.com/blog/wp-db-backup">WP Database Backup</a><br />
Great for the paranoid like me! Emails a back up of your SQL database to you.</p>
<p>17. <a href="http://mnm.uib.es/gallir/wp-cache-2/">WP-Cache</a><br />
Caches your site &#8211; particularly useful if your being dugg &#8211; apparently its helped but I&#8217;ve never been dugg so I wouldn&#8217;t know!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.eruanna.net/one-of-those-posts-17-wordpress-plugins/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Twitter, RSS and WordPress</title>
		<link>http://www.eruanna.net/twitter-rss-and-wordpress/</link>
		<comments>http://www.eruanna.net/twitter-rss-and-wordpress/#comments</comments>
		<pubDate>Fri, 23 Mar 2007 16:31:08 +0000</pubDate>
		<dc:creator>Nnax</dc:creator>
				<category><![CDATA[Blogging]]></category>
		<category><![CDATA[Tutorials]]></category>

		<guid isPermaLink="false">http://www.eruanna.net/x/?p=11</guid>
		<description><![CDATA[This is an old old old old old post &#8211; Alex King&#8217;s Twitter Tools does this entire post far more effectively than this little post does! I&#8217;ll start this off with a bit of an explanation of what RSS is. It stands for Really Simple Syndication and its the best thing since sliced bread. If [...]]]></description>
			<content:encoded><![CDATA[<p><b>This is an old old old old old post &#8211; Alex King&#8217;s <a href="http://alexking.org/projects/wordpress">Twitter Tools</a> does this entire post far more effectively than this little post does!</b></p>
<p>I&#8217;ll start this off with a bit of an explanation of what RSS is. It stands for Really Simple Syndication and its the best thing since sliced bread. If your not using it your actually driving away readers. Put it this way. How many sites do you visit on a daily basis? You want to read all of your friends entries, but your not going to go to each and every page all the time are you!? Not if you&#8217;ve got as many feeds as I do! With RSS you go to one page, <a href="http://www.bloglines.com">bloglines</a> or if you already have a gmail account (and who doesn&#8217;t!) you can go to <a href="http://google.com/reader">google.com/reader</a> and start adding feeds. To get you started my feed URL is <i>http://feeds.feedburner.com/Eruanna</i> (I use feed burner so I can manage my statistics.) The main advantage is that if you read those tween sites that use an awfully small font then you can actually read the posts in the feed reader.</p>
<p>If your using a hosted blog service like blogger, wordpress.com etc then you already have an RSS feed. There should be a link to it on your site, if your using wordpress then your feed is yoururl.com<i>/feed</i></p>
<p>So firstly, if you&#8217;re not using <a href="http://twitter.com/xhan">twitter</a> then your missing out on something theoretically pointless but really really addictive. So if you&#8217;ll look at my sidebar &lt;&#8211; which I have my twitter feeding into.</p>
<p>Heres<strong> how I imported my twitter into my sidebar</strong>. (Alex Kings just released a flickr plugin<br />
Download and install the <a href="http://rawlinson.us/blog/?p=212">FeedList Plugin</a>. I tried to write my own but I gave up! Then activate it and in your sidebar.php page write the following:</p>
<blockquote><p>
&lt;ul class=&quot;twitterFeed&quot;&gt;<br />
&lt;?php feedList(array(&quot;rss_feed_url&quot;=&gt;&quot;RSSURLHERE&quot;, &quot;num_items&quot;=&gt;5, &quot;show_description&quot;=&gt;false,&quot;before&quot;=&gt;&quot;&lt;li&gt;&quot;, &quot;after&quot;=&gt;&quot;&lt;&#47;li&gt;&quot;, &quot;random&quot;=&gt;false,&quot;sort&quot;=&gt;&quot;none&quot;,&quot;suppress_link&quot;=&gt;true,&quot;show_date&quot;=&gt;true))&#59;?&gt;<br />
&lt;&#47;ul&gt;
</p></blockquote>
<p>Add your RSS url into the specified space. and tada you&#8217;ve imported your twitter feed to your wordpress blog. There are many variables you can change but these are the ones I used.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.eruanna.net/twitter-rss-and-wordpress/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: enhanced
Database Caching 16/28 queries in 0.017 seconds using disk: basic

Served from: www.eruanna.net @ 2012-02-08 08:12:19 -->
