<?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>Chris Norton &#187; site</title>
	<atom:link href="http://www.chnorton.com.au/tag/site/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.chnorton.com.au</link>
	<description>A blog about software engineering, web development, education and my otaku interests.</description>
	<lastBuildDate>Tue, 07 Dec 2010 11:45:28 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.4</generator>
		<item>
		<title>WordPress 2.5</title>
		<link>http://www.chnorton.com.au/2008/03/31/wordpress-25/</link>
		<comments>http://www.chnorton.com.au/2008/03/31/wordpress-25/#comments</comments>
		<pubDate>Sun, 30 Mar 2008 23:14:56 +0000</pubDate>
		<dc:creator>Chris Norton</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[site]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.chnorton.com.au/?p=220</guid>
		<description><![CDATA[I have just finished upgrading the site to use the latest version of WordPress. Overall it was a pretty fast and painless upgrade. The new version most obviously (to me) brings a redesigned admin area and some extra convenience was managing a blog. A good upgrade and well worth the 5 minutes it took to [...]]]></description>
			<content:encoded><![CDATA[<p>I have just finished upgrading the site to use the latest version of WordPress. Overall it was a pretty fast and painless upgrade. The new version most obviously (to me) brings a redesigned admin area and some extra convenience was managing a blog. A good upgrade and well worth the 5 minutes it took to install!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chnorton.com.au/2008/03/31/wordpress-25/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Fun with PHP</title>
		<link>http://www.chnorton.com.au/2007/12/02/fun-with-php/</link>
		<comments>http://www.chnorton.com.au/2007/12/02/fun-with-php/#comments</comments>
		<pubDate>Sun, 02 Dec 2007 07:32:15 +0000</pubDate>
		<dc:creator>Chris Norton</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[site]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.chnorton.com.au/2007/12/02/fun-with-php/</guid>
		<description><![CDATA[Well, I finally got off my arse and fixed the admin area for my blog. For the last couple weeks I haven&#8217;t been able to access it because of some interesting errors telling me that Allowed memory size of 8388608 bytes exhausted (tried to allocate 19456 bytes) &#8230; which I thought was odd seeing as [...]]]></description>
			<content:encoded><![CDATA[<p>Well, I finally got off my arse and fixed the admin area for my blog. For the last couple weeks I haven&#8217;t been able to access it because of some interesting errors telling me that <code>Allowed memory size of 8388608 bytes exhausted (tried to allocate 19456 bytes)</code> &#8230; which I thought was odd seeing as I hadn&#8217;t changed anything recently and the fact that it failed to allocate 0.2% of the total available and complained of running out of memory. It turned out that my web host had (finally) upgraded to PHP 5.2 which doesn&#8217;t actually explain the errors but it makes me feel better than things randomly stopping working.</p>
<p>So I upped the memory limit for PHP to 16Mb and all is now well. I hope.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chnorton.com.au/2007/12/02/fun-with-php/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Simple Tags</title>
		<link>http://www.chnorton.com.au/2007/10/09/simple-tags/</link>
		<comments>http://www.chnorton.com.au/2007/10/09/simple-tags/#comments</comments>
		<pubDate>Tue, 09 Oct 2007 13:18:33 +0000</pubDate>
		<dc:creator>Chris Norton</dc:creator>
				<category><![CDATA[Reviews]]></category>
		<category><![CDATA[site]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.chnorton.com.au/2007/10/09/simple-tags/</guid>
		<description><![CDATA[I&#8217;ve been running version 2.3 of WordPress for a couple weeks now and I&#8217;m getting more accustomed to using tags with my posts. One thing that struck me about the default handling of tags is that, while free form, it&#8217;s a bit unwieldy for long term use. For example, you have to remember what you [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been running version 2.3 of WordPress for a couple weeks now and I&#8217;m getting more accustomed to using tags with my posts. One thing that struck me about the default handling of tags is that, while free form, it&#8217;s a bit unwieldy for long term use. For example, you have to remember what you named various tags (&#8220;did I use web or internet?&#8221;). The <a href="http://www.herewithme.fr/wordpress-plugins/simple-tags">Simple Tags</a> plugin gets rid of most of the problems associated with tagging and makes it an absolute joy to use &#8211; I&#8217;ve been using for editing my posts for a few days now and I love it.</p>
<p><span id="more-162"></span>Installation of the plugin is as simple as you can get: upload to your WordPress plugins directory and then activate from the admin area. Done! Configuration is pretty simple as well and you&#8217;ll probably find you don&#8217;t need to adjust anything from the defaults.</p>
<p>Actually using the plugin is, of course, simple as well. When you type into the <i>Tags</i> field below the post editor an auto-suggest box will be brought up with tags that you&#8217;ve already added to previous posts, which lets you quickly and easily make sure you&#8217;re using the same tags across different posts. If you save the post and then edit it you are also presented with a list of suggested tags that you can just click on to add to the list of tags. These things fit in with the existing system very well and don&#8217;t get in your way.</p>
<p>Simple Tags also provides some other handy features, such as managing the tags for you blog and allowing mass editing of the tags for your posts. Mass editing is excellent when converting to a tagged blog as you can change the tags for numerous posts all on one page, complete with the auto-suggest feature found in the post editor.</p>
<p>If you are using the tagging feature of WordPress 2.3 I highly recommend using this plugin &#8211; it will make your life a whole lot easier.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chnorton.com.au/2007/10/09/simple-tags/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Site Upgrade: WordPress 2.3</title>
		<link>http://www.chnorton.com.au/2007/09/25/site-upgrade-wordpress-23/</link>
		<comments>http://www.chnorton.com.au/2007/09/25/site-upgrade-wordpress-23/#comments</comments>
		<pubDate>Tue, 25 Sep 2007 12:12:44 +0000</pubDate>
		<dc:creator>Chris Norton</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[site]]></category>
		<category><![CDATA[site theme]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.chnorton.com.au/2007/09/25/site-upgrade-wordpress-23/</guid>
		<description><![CDATA[I have just finished upgrading this blog to WordPress 2.3. As of now I have only completed the actual migration &#8211; I have yet to start taking advantage of any of the new features of version 2.3 (such as tags) so expect those to be slowly rolled out this week. I have also started work [...]]]></description>
			<content:encoded><![CDATA[<p>I have just finished upgrading this blog to WordPress 2.3. As of now I have only completed the actual migration &#8211; I have yet to start taking advantage of any of the new features of version 2.3 (such as tags) so expect those to be slowly rolled out this week.</p>
<p>I have also started work on a completely revised theme for the site which I hope to get finished in the next week or so. I&#8217;m using <a href="http://themasterplan.in/themes/the-morning-after/" rel="external">The Morning After</a> as a base and making some pretty heavy customisations as well as a bunch of cosmetic changes. The interesting thing is that many aspects of the theme are a step backwards for me in some ways, such as the CSS being far more complex than it needs to be and the semantics of the markup being all out of wack. Still, it&#8217;s a good base visually and structurally.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chnorton.com.au/2007/09/25/site-upgrade-wordpress-23/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Site Mod: Search Text with jQuery</title>
		<link>http://www.chnorton.com.au/2007/09/05/site-mod-search-text-with-jquery/</link>
		<comments>http://www.chnorton.com.au/2007/09/05/site-mod-search-text-with-jquery/#comments</comments>
		<pubDate>Wed, 05 Sep 2007 12:15:02 +0000</pubDate>
		<dc:creator>Chris Norton</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[site]]></category>

		<guid isPermaLink="false">http://www.chnorton.com.au/2007/09/05/site-mod-search-text-with-jquery/</guid>
		<description><![CDATA[I added a very simple mod today that you might have noticed - there is now some text added dynamically to the search box that should give a better indication as to what that area is for. ]]></description>
			<content:encoded><![CDATA[<p>I added a very simple mod today that you might have noticed &#8211; there is now some text added dynamically to the search box that should give a better indication as to what that area is for. </p>
<p><span id="more-96"></span>I used jQuery for this, just to further increase my exposure to the library, and I must say that it was extremely easy. I love the way you can simply attach functions to events with jQuery: you can see that when the search box has focus the &#8220;Search&#8230;&#8221; phrase disappears, allowing you to type straight away without having to worry about it.</p>
<p>After including the jQuery library, the code needed for this is:<br />
<code></p>
<pre>
$(document).ready(function() {
	$("#searchbox").val("Search...");
	search_flag = false;
	$("#searchbox").focus(function() {
		if(search_flag != true) {
			$("#searchbox").val("");
			search_flag = true;
		}
	});
});
</pre>
<p></code></p>
<p>Originally, I had attached the function to the click event, rather than the focus event. I realised that this was probably bad practice (since it doesn&#8217;t account for keyboard events) so I corrected it. I&#8217;m looking into ways to make the code even more compact too, perhaps by removing the need for <code>search_flag</code> if such a thing is possible.</p>
<p>If you&#8217;re planning on trying out jQuery then I highly recommend bookmarking <a href="http://visualjquery.com/" rel="external">Visual jQuery</a>. That site is an invaluable reference during development. I wouldn&#8217;t have found the focus event otherwise!</p>
<p>Just from this I&#8217;m looking forward to seeing what else I can do with JavaScript and jQuery. <img src='http://www.chnorton.com.au/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.chnorton.com.au/2007/09/05/site-mod-search-text-with-jquery/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Site Mod: Friendly Search URLs</title>
		<link>http://www.chnorton.com.au/2007/09/03/site-mod-friendly-search-urls/</link>
		<comments>http://www.chnorton.com.au/2007/09/03/site-mod-friendly-search-urls/#comments</comments>
		<pubDate>Mon, 03 Sep 2007 13:45:45 +0000</pubDate>
		<dc:creator>Chris Norton</dc:creator>
				<category><![CDATA[site]]></category>

		<guid isPermaLink="false">http://www.chnorton.com.au/2007/09/03/site-mod-friendly-search-urls/</guid>
		<description><![CDATA[The first steps I've taken to allowing my site to use friendly search URLs.]]></description>
			<content:encoded><![CDATA[<p>I have added in a modified version of <a href="http://alexking.org/blog/2007/08/30/friendly-search-urls" rel="external nofollow">Alex King&#8217;s Friendly Search URLs</a>. What this basically does is add a rewrite rule and some JavaScript that changes <a href="http://www.chnorton.com.au/?s=friendly%20search">http://www.chnorton.com.au/?s=friendly%20search</a> into <a href="http://www.chnorton.com.au/search/friendly+search">http://www.chnorton.com.au/search/friendly+search</a>, which I think everyone can agree is much nicer (but both will work). It&#8217;s also easy enough to remember that you can type it into the address bar of a browser directly.</p>
<p><span id="more-93"></span>I have been wanting to try out some JavaScript programming for a while and I&#8217;m especially keen to get into <a href="http://jquery.com/" rel="external nofollow">jQuery</a> so I decided to rewrite the JavaScript code to use that. Using jQuery is actually quite cool; doing operations on the DOM is simplicity itself. I transformed the original code into the following:</p>
<p><i>(Line wrap marked with &raquo;)</i><br />
<code></p>
<pre>
$(document).ready(function() {
	$("#searchform").submit(function() {
		location.href='http://www.chnorton.com.au/search/' + &raquo;
			$("#searchbox").val().replace(/\ /g, '+');
		return false;
	});
});
</pre>
<p></code></p>
<p>Even though it&#8217;s a little longer, it attaches to the onsubmit handler via DOM manipulation, rather than messing up the HTML, which makes it a bit easier to use and keeps a cleaner separation between the markup and the JavaScript. Good coding practice and all that (although apparently it also executes slightly slower).</p>
<p>As an introduction to jQuery I can say that I&#8217;m impressed by how quickly I could create some DOM manipulation code, especially considering that I haven&#8217;t really done much work with JavaScript before. I have some things in mind for further modifications to the site so look out for those in the near future.</p>
<p>Of course, the only problem with all this is that it relies on JavaScript to work so I have been looking into some alternatives that run on the server side. Hopefully I&#8217;ll be adding one of these in soon too.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chnorton.com.au/2007/09/03/site-mod-friendly-search-urls/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Site Mod: Separating Trackbacks and Pingbacks</title>
		<link>http://www.chnorton.com.au/2007/08/26/site-mod-separating-trackbacks-and-pingbacks/</link>
		<comments>http://www.chnorton.com.au/2007/08/26/site-mod-separating-trackbacks-and-pingbacks/#comments</comments>
		<pubDate>Sun, 26 Aug 2007 06:35:34 +0000</pubDate>
		<dc:creator>Chris Norton</dc:creator>
				<category><![CDATA[site]]></category>

		<guid isPermaLink="false">http://www.chnorton.com.au/2007/08/26/site-mod-separating-trackbacks-and-pingbacks/</guid>
		<description><![CDATA[I have finished updating the comments template to separate out the trackbacks and pingbacks from the regular comments made by visitors. This will mean that visitor comments and discussions don&#8217;t get interrupted by machine-generated comments. I made these changes based on the code from Noscope&#8217;s modifications. The alterations I made to this were minor: mostly [...]]]></description>
			<content:encoded><![CDATA[<p>I have finished updating the comments template to separate out the trackbacks and pingbacks from the regular comments made by visitors. This will mean that visitor comments and discussions don&#8217;t get interrupted by machine-generated comments.</p>
<p>I made these changes based on the code from <a href="http://www.noscope.com/journal/2005/01/wp-separating-trackbacks-pingbacks" rel="external nofollow">Noscope&#8217;s modifications</a>. The alterations I made to this were minor: mostly to clean up the code to my own coding style and to adapt it for my theme, rather than the default.</p>
<p>This mod is a pretty good idea and I&#8217;d recommend it to anyone running their own blog.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chnorton.com.au/2007/08/26/site-mod-separating-trackbacks-and-pingbacks/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Site Mod: Login Page</title>
		<link>http://www.chnorton.com.au/2007/08/12/site-mod-login-page/</link>
		<comments>http://www.chnorton.com.au/2007/08/12/site-mod-login-page/#comments</comments>
		<pubDate>Sun, 12 Aug 2007 13:14:55 +0000</pubDate>
		<dc:creator>Chris Norton</dc:creator>
				<category><![CDATA[site]]></category>

		<guid isPermaLink="false">http://www.chnorton.com.au/2007/08/12/site-mod-login-page/</guid>
		<description><![CDATA[The login page has been changed to better reflect the theme for the site, rather than using the default WordPress one. I found a nice plugin that takes care of the changes in a way that doesn&#8217;t require re-editing files after a system upgrade. You can find the plugin at the Binary Moon blog.]]></description>
			<content:encoded><![CDATA[<p>The login page has been changed to better reflect the theme for the site, rather than using the default WordPress one. I found a nice plugin that takes care of the changes in a way that doesn&#8217;t require re-editing files after a system upgrade. You can find the plugin <a href="http://www.binarymoon.co.uk/2007/07/wordpress-tips-and-tricks-custom-login-page/" rel="external">at the Binary Moon blog</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chnorton.com.au/2007/08/12/site-mod-login-page/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Site Mods: Altering the &#8220;more&#8221; functionality.</title>
		<link>http://www.chnorton.com.au/2007/08/08/site-mods-altering-the-more-functionality/</link>
		<comments>http://www.chnorton.com.au/2007/08/08/site-mods-altering-the-more-functionality/#comments</comments>
		<pubDate>Tue, 07 Aug 2007 16:33:46 +0000</pubDate>
		<dc:creator>Chris Norton</dc:creator>
				<category><![CDATA[site]]></category>

		<guid isPermaLink="false">http://www.chnorton.com.au/2007/08/08/site-mods-altering-the-more-functionality/</guid>
		<description><![CDATA[After writing down some of the things I wanted to achieve for the future of this blog (for my 50th post) I decided I should probably make a start on them! I&#8217;d already modified WordPress to make the &#8220;more&#8221; link (the link on the front page that says &#8220;Read more of this entry&#8221;) link to [...]]]></description>
			<content:encoded><![CDATA[<p>After writing down some of the things I wanted to achieve for the future of this blog (for my 50th post) I decided I should probably make a start on them! I&#8217;d already modified WordPress to make the &#8220;more&#8221; link (the link on the front page that says &#8220;Read more of this entry&#8221;) link to the simple page URL and not to an anchor that occurs after the opening paragraph. For my next mod I thought I should continue in this vein and alter the RSS (and Atom) feeds to include the full post text, rather than an excerpt. This turned out to be ridiculously easy!</p>
<p><span id="more-72"></span>Here are the mods I did:</p>
<h2>More link</h2>
<p>On line 102 of <span class="filename">wp-includes/post-template.php</span>, change:</p>
<p><code>$output .= ' &lt;a href="'. get_permalink() . "#more-$id\" class=\"more-link\">$more_link_text&lt;/a>";</code></p>
<p>To:</p>
<p><code>$output .= ' &lt;a href="'. get_permalink() . "\" class=\"more-link\">$more_link_text&lt;/a>";</code></p>
<p>This is all that&#8217;s technically necessary but if you want to clean up the code a little bit (to remove a now unnecessary &lt;span> tag) then do the following. On line 98 of the same file, change:</p>
<p><code>$output .= '&lt;span id="more-'.$id.'">&lt;/span>'.$content[1];</code></p>
<p>To:</p>
<p><code>$output .= $content[1];</code></p>
<h2>Feeds</h2>
<p>Feeds took me a little longer to work out because I had to figure out what was going on in the content output functions before I realised what I had to change. Luckily, I&#8217;m about to tell you what to do so you don&#8217;t need to go crawling through code like I did. <img src='http://www.chnorton.com.au/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>At line 3 of <span class="filename">wp-includes/feed-rss2.php</span>, insert the line:</p>
<p><code>global $more;</code></p>
<p>So the top of the file should look like this:</p>
<p><code>&lt;?php<br />
header('Content-type: text/xml; charset=' . get_option('blog_charset'), true);<br />
global $more;<br />
$more = 1;</p>
<p>?></code></p>
<p>And that&#8217;s all there is to it. Basically, the content output already checks to see if the global variable <code>$more</code> has been set, and if it has then the entire post is output, rather than just the excerpt. As you can see, <span class="filename">feed-rss2.php</span> already has the variable set, it just hasb&#8217;t declared it as a global variable so it won&#8217;t get used in the output functions.</p>
<p>The same thing can be done to the <span class="filename">wp-includes/feed-atom.php</span> and <span class="filename">wp-includes/feed-rdf.php</span> files, although I&#8217;m not sure how well it would work for RDF as I don&#8217;t use it.</p>
<p>Well, hope that was useful to you guys!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chnorton.com.au/2007/08/08/site-mods-altering-the-more-functionality/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Site Update: WordPress 2.2.2</title>
		<link>http://www.chnorton.com.au/2007/08/06/site-update-wordpress-222/</link>
		<comments>http://www.chnorton.com.au/2007/08/06/site-update-wordpress-222/#comments</comments>
		<pubDate>Mon, 06 Aug 2007 11:55:21 +0000</pubDate>
		<dc:creator>Chris Norton</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[site]]></category>

		<guid isPermaLink="false">http://www.chnorton.com.au/2007/08/06/site-update-wordpress-222/</guid>
		<description><![CDATA[I updated the site to the brand new version of Wordpress. Version control was again a huge asset.]]></description>
			<content:encoded><![CDATA[<p>Another update after only 11 days. This one is again a point release, to version 2.2.2. Ah well, updates fix bugs (however minor) and are quick and painless. I just had to make sure that the custom changes I&#8217;ve made to the core WordPress files were added back in after the update. This is really easy using Subversion&#8217;s <code>diff</code> function and then applying that as a patch to the updated file. Ah, the wonders of version control.</p>
<p>I actually came up with a nice way to list all the files that were changed by the update:<br />
<code>svn stat | grep -v '?' | awk '{ print $2 }' | sort</code></p>
<p>For next time I should come up with a way to just FTP these files across automatically. Shouldn&#8217;t be that hard; if I find a way I&#8217;ll post it here.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.chnorton.com.au/2007/08/06/site-update-wordpress-222/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

