<?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>Oxygen Kiosk. Website Design.</title>
	<atom:link href="http://oxygenkiosk.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://oxygenkiosk.com</link>
	<description>Websites, development and evangelism. Sydney and Brisbane, Australia</description>
	<lastBuildDate>Mon, 18 Jan 2010 06:00:54 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>RSPCA Tasmania</title>
		<link>http://oxygenkiosk.com/2010/01/rspca-tasmania/</link>
		<comments>http://oxygenkiosk.com/2010/01/rspca-tasmania/#comments</comments>
		<pubDate>Mon, 18 Jan 2010 06:00:54 +0000</pubDate>
		<dc:creator>Cal Wilson</dc:creator>
				<category><![CDATA[Projects]]></category>

		<guid isPermaLink="false">http://oxygenkiosk.com/?p=191</guid>
		<description><![CDATA[After our work with the national RSPCA Australia, we were contacted by the guys from RSPCA Tasmania, who needed a new website. They had been stuck with a website based on a closed-source, proprietary content management system, that was awkward, difficult to use, and as such the site was stagnating.
After working with the team, Oxygen [...]]]></description>
			<content:encoded><![CDATA[<p>After our work with the national <a href="http://rspca.org.au">RSPCA Australia</a>, we were contacted by the guys from <a href="http://rspcatas.org.au">RSPCA Tasmania</a>, who needed a new website. They had been stuck with a website based on a closed-source, proprietary content management system, that was awkward, difficult to use, and as such the site was stagnating.</p>
<p>After working with the team, Oxygen Kiosk created a new website for them, that better emphasised the important work that they do in Tasmania.</p>
<div id="attachment_192" class="wp-caption aligncenter" style="width: 500px"><a href="http://rspcatas.org.au"><img class="size-full wp-image-192" title="rspcatas" src="http://oxygenkiosk.com/wp-content/uploads/2010/01/rspcatas.png" alt="" width="490" height="442" /></a><p class="wp-caption-text">The new RSPCA Tasmania website design</p></div>
<p>This new site is based on the <a href="http://modxcms.com">MODx content management system</a>, and the team are finding it so easy to use that their content updating has increased 400%!</p>
]]></content:encoded>
			<wfw:commentRss>http://oxygenkiosk.com/2010/01/rspca-tasmania/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ads For Your Blog: Simple Code for Calling OpenX&#8217;s Single Page Call Within Wordpress Using current_post</title>
		<link>http://oxygenkiosk.com/2009/10/ads-for-your-blog-simple-code-for-calling-openxs-single-page-call-within-wordpress-using-current_post/</link>
		<comments>http://oxygenkiosk.com/2009/10/ads-for-your-blog-simple-code-for-calling-openxs-single-page-call-within-wordpress-using-current_post/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 07:28:16 +0000</pubDate>
		<dc:creator>Jaymis</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[blogs]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[OpenX]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://oxygenkiosk.com/?p=171</guid>
		<description><![CDATA[Advertising is one of those &#8220;necessary evils&#8221; of the web, and of non-ecommerce blogs in particular. For blogs which aren&#8217;t associated with a particular product or revenue-generating business, advertising is the main way to pay the bills. It&#8217;s not something which generally enhances a site, but we try our hardest to ensure that it&#8217;s not [...]]]></description>
			<content:encoded><![CDATA[<p>Advertising is one of those &#8220;necessary evils&#8221; of the web, and of non-ecommerce blogs in particular. For blogs which aren&#8217;t associated with a particular product or revenue-generating business, advertising is the main way to pay the bills. It&#8217;s not something which generally <em>enhances</em> a site, but we try our hardest to ensure that it&#8217;s not actively detracting from the important bits of a site.</p>
<div style="text-align:center;"><img src="http://oxygenkiosk.com/wp-content/uploads/2009/10/openx-adblocks.jpg" alt="openx-adblocks.jpg" border="0" width="282" height="282" /></div>
<p>One thing which can seriously detract is the increased load time when a site is filled with ads. This not only comes from the actual images and other assets which are loaded for each ad block, but often those blocks are generated by chunks of javascript, which can add rather a large amount of code to the HTML page, even before any imagery is loaded.</p>
<p>Most blogs start out with Google&#8217;s <a href="https://www.google.com/adsense/">Adsense</a>, and then eventually graduate to <a href="https://www.google.com/admanager/">Ad Manager</a> if there&#8217;s enough advertiser interest that they can start selling their inventory directly. However, Google does have some vast shortcomings, so when your sites get big enough, you start looking around for ad-serving alternatives, and inevitably come upon <a href="http://www.openx.org/">OpenX</a>.</p>
<h3>The Standard Way of Calling Ads</h3>
<p>We&#8217;re about to launch a redesign for a fantastic australian blog (more on that soon), who have a sizable roster of advertisers. They can have over 20 ad blocks of various sizes on some of their pages, so using &#8220;traditional&#8221; OpenX ad calls was not only time-consuming to add to the site, but it was adding a huge amount of HTML weight. Here&#8217;s what the &#8220;standard&#8221; OpenX ad block code looks like:</p>
<pre lang="javascript">
&lt;!--/* OpenX Javascript Tag v2.8.1 */--&gt;
&lt;script type=&#x27;text/javascript&#x27;&gt;&lt;!--//&lt;![CDATA[
   var m3_u = (location.protocol==&#x27;https:&#x27;?&#x27;https://example.com/www/delivery/ajs.php&#x27;:&#x27;http://example.com/www/delivery/ajs.php&#x27;);
   var m3_r = Math.floor(Math.random()*99999999999);
   if (!document.MAX_used) document.MAX_used = &#x27;,&#x27;;
   document.write (&quot;&lt;scr&quot;+&quot;ipt type=&#x27;text/javascript&#x27; src=&#x27;&quot;+m3_u);
   document.write (&quot;?zoneid=11&quot;);
   document.write (&#x27;&amp;amp;cb=&#x27; + m3_r);
   if (document.MAX_used != &#x27;,&#x27;) document.write (&quot;&amp;amp;exclude=&quot; + document.MAX_used);
   document.write (document.charset ? &#x27;&amp;amp;charset=&#x27;+document.charset : (document.characterSet ? &#x27;&amp;amp;charset=&#x27;+document.characterSet : &#x27;&#x27;));
   document.write (&quot;&amp;amp;loc=&quot; + escape(window.location));
   if (document.referrer) document.write (&quot;&amp;amp;referer=&quot; + escape(document.referrer));
   if (document.context) document.write (&quot;&amp;context=&quot; + escape(document.context));
   if (document.mmm_fo) document.write (&quot;&amp;amp;mmm_fo=1&quot;);
   document.write (&quot;&#x27;&gt;&lt;\/scr&quot;+&quot;ipt&gt;&quot;);
//]]&gt;--&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a href=&#x27;http://example.com/www/delivery/ck.php?n=a86ff4c4&amp;amp;cb=INSERT_RANDOM_NUMBER_HERE&#x27; target=&#x27;_blank&#x27;&gt;&lt;img src=&#x27;http://example.com/www/delivery/avw.php?zoneid=11&amp;amp;cb=INSERT_RANDOM_NUMBER_HERE&amp;amp;n=a86ff4c4&#x27; border=&#x27;0&#x27; alt=&#x27;&#x27; /&gt;&lt;/a&gt;&lt;/noscript&gt;
</pre>
<p>It&#8217;s a bit messy, but not so bad by itself. However, when you&#8217;ve got 8 of these blocks all together, and another dozen spread across the rest of the page, it gets rather hefty. The front page of the site in question, without ads, weighs in at a bit over 600 lines of HTML. Dropping in 20 ad blocks brings it up to just under 1000 lines.</p>
<p>As I said. Hefty.<br />
<span id="more-171"></span></p>
<h3>Making OpenX Faster and Smoother</h3>
<p>Fortunately, OpenX has an invocation method called <a href="http://www.openx.org/en/docs/2.8/userguide/single+page+call">Single Page Call</a>, which is designed to make the whole setup much more svelte. So instead of calling that gargantuan chunk of javascript and .write methods over and over, you have a single invocation script called in the header:</p>
<pre>
&lt;script type=&#x27;text/javascript&#x27; src=&#x27;http://example.com/www/delivery/spcjs.php?id=1&#x27;&gt;&lt;/script&gt;
</pre>
<p>&#8230; and then a much smaller, sexier invocation code for each ad block:</p>
<pre>
&lt;script type=&#x27;text/javascript&#x27;&gt;&lt;!--// &lt;![CDATA[
/* [id1] Wide Ad - Top */
OA_show(1);
// ]]&gt; --&gt;&lt;/script&gt;&lt;noscript&gt;&lt;a target=&#x27;_blank&#x27; href=&#x27;http://example.com/www/delivery/ck.php?n=c8acc6c&#x27;&gt;&lt;img border=&#x27;0&#x27; alt=&#x27;&#x27; src=&#x27;http://example.com/www/delivery/avw.php?zoneid=1&amp;amp;n=c8acc6c&#x27; /&gt;&lt;/a&gt;&lt;/noscript&gt;
</pre>
<p>Switching to this method decreased our page size by 30%! Fantastic.</p>
<p>The only limitation here is that it expects every ad zone you&#8217;re calling to be unique. So you can&#8217;t make a single zone called &#8220;interpost_ad&#8221; and call it 10 times, it wants you to create 10 different zones called interpost_1 &#8211; interpost_10, and set them all up individually. This is a monstrous pain in the butt for administration and development, doubly-so because what I&#8217;d read in the OpenX docs had me expecting that this setup would allow different banners to be called if the same zone was repeated.</p>
<p>The way to <em>actually</em> achieve this is hidden down the bottom of the <a href="http://www.openx.org/en/docs/2.8/userguide/single+page+call">Single Page Call documentation</a> page under &#8220;Advanced Usage&#8221;. I&#8217;d never got that far down, because I thought I had the code working correctly and that my delivery problems were due to backend mis-configuration.</p>
<p>To get unique ads showing up in repeated zones, you have to create a &#8220;zone array&#8221; which sits above your invocation call in the header, and associates particular ad block IDs with invocation zones in the page.</p>
<pre>
&lt;script type=&#x27;text/javascript&#x27;&gt;&lt;!--// &lt;![CDATA[
var OA_zones = {
&#x27;ad_top&#x27; : 22,
&#x27;sidebar_mrec&#x27; : 17,
&#x27;selfpromo_1&#x27; : 18,
&#x27;selfpromo_2&#x27; : 19,
&#x27;sideblock_1&#x27; : 21,
&#x27;sideblock_2&#x27; : 23,
&#x27;sideblock_3&#x27; : 23,
&#x27;sideblock_4&#x27; : 23
}
// ]]&gt; --&gt;&lt;/script&gt;
&lt;script type=&#x27;text/javascript&#x27; src=&#x27;http://example.com/delivery/spcjs.php&#x27;&gt;&lt;/script&gt;
</pre>
<p>Then you just change those &#8220;single page call&#8221; invocation codes to include the correct zone name:</p>
<pre>
&lt;script type=&#x27;text/javascript&#x27;&gt;&lt;!--// &lt;![CDATA[
    /* Sideblock 1 */
    OA_show(&#x27;sideblock_1&#x27;);
// ]]&gt; --&gt;&lt;/script&gt;
&lt;script type=&#x27;text/javascript&#x27;&gt;&lt;!--// &lt;![CDATA[
    /* Sideblock 2 */
    OA_show(&#x27;sideblock_2&#x27;);
// ]]&gt; --&gt;&lt;/script&gt;
</pre>
<p>&#8230; etc.</p>
<p>This works beautifully, because it allows you to quickly tweak which zones are being delivered to which areas of the page from a single point in the header, rather than having to make edits all over the place when you want to swap things around. You still need each ad zone in the page body to have a unique name though, which is fine for headers, sidebars, and footers, but how do you manage it for dynamically generated sections of the site? Your search results, tag and category archives?</p>
<p>The old way to do this in Wordpress would be to make a &#8220;count&#8221; variable in PHP, and have it iterate each time the loop was called. Usually that looked something like this:</p>
<pre>
&lt;?php if (have_posts()) : ?&gt;
&lt;?php $count = 0; ?&gt;
&lt;?php while (have_posts()) : the_post(); ?&gt;
&lt;?php $count++; ?&gt;
  &lt;?php if ($count == 1) : ?&gt;
          //bunch of ad code goes here
  &lt;?php if ($count == 2) : ?&gt;
          //bunch of ad code goes here
  &lt;?php if ($count == 3) : ?&gt;
          //bunch of ad code goes here
   &lt;?php else : ?&gt;  

  &lt;?php endif; ?&gt;
&lt;?php endwhile; ?&gt;
&lt;?php endif; ?&gt;
</pre>
<p>This is a pretty reasonable solution, but that counter loop can be salted across a broad swathe of code, as counters are often used for a couple of things for each post called on a page. So the initial $count call would be at the top of the php page, then your actual invocation code statements came much later. Rather confusing stuff.</p>
<p>Fortunately, Wordpress 2.7 introduced a WP_Query function variable called &#8220;<a href="http://codex.wordpress.org/Function_Reference/WP_Query#Methods_and_Properties">$current_post</a>&#8220;, which gives you the numeric ID of the current post in the loop. No more counter code required!</p>
<h3>Using Wordpress&#8217; $current_post Property To Create Dynamic Ad Blocks</h3>
<p><em>$current_post</em> is the final ingredient required to give us light, automatically generated ad blocks. Current_post is called from the <a href="http://codex.wordpress.org/Function_Reference/WP_Query">WP_Query function</a>, like so:</p>
<pre>
&lt;?php echo $wp_query-&gt;current_post; ?&gt;
</pre>
<p>That would echo the ID of the current post in the loop. Of course keeping in mind that the data is coming from an array, so the first ID will be 0.</p>
<p>Remember our super simple ad block javascript call?</p>
<pre>
&lt;script type=&#x27;text/javascript&#x27;&gt;&lt;!--// &lt;![CDATA[
    /* Sideblock 1 */
    OA_show(&#x27;sideblock_1&#x27;);
// ]]&gt; --&gt;&lt;/script&gt;
</pre>
<p>Because this is javascript, we can use PHP to dynamically re-write the code on page load. Using $current_post, we can have it write the post ID each time the Wordpress loop is run, giving us as many unique ad blocks as we have posts on the page. Here&#8217;s how it looks:</p>
<pre>
&lt;script type=&#x27;text/javascript&#x27;&gt;&lt;!--// &lt;![CDATA[
OA_show(&#x27;interpost_&lt;?php echo $wp_query-&gt;current_post; ?&gt;&#x27;);
// ]]&gt; --&gt;&lt;/script&gt;
</pre>
<p>That will call an ad zone called &#8220;interpost_0&#8243; on the first loop, then &#8220;interpost_1&#8243; etc. for as many posts as appear on the page. Then you just need to add those zones into your zone array in the header, which now looks like this:</p>
<pre>
&lt;script type=&#x27;text/javascript&#x27;&gt;&lt;!--// &lt;![CDATA[
var OA_zones = {
&#x27;ad_top&#x27; : 22,
&#x27;interpost_0&#x27; : 20,
&#x27;interpost_1&#x27; : 20,
&#x27;interpost_2&#x27; : 20,
&#x27;interpost_3&#x27; : 20,
&#x27;interpost_4&#x27; : 20,
&#x27;interpost_5&#x27; : 20,
&#x27;interpost_6&#x27; : 20,
&#x27;interpost_7&#x27; : 20,
&#x27;interpost_8&#x27; : 20,
&#x27;interpost_9&#x27; : 20,
&#x27;interpost_10&#x27; : 20,
&#x27;interpost_11&#x27; : 20,
&#x27;sidebar_mrec&#x27; : 17,
&#x27;selfpromo_1&#x27; : 18,
&#x27;selfpromo_2&#x27; : 19,
&#x27;sideblock_1&#x27; : 21,
&#x27;sideblock_2&#x27; : 23,
&#x27;sideblock_3&#x27; : 23,
&#x27;sideblock_4&#x27; : 23,
&#x27;sideblock_5&#x27; : 23,
&#x27;sideblock_6&#x27; : 23,
&#x27;sideblock_7&#x27; : 23,
&#x27;sideblock_8&#x27; : 23
}
// ]]&gt; --&gt;&lt;/script&gt;
&lt;script type=&#x27;text/javascript&#x27; src=&#x27;http://advertisers.babyology.com.au/www/delivery/spcjs.php?id=1&#x27;&gt;&lt;/script&gt;
</pre>
<p>It&#8217;s a super simple method, saves a load of programming, and keeps your code readable and futureproof.</p>
<p>Yay for $current_post!</p>
]]></content:encoded>
			<wfw:commentRss>http://oxygenkiosk.com/2009/10/ads-for-your-blog-simple-code-for-calling-openxs-single-page-call-within-wordpress-using-current_post/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rowan Sable</title>
		<link>http://oxygenkiosk.com/2009/10/rowan-sable/</link>
		<comments>http://oxygenkiosk.com/2009/10/rowan-sable/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 06:06:24 +0000</pubDate>
		<dc:creator>Jaymis</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[Brisbane]]></category>
		<category><![CDATA[clients]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[ecommerce]]></category>
		<category><![CDATA[fashion]]></category>
		<category><![CDATA[Foxycart]]></category>
		<category><![CDATA[illustration]]></category>
		<category><![CDATA[MODx]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[paypal]]></category>
		<category><![CDATA[Queensland]]></category>
		<category><![CDATA[websites]]></category>

		<guid isPermaLink="false">http://oxygenkiosk.com/?p=168</guid>
		<description><![CDATA[
Working with sisters Phillipa and Olivia was great fun from the very start. Phillipa is a wonderful illustrator, and we wanted to collaborate with her to create a site design which reflects the personality and art of Rowan Sable.
The shop is sprinkled with origami, branches, and paintings. We worked out a design framework which would [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://rowansable.com.au/"><img src="http://oxygenkiosk.com/wp-content/uploads/2009/10/rowansable.jpg" alt="rowansable.jpg" border="0" width="490" height="352" /></a></p>
<p>Working with <a href="http://rowansable.com.au/our-boutique/about-us">sisters Phillipa and Olivia</a> was great fun from the very start. Phillipa is a wonderful illustrator, and we wanted to collaborate with her to create a site design which reflects the personality and art of Rowan Sable.</p>
<p>The shop is sprinkled with origami, branches, and paintings. We worked out a design framework which would allow us to combine these things into a website interface, and then Phillipa created drawings of the different elements, which we were able to combine into a completed design which is not only attractive, but valid HTML/CSS code!</p>
<p>We wrapped this around the Content Management Framework of MODx, which makes it super simple to maintain content in the various different sections of the site, and even add products to their <a href="http://www.rowansable.com.au/online-store">online store</a>!</p>
]]></content:encoded>
			<wfw:commentRss>http://oxygenkiosk.com/2009/10/rowan-sable/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Spammers, Evildoers, and Opportunists, or: Why Oxygen Kiosk doesn&#8217;t offer SEO Services</title>
		<link>http://oxygenkiosk.com/2009/10/spammers-evildoers-and-opportunists-or-why-oxygen-kiosk-doesnt-offer-seo-services/</link>
		<comments>http://oxygenkiosk.com/2009/10/spammers-evildoers-and-opportunists-or-why-oxygen-kiosk-doesnt-offer-seo-services/#comments</comments>
		<pubDate>Tue, 13 Oct 2009 06:07:06 +0000</pubDate>
		<dc:creator>Jaymis</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[clients]]></category>
		<category><![CDATA[coding]]></category>
		<category><![CDATA[content]]></category>
		<category><![CDATA[industry]]></category>
		<category><![CDATA[optimization]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[standards]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://oxygenkiosk.com/?p=163</guid>
		<description><![CDATA[I had a chat with a new client the other day about why we don&#8217;t consider &#8220;Search Engine Optimization&#8221; an optional extra, or even a service that we offer.
This morning there was a great string of posts on Merlin Mann&#8217;s twitter:
If you&#8217;re &#8220;insulted&#8221; by criticism of SEO, go write a novel or work at a [...]]]></description>
			<content:encoded><![CDATA[<p>I had a chat with a new client the other day about why we don&#8217;t consider &#8220;<a href="http://en.wikipedia.org/wiki/Search_engine_optimization">Search Engine Optimization</a>&#8221; an optional extra, or even a service that we offer.</p>
<p>This morning there was a great string of posts on <a href="http://www.43folders.com/">Merlin Mann</a>&#8217;s <a href="http://twitter.com/hotdogsladies">twitter</a>:</p>
<blockquote><p>If you&#8217;re &#8220;insulted&#8221; by criticism of SEO, go write a novel or work at a food bank. With all respect, find a job worth fake-defending. [<a href="http://twitter.com/hotdogsladies/status/4819432252">link</a>]</p></blockquote>
<blockquote><p>Shorter: &#8220;SEO&#8221; is either 1. Common Sense (clean code, good urls &#038; titles); or 2. Cheating (most everything else). Learn &#8220;1&#8243;; Exorcise &#8220;2&#8243;. [<a href="http://twitter.com/hotdogsladies/status/4819621542">link</a>]</p></blockquote>
<blockquote><p>Once worked at an SEO-optimized bar. Sign said we were an emergency room but our house special was 1 oz. of urine and 9 ads for other bars. [<a href="http://twitter.com/hotdogsladies/status/4819876169">link</a>]</p></blockquote>
<p>These <a href="http://twitter.com/hotdogsladies/status/4819330370">led me back</a> to this <a href="http://powazek.com/posts/2090">post by Derek Powazek</a> (<a href="http://twitter.com/fraying">@fraying</a> on Twitter), which sums up the issues we have with the SEO industry, (and then continues to deride SEO people generally, which is fine too, they don&#8217;t do much which makes me feel like defending them from derision.)<br />
<span id="more-163"></span></p>
<blockquote>
<h2>The One True Way</h2>
<p>Which brings us, finally, to the One True Way to get a lot of traffic on the web. It’s pretty simple, and I’m going to give it to you here, for free: </p>
<p><strong>Make something great. Tell people about it. Do it again.</strong></p></blockquote>
<p>&#8220;<a href="http://powazek.com/posts/2090">Spammers, Evildoers, and Opportunists</a>&#8221; by Derek Powazek.</p>
<p>This is precisely how I respond to clients who ask me about &#8220;SEO&#8221;. </p>
<p>We do our job properly. We create sites which adhere to web standards, and work super hard on figuring out how to best present content so it&#8217;s attractive, intuitive and findable. When everything is set up, we train our clients how to create their content so both people and search engines can understand it.</p>
<p>That&#8217;s &#8220;SEO&#8221;.</p>
<p>If your site has been built properly, then there is no need for additional &#8220;optimization&#8221;. If you aren&#8217;t getting visitors, or you&#8217;re not appearing in search engines, then there are two possible problems:</p>
<h2>Your site is broken or badly coded</h2>
<p>Get a developer to have a look at your site, and tell you if it&#8217;s coded to <a href="http://en.wikipedia.org/wiki/Web_standards">web standards</a>. If they&#8217;re any good, they&#8217;ll be able to hit your domain, view the source code, and tell you in about 3 seconds whether it&#8217;s good.</p>
<p>If you don&#8217;t know any web developers, and are too shy to <a href="http://oxygenkiosk.com/contact-o2k/">ask us about it</a>, then paste your URL into the W3C <a href="http://validator.w3.org/">Markup Validation Service</a> (<a href="http://validator.w3.org/check?uri=http%3A%2F%2Foxygenkiosk.com">Here&#8217;s the validation for OxygenKiosk.com</a>). If there&#8217;s a couple of errors showing up, it&#8217;s probably fine. Standards can get a little wonky when they come up against the reality of web content created by inexperienced writers, or things like youtube embeds.</p>
<p>If you&#8217;re seeing tens or hundreds of errors, then there&#8217;s a good chance that your site could do with an overhaul. For that, you need a <em>web developer</em>, to fix the foundations of your site for the long term.</p>
<h2>Your content isn&#8217;t doing its job</h2>
<p>If your site is validating reasonably well, and you haven&#8217;t hidden sections away so people can&#8217;t find them, then have a look at the actual <em>content</em> of your site. Is there any content there? Any discussion of the subject matter aside from &#8220;Buy this product and/or service&#8221;? Anything that someone interested in the subject might want to share with a friend who&#8217;s also interested in said subject?</p>
<p>If not, then it&#8217;s your job to <em>make</em> something interesting. I hope that you&#8217;re running a business because you&#8217;re genuinely interested in the field, and hopefully you&#8217;re actually keen on finding out new things, and sharing what you&#8217;ve found! If writing words isn&#8217;t one of your superpowers, then you need a <em>copywriter</em>. Someone who can look at all the awesome stuff you&#8217;re doing, and turn it in to words that people will enjoy reading.</p>
<p>Maybe your business isn&#8217;t about finding or creating new things. Maybe you do one thing really well, and you just want people to know about that thing you do. If you&#8217;re selling products, is there a section of your site which lists what you&#8217;re selling? Can I grab a link to your product or service, and email it to my mum, saying: &#8220;Hey mum, I&#8217;ve just found someone who sells that thing you were looking for. Check it out!&#8221;</p>
<p>If I&#8217;m able to do that, she will <em>totally</em> buy it, and your site has achieved its goal.</p>
]]></content:encoded>
			<wfw:commentRss>http://oxygenkiosk.com/2009/10/spammers-evildoers-and-opportunists-or-why-oxygen-kiosk-doesnt-offer-seo-services/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Open Migration: Rescuing Content and Images from Squarespace</title>
		<link>http://oxygenkiosk.com/2009/08/open-migration-rescuing-content-and-images-from-squarespace/</link>
		<comments>http://oxygenkiosk.com/2009/08/open-migration-rescuing-content-and-images-from-squarespace/#comments</comments>
		<pubDate>Wed, 12 Aug 2009 05:30:21 +0000</pubDate>
		<dc:creator>Jaymis</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[blogging]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[export]]></category>
		<category><![CDATA[extensions]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[migration]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[squarespace]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://oxygenkiosk.com/?p=157</guid>
		<description><![CDATA[We&#8217;re currently helping our clients at Dubspot migrate their blog from Squarespace to a new system which will be built around a multi-user setup of Wordpress.
Squarespace&#8217;s propaganda goes on about &#8220;Total Data Portability&#8221;, and how &#8220;your data is yours to keep&#8221;. However, when it comes to moving to another system, there&#8217;s no automated method to [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;re currently helping our clients at <a href="http://dubspot.com">Dubspot</a> migrate their blog from <a href="http://squarespace.com">Squarespace</a> to a new system which will be built around a multi-user setup of <a href="http://wordpress.org">Wordpress</a>.</p>
<p>Squarespace&#8217;s <a href="http://www.squarespace.com/features/">propaganda</a> goes on about &#8220;Total Data Portability&#8221;, and how &#8220;your data is yours to keep&#8221;. However, when it comes to moving to another system, there&#8217;s no automated method to get your images and other files out. You can use a &#8220;<a href="http://manual.squarespace.com/publishing-editing-content/how-do-i-export-my-journal-entries-or-site-data.html">data export</a>&#8221; to create a Movable Type formatted export of your posts (which will import fine to most blogging engines), leaving your images in their proprietary file system, to which you only have web access, and no functionality to create an archive for downloading.</p>
<p>I asked Squarespace support if there was any other way to get our images out, and their response was &#8220;Currently there is no feature for this &#8212; each file will need to be downloaded individually from File Storage, sorry about this.&#8221;</p>
<p>I asked if we could get a Squarespace dev to compress the directory so we could download it, and got various permutations of &#8220;that feature doesn&#8217;t exist, but I can suggest it as a future feature&#8221; from 3 different Squarespace support people:</p>
<p><a href="http://oxygenkiosk.com/wp-content/uploads/2009/08/squarespace-support-1.jpg"><img src="http://oxygenkiosk.com/wp-content/uploads/2009/08/squarespace-support-1-252x300.jpg" alt="squarespace-support-1.jpg" title="squarespace-support-1.jpg" width="252" height="300" class="alignnone size-medium wp-image-153" /></a></p>
<p>Fortunately, while all this frustration was going on, I figured out a sneaky little system to allow me to download all of the images directly from their web interface. It uses <a href="https://getfirefox.com">Firefox</a> and the <a href="https://addons.mozilla.org/en-US/firefox/addon/201">DownThemAll</a> extension.<br />
<span id="more-157"></span></p>
<h3>How to rescue your images from Squarespace</h3>
<p>If you don&#8217;t already use Firefox, download and install it, and make sure you check the &#8220;Use Firefox As Your Default Browser&#8221; box. Welcome to Modern Browser Land. You&#8217;re going to like it here.</p>
<p>Next install <a href="https://addons.mozilla.org/en-US/firefox/addon/201">DownThemAll</a>, and restart Firefox.</p>
<p>Login to your Squarespace account, and go to the &#8220;File Storage&#8221; area. Hopefully, like Dubspot, you haven&#8217;t been too organized, and most of your images are in a single directory, like this:</p>
<p><a href="http://oxygenkiosk.com/wp-content/uploads/2009/08/squarespace-files.jpg"><img src="http://oxygenkiosk.com/wp-content/uploads/2009/08/squarespace-files-300x186.jpg" alt="squarespace-files.jpg" title="squarespace-files.jpg" width="300" height="186" class="alignnone size-medium wp-image-154" /></a></p>
<p>Right click on the page, and select &#8220;DownThemAll&#8221;.</p>
<p>We only want the posted files, which are held under a directory called &#8220;storage&#8221;, so click the URL column header to sort all the files by URL. DownThemAll had skipped out some files &#8211; PDFs and SWF mostly.</p>
<p><a href="http://oxygenkiosk.com/wp-content/uploads/2009/08/downthemall-squarespace.jpg"><img src="http://oxygenkiosk.com/wp-content/uploads/2009/08/downthemall-squarespace-300x264.jpg" alt="downthemall-squarespace.jpg" title="downthemall-squarespace.jpg" width="300" height="264" class="alignnone size-medium wp-image-156" /></a></p>
<p>Click &#8220;Start&#8221;, and you get all of your files back. Well done.</p>
<p><a href="http://oxygenkiosk.com/wp-content/uploads/2009/08/downing-them-all.jpg"><img src="http://oxygenkiosk.com/wp-content/uploads/2009/08/downing-them-all-300x184.jpg" alt="downing-them-all.jpg" title="downing-them-all.jpg" width="300" height="184" class="alignnone size-medium wp-image-155" /></a></p>
<p>Unfortunately your journey isn&#8217;t over yet. Squarespace&#8217;s Movable Type formatted export includes a lot of cruft in the HTML, which takes a bit more work to fix up. Details to come.</p>
]]></content:encoded>
			<wfw:commentRss>http://oxygenkiosk.com/2009/08/open-migration-rescuing-content-and-images-from-squarespace/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>RSPCA Australia</title>
		<link>http://oxygenkiosk.com/2009/06/rspca-australia/</link>
		<comments>http://oxygenkiosk.com/2009/06/rspca-australia/#comments</comments>
		<pubDate>Mon, 15 Jun 2009 22:43:21 +0000</pubDate>
		<dc:creator>Cal Wilson</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[Australia]]></category>
		<category><![CDATA[Canberra]]></category>
		<category><![CDATA[CiviCRM]]></category>
		<category><![CDATA[CMF]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Complex Sites]]></category>
		<category><![CDATA[consulting]]></category>
		<category><![CDATA[CRM]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[kbpublisher]]></category>
		<category><![CDATA[Large Sites]]></category>
		<category><![CDATA[MODx]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Organizations]]></category>
		<category><![CDATA[paypal]]></category>
		<category><![CDATA[Site Redesigns]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">http://oxygenkiosk.com/2009/06/rspca-australia/</guid>
		<description><![CDATA[
When we heard that RSPCA Australia were looking to have their website redeveloped, we instantly knew that the project was for us (we both love animals: Jaymis actually has a pet, Cal&#8217;s apartment doesn&#8217;t allow for one).
Working very closely with the RSPCA Australia online team, we created a brand-new original layout, with a focus on [...]]]></description>
			<content:encoded><![CDATA[<p><img src="/images/newsimgs/rspca.png" alt="RSPCA Australia Screenshot"></p>
<p>When we heard that <a href="http://www.rspca.org.au/">RSPCA Australia</a> were looking to have their website redeveloped, we instantly knew that the project was for us (we both love animals: Jaymis actually has a pet, Cal&#8217;s apartment doesn&#8217;t allow for one).</p>
<p>Working very closely with the <a href="http://www.rspca.org.au/">RSPCA Australia</a> online team, we created a brand-new original layout, with a focus on cleanliness, readability and style. Navigation was constructed with a focus on simplicity and inherent findability.</p>
<p>All content is managed using the favourite <a href="http://modxcms.com/">MODx content management framework</a>, which made deployment an absolute breeze.</p>
]]></content:encoded>
			<wfw:commentRss>http://oxygenkiosk.com/2009/06/rspca-australia/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Handy CSS Test Cases</title>
		<link>http://oxygenkiosk.com/2009/06/handy-css-test-cases/</link>
		<comments>http://oxygenkiosk.com/2009/06/handy-css-test-cases/#comments</comments>
		<pubDate>Sat, 13 Jun 2009 05:36:43 +0000</pubDate>
		<dc:creator>Cal Wilson</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Learning]]></category>
		<category><![CDATA[resources]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://oxygenkiosk.com/2009/06/handy-css-test-cases/</guid>
		<description><![CDATA[Over at oksushi.com I&#8217;ve linked to a number of handy little CSS test cases that I&#8217;ve been creating in my IRC time on #css.
I hope they help someone, somewhere, with a CSS problem.
]]></description>
			<content:encoded><![CDATA[<p>Over at <a href="http://oksushi.com/">oksushi.com</a> I&rsquo;ve linked to a number of <a href="http://oksushi.com/article/mini-testcases-for-your-css-pleasure" title="OK Sushi: Mini testcases for your css pleasure">handy little CSS test cases</a> that I&rsquo;ve been creating in my IRC time on #css.</p>
<p>I hope they help someone, somewhere, with a CSS problem.</p>
]]></content:encoded>
			<wfw:commentRss>http://oxygenkiosk.com/2009/06/handy-css-test-cases/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Wordpress Post Image Resources</title>
		<link>http://oxygenkiosk.com/2009/03/wordpress-post-image-resources/</link>
		<comments>http://oxygenkiosk.com/2009/03/wordpress-post-image-resources/#comments</comments>
		<pubDate>Wed, 18 Mar 2009 02:07:26 +0000</pubDate>
		<dc:creator>Jaymis</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[images]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[resources]]></category>
		<category><![CDATA[templates]]></category>
		<category><![CDATA[tips]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://oxygenkiosk.com/?p=66</guid>
		<description><![CDATA[We&#8217;re doing some advanced Wordpress templating and hacking for the new version of the awesome The Motor Report blog, and trying to do some cool things with images from posts. Rather than requiring authors to manually define &#8220;feature&#8221; images, we&#8217;d like wordpress to automatically generate various thumbnails for search results, feature post scrollers etc.
So hence, [...]]]></description>
			<content:encoded><![CDATA[<p>We&#8217;re doing some advanced Wordpress templating and hacking for the new version of the awesome <a href="http://themotorreport.com.au">The Motor Report</a> blog, and trying to do some cool things with images from posts. Rather than requiring authors to manually define &#8220;feature&#8221; images, we&#8217;d like wordpress to automatically generate various thumbnails for search results, feature post scrollers etc.</p>
<p>So hence, some interesting/useful resources on the subject:</p>
<p><a href="http://wphackr.com/get-images-attached-to-post/">Get Images Attached to a Post</a>: Requires functions.php hacking, gets attachments from the database, rather than through brute force search of the post content.</p>
<p><a href="http://www.livexp.net/wordpress/get-the-first-image-from-the-wordpress-post-and-display-it.html">Get the first image from the wordpress post and display it</a>: Requires some functions.php hacking, searches the actual post text, and has the advantage of getting the first actual image in the post, rather than the first image uploaded and associated with the post.</p>
<p><a href="http://bavotasan.com/wordpress/free-wordpress-plugins/simple-image-grabber-wordpress-plugin/">Simple Image Grabber Wordpress Plugin</a>:</p>
<p>Also interesting: <a href="http://www.mambro.it/en/wordpress-related-posts-with-thumbnail-plugin-funziona-con-qualsiasi-immagine/">Related Posts with Thumbs plugin</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://oxygenkiosk.com/2009/03/wordpress-post-image-resources/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mink Home Staging</title>
		<link>http://oxygenkiosk.com/2009/01/mink-home-staging/</link>
		<comments>http://oxygenkiosk.com/2009/01/mink-home-staging/#comments</comments>
		<pubDate>Wed, 28 Jan 2009 04:18:52 +0000</pubDate>
		<dc:creator>Cal Wilson</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[Australia]]></category>
		<category><![CDATA[Brisbane]]></category>
		<category><![CDATA[businesses]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Complex Designs]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[Home Staging]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[MODx]]></category>
		<category><![CDATA[New Sites]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Small Businesses]]></category>
		<category><![CDATA[template]]></category>

		<guid isPermaLink="false">http://oxygenkiosk.com/?p=63</guid>
		<description><![CDATA[There is nothing that we here at Oxygen Kiosk love more than a well-staged house. Which is why we jumped at the chance to work with our second home staging client, Mink.

Working with a complex design, we constructed some of the best-looking html and css we&#8217;ve ever done.  Sprinkled with some jQuery to drive [...]]]></description>
			<content:encoded><![CDATA[<p>There is nothing that we here at Oxygen Kiosk love more than a well-staged house. Which is why we jumped at the chance to work with our second home staging client, <a href="http://minkhomestaging.com.au">Mink</a>.</p>
<p><a href="http://minkhomestaging.com.au"><img class="alignnone size-full wp-image-64" title="mink" src="http://oxygenkiosk.com/wp-content/uploads/2009/01/mink.png" alt="mink" width="490" height="400" /></a></p>
<p>Working with a complex design, we constructed some of the best-looking html and css we&#8217;ve ever done.  Sprinkled with some jQuery to drive the menus, and some other assorted delights, super sexy!</p>
<p>Mink runs using <a href="http://modxcms.com">MODx</a> which makes editing the pages a snap!</p>
]]></content:encoded>
			<wfw:commentRss>http://oxygenkiosk.com/2009/01/mink-home-staging/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Norpoint</title>
		<link>http://oxygenkiosk.com/2008/12/norpoint/</link>
		<comments>http://oxygenkiosk.com/2008/12/norpoint/#comments</comments>
		<pubDate>Mon, 15 Dec 2008 03:01:06 +0000</pubDate>
		<dc:creator>Cal Wilson</dc:creator>
				<category><![CDATA[Projects]]></category>
		<category><![CDATA[Australia]]></category>
		<category><![CDATA[businesses]]></category>
		<category><![CDATA[collaborations]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[design]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[New Sites]]></category>
		<category><![CDATA[NSW]]></category>
		<category><![CDATA[Simple Sites]]></category>
		<category><![CDATA[Small Sites]]></category>
		<category><![CDATA[Sydney]]></category>

		<guid isPermaLink="false">http://oxygenkiosk.com/?p=61</guid>
		<description><![CDATA[
Norpoint is a specialist superannuation and consulting firm providing complete self managed superannuation fund (SMSF) solutions.
Oxygen Kiosk worked with our long-time design partner Alex Just Creative to implement this stylish website quickly.
]]></description>
			<content:encoded><![CDATA[<p class="intro"><a href="http://norpoint.com.au"><img class="alignnone size-full wp-image-62" title="norpoint" src="http://oxygenkiosk.com/wp-content/uploads/2008/12/norpoint.jpg" alt="Norpoint Superannuation" width="490" height="400" /></a></p>
<p class="intro"><a href="http://norpoint.com.au">Norpoint</a> is a specialist superannuation and consulting firm providing complete self managed superannuation fund (SMSF) solutions.</p>
<p class="intro">Oxygen Kiosk worked with our long-time design partner <a href="http://alexjust.com">Alex Just Creative</a> to implement this stylish website quickly.</p>
]]></content:encoded>
			<wfw:commentRss>http://oxygenkiosk.com/2008/12/norpoint/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
