<?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>Fish Can&#039;t Whistle</title>
	<atom:link href="http://fishcantwhistle.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://fishcantwhistle.com</link>
	<description>Web, WordPress and Mobile Development</description>
	<lastBuildDate>Fri, 11 May 2012 11:33:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Custom Background Per Page</title>
		<link>http://fishcantwhistle.com/custom-background-per-page-wordpress/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=custom-background-per-page-wordpress</link>
		<comments>http://fishcantwhistle.com/custom-background-per-page-wordpress/#comments</comments>
		<pubDate>Thu, 19 Apr 2012 10:55:43 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[FCW WordPress Plugins]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=2548</guid>
		<description><![CDATA[Download now or visit on wordpress.org. Total downloads: . Tags: Changelog-]]></description>
			<content:encoded><![CDATA[<p>Easily add background options on a per page/post basis.</p>

<p>Currently the plugin includes the following features-</p>

<ul>
<li>Add a background image</li>
<li>Options for vertical &#38; horizontal repeating</li>
<li>Fade out the bottom edge of your background image</li>
<li>Choose background colour</li>
<li>Child pages of a page with a custom background will inherit the parent page background settings.</li>
</ul>
<p><img title="More..." src="http://fishcantwhistle.com/wp-includes/js/tinymce/plugins/wordpress/img/trans.gif" alt="" /><img title="More..." src="http://fishcantwhistle.com/wp-includes/js/tinymce/plugins/wordpress/img/trans.gif" alt="" /><span id="more-2548"></span></p>

<p><a href="http://downloads.wordpress.org/plugin/background-per-page.0.2.zip">Download now</a> or visit <a href="http://wordpress.org/extend/plugins/background-per-page/">Background Per Page</a> on wordpress.org.</p>
<p>Total downloads: 1,898.</p>
<ol>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/background-per-page/screenshot-1.png?r=546253' alt='background-per-page screenshot 1' />
		<p>The new meta box that is added to your post/page screens.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/background-per-page/screenshot-2.png?r=546253' alt='background-per-page screenshot 2' />
		<p>The menu item to set a default background.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/background-per-page/screenshot-3.png?r=546253' alt='background-per-page screenshot 3' />
		<p>The screen to set up your default background.</p>
	</li>
</ol>
<p>Tags: background, background image, custom, per page, Post</p>
<p>Changelog-</p>
<h4>0.1</h4>

<ul>
<li>First release</li>
</ul>

<h4>0.2</h4>

<p>*Fixed update bug and added hierarchical backgrounds</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/custom-background-per-page-wordpress/feed/</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>WordPress themes for UK Politician</title>
		<link>http://fishcantwhistle.com/wordpress-themes-for-uk-politician/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wordpress-themes-for-uk-politician</link>
		<comments>http://fishcantwhistle.com/wordpress-themes-for-uk-politician/#comments</comments>
		<pubDate>Wed, 11 Apr 2012 16:02:52 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress 3.0]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[government]]></category>
		<category><![CDATA[politics]]></category>
		<category><![CDATA[themes]]></category>
		<category><![CDATA[uk]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=2536</guid>
		<description><![CDATA[Recently I have found myself working for a number of people and organisations involved with ...]]></description>
			<content:encoded><![CDATA[<p>Recently I have found myself working for a number of people and organisations involved with UK government and politics. One of my clients needed to find a WordPress theme that we could use a starting point to rebuild their blog.</p>
<p><span id="more-2536"></span></p>
<p>Googling &#8220;WordPress themes for Politician&#8221; brings up a lot of very unhelpful USA based themes. Which are very different to what I would need for a UK based MP. So, here are some themes that I found that I feel are a good starting point for a UK based MP WordPress blog.</p>
<p><a href="http://labs.saurabh-sharma.net/themes/volt/wp/">http://labs.saurabh-sharma.net/themes/volt/wp/</a></p>
<p><a href="http://www.momizat.net/theme/goodnews/">http://www.momizat.net/theme/goodnews/</a></p>
<p><a href="http://www.londonthemes.com/themes/londonlive/">http://www.londonthemes.com/themes/londonlive/</a></p>
<p><a href="http://www.gallyapp.com/tf_themes/?theme=Link">http://www.gallyapp.com/tf_themes/?theme=Link</a></p>
<p><a href="http://freecss.info/npress/">http://freecss.info/npress/</a></p>
<p><a href="http://www.gallyapp.com/tf_themes/?theme=PIM">http://www.gallyapp.com/tf_themes/?theme=PIM</a></p>
<p><a href="http://themetation.com/themes/our-magazine/">http://themetation.com/themes/our-magazine/</a></p>
<p>The above, although not immediately obvious as political theme, I feel are a decent start for developing a respectible UK politics WordPress theme.</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/wordpress-themes-for-uk-politician/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to fix the recent errors with TubePress and Vimeo</title>
		<link>http://fishcantwhistle.com/how-to-fix-the-recent-errors-with-tubepress-and-vimeo/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=how-to-fix-the-recent-errors-with-tubepress-and-vimeo</link>
		<comments>http://fishcantwhistle.com/how-to-fix-the-recent-errors-with-tubepress-and-vimeo/#comments</comments>
		<pubDate>Tue, 28 Feb 2012 13:39:11 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[hack]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress 3.0]]></category>
		<category><![CDATA[WordPress Development]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=2524</guid>
		<description><![CDATA[I was informed last night that a previously working site using the TubePress WordPress plugin ...]]></description>
			<content:encoded><![CDATA[<p>I was informed last night that a previously working site using the TubePress WordPress plugin had suddenly started throwing a fatal error.</p>
<p>The error was this</p>
<pre><strong>Fatal error</strong>: Cannot use object of type stdClass as array in <strong>***/wp-content/plugins/tubepress/sys/classes/org/tubepress/impl/factory/commands/VimeoFactoryCommand.class.php</strong> on line <strong>164</strong></pre>
<p>After much digging around it turns out to be a problem with the Vimeo API rather than TubePress and a simple fix will sort you out.</p>
<p><span id="more-2524"></span></p>
<p>You will need to get your hands dirty until TubePress implement this in to the next plugin update.</p>
<p>Open whatever/wp-content/plugins/tubepress/sys/classes/org/tubepress/impl/factory/commands/VimeoFactoryCommand.class.php and on lines 55 and 60 you will see</p>
<pre>$this-&gt;_videoArray = something</pre>
<p>We basically have to recast as an array because for some strange reason Vimeo API is now returning an object.</p>
<p>So. On line 55 change this-</p>
<pre> $this-&gt;_videoArray = $unserialized-&gt;video;</pre>
<p>to</p>
<pre> $this-&gt;_videoArray = (array)$unserialized-&gt;video;</pre>
<p>And on line 60 change this</p>
<pre>$this-&gt;_videoArray = $unserialized-&gt;videos-&gt;video;</pre>
<p>to</p>
<pre>$this-&gt;_videoArray = (array)$unserialized-&gt;videos-&gt;video;</pre>
<p>And you&#8217;re done.</p>
<p> <img src='http://fishcantwhistle.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/how-to-fix-the-recent-errors-with-tubepress-and-vimeo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Graceful JavaScript degradation</title>
		<link>http://fishcantwhistle.com/graceful-javascript-degradation/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=graceful-javascript-degradation</link>
		<comments>http://fishcantwhistle.com/graceful-javascript-degradation/#comments</comments>
		<pubDate>Wed, 08 Feb 2012 15:31:52 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[degradation]]></category>
		<category><![CDATA[degrade]]></category>
		<category><![CDATA[enhancement]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=2490</guid>
		<description><![CDATA[jQuery is great and I love it. Internet Explorer is awful and I hate it. ...]]></description>
			<content:encoded><![CDATA[<p>jQuery is great and I love it.</p>
<p>Internet Explorer is awful and I hate it.</p>
<p>Unfortunately there are times when I can&#8217;t have it all my own way though; sometimes I have to build for IE (6+) and that means finding a way to deal with the lovely feature &lt; IE8 has of deciding not to load JavaScript every now and again for no apparent reason.</p>
<p><span id="more-2490"></span></p>
<p>Here&#8217;s what I do.</p>
<p>Suppose I have a button that triggers a jQuery animate function on another div-</p>
<p><code>$('#button').click(function(){<br />
$('#anotherDiv').slideToggle();<br />
return false;<br />
}):</code></p>
<p>Fairly simple. But if IE doesn&#8217;t load JavaScript I have a button that looks like it should be clickable but appears to do nothing (in IE). Not good.</p>
<p>For the sake of argument let&#8217;s say that I can live without this button for IE users.</p>
<p>In my HTML I would add a class of &#8216;show_if_js&#8217; -</p>
<pre>&lt;a id="button" href="#"&gt;Click me&lt;/a&gt;</pre>
<p>Then in my stylesheet I would do this-</p>
<p><code>.show_if_js{<br />
display:none;<br />
}</code></p>
<p>So by default the button is hidden. So I now need to show the button if JavaScript has loaded. Within my document ready function in my js file I&#8217;ll put this-</p>
<p><code>$('.show_if_js').show();</code></p>
<p>Now, my button will only show if JavaScript has loaded, saving me the headache of IE users asking me what the button is supposed to do.</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/graceful-javascript-degradation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Internet Explorer 6 is older than the oldest eMac</title>
		<link>http://fishcantwhistle.com/the-ie-nightmare/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=the-ie-nightmare</link>
		<comments>http://fishcantwhistle.com/the-ie-nightmare/#comments</comments>
		<pubDate>Fri, 03 Feb 2012 23:58:26 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[development]]></category>
		<category><![CDATA[6]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[ie6]]></category>
		<category><![CDATA[internet-explorer]]></category>
		<category><![CDATA[microsoft]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=2482</guid>
		<description><![CDATA[Internet Explorer 6 was released in 2001. A year later apple released the eMac. I ...]]></description>
			<content:encoded><![CDATA[<p>Internet Explorer 6 was released in 2001. <strong>A year later apple released the eMac. </strong></p>
<p><span id="more-2482"></span></p>
<p><img src="http://fishcantwhistle.com/wp-content/uploads/2012/02/20120204-000004.jpg" alt="20120204-000004.jpg" class="alignleft size-full" />I only know one person with an eMac and he&#8217;s my grandad. He loves his eMac and it suits him just fine. It has 40GB of hard drive space, no CD drive and no USB 2 to hook up an external CD drive. But that&#8217;s fine for him. He recognises the limitations of his machine and works within them. Will the latest OS X run on it? Nope. But why not? Why isn&#8217;t Apple producing a completely separate version of Snow Leopard that can run on his 10 year old machine? </p>
<p>Well, because that would be ridiculous. My grandad doesn&#8217;t expect Apple to do that and neither does anyone else because his machine is <strong>10 years old</strong>! </p>
<p>So why then do we as web developers still dedicate a hugely disproportionate amount of time to making websites work in IE6? It is no exaggeration to say that making a website work ( and by work I mean look like and function like it does in a modern browser) in IE6 can take <em>over 100% longer</em> than the time it took to make the same website work in a modern browser. And I bet most of us don&#8217;t charge for that time do we? </p>
<p>I know that there is still an argument that corporations are tied to a version of IE and simply can not upgrade. But are they all sitting there using eMac&#8217;s? I don&#8217;t think so. </p>
<p>So from now on I will no longer be supporting or developing for IE6. I won&#8217;t even look at a site in IE6 unless the client has specifically requested it and are paying for the extra time. And even then I will have to be persuaded. </p>
<p>I am also going to start doing my bit to eradicate the world of IE6. I will be adding a browser detection script to all of my plugins and themes that will alert users of archaic browsers that unless they own an eMac and are using dial up Internet they really should update their browser.</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/the-ie-nightmare/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Managing a development environment</title>
		<link>http://fishcantwhistle.com/managing-a-development-environment/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=managing-a-development-environment</link>
		<comments>http://fishcantwhistle.com/managing-a-development-environment/#comments</comments>
		<pubDate>Thu, 05 Jan 2012 18:37:23 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[development]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[set up]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=2461</guid>
		<description><![CDATA[Everyone has their own way of developing but for people new to development, how to ...]]></description>
			<content:encoded><![CDATA[<p>Everyone has their own way of developing but for people new to development, how to work with files on a server can be a little confusing. So here&#8217;s what I do. <img src='http://fishcantwhistle.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><span id="more-2461"></span></p>
<p>If I am starting from scratch with a new WordPress theme or plugin I will work locally (using MAMP) and use GitHub to sync my work across multiple machines and track my progress. Working locally allows me to work much quicker and in a safe environment (where I can break it!). Once I&#8217;m happy with the basic functionality I will then put the theme or plugin (or anything else really) up on a development URL where the client can see it and provide feedback. From then on I will tend to work exclusively on the dev URL unless I have to make major adjustments or develop new functionality in which case I will go back to local development for a while. </p>
<p>When it comes to working on a site that is already live I have a few options. I could put the site in to some sort of maintenance mode and edit files on the server. This is fine if the client doesn&#8217;t mind and it allows me to test in the actual environment the code will run in. If maintenance mode isn&#8217;t an option then I would consider replicating the site locally and working on it there. However sometimes that isn&#8217;t very practical if the site is very large or the client wants to view progress as its happening. In which case I would set up a dev subdomain and replicate the site there. As I quite often work with WordPress it&#8217;s easy for me to just copy files and still reference the same database which is good for working with live data. If I&#8217;m developing a plugin I will quite often work on the live site and write some logic to restrict viewing of the plugin or the plugins output to logged in admins. I suppose I could do this for theme development too but it seems a bit of a long way round.</p>
<p>There is a time where editing live files is permissible. For mega simple HTML updates or CSS tweaks it can be more efficient to just make those changes without faffing about. However I would say that if I have even an inkling of doubt about what I&#8217;m doing I should probably find a way of testing my changes before putting them live. </p>
<p>How do you manage your development environment?</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/managing-a-development-environment/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress Events</title>
		<link>http://fishcantwhistle.com/wordpress-events/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wordpress-events</link>
		<comments>http://fishcantwhistle.com/wordpress-events/#comments</comments>
		<pubDate>Fri, 23 Dec 2011 16:36:48 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[FCW WordPress Plugins]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=2454</guid>
		<description><![CDATA[Download now or visit on wordpress.org. Total downloads: . Tags: Changelog-]]></description>
			<content:encoded><![CDATA[<p>WordPress Events gives you a simple interface for adding events to your site and displays them in a beautiful calendar with pop up details.</p>

<p>Simply add events in an interface you are already used to and display your calendar by adding the shortcode <code>&#x5b;calendar]</code> to any page of post!</p>

<p>New in 0.2 !</p>

<p>Multiple user calendars! Allow individual users to have their own calendar and display different calendars by specifying a user id in the shortcode. For example [calendar user=2] will display the calendar for the user with an ID of 2.</p>

<p>Built in sharing generates tiny urls that when linked to opens the shared event in a pop up just as if the user had clicked on it.</p>

<p>Google maps integration allows you to add a map of the venue.</p>

<p>Download a pdf user guide from here <a href="http://fishcantwhistle.com/wp-content/uploads/2012/02/wordpress-events-user-guide.pdf" rel="nofollow">http://fishcantwhistle.com/wp-content/uploads/2012/02/wordpress-events-user-guide.pdf</a></p>

<p>0.9 now uses ajax to load events to save on load time.</p>
<p><img title="More..." src="http://fishcantwhistle.com/wp-includes/js/tinymce/plugins/wordpress/img/trans.gif" alt="" /><span id="more-2454"></span></p>

<p><a href="http://downloads.wordpress.org/plugin/wordpress-events.0.9.zip">Download now</a> or visit <a href="http://wordpress.org/extend/plugins/wordpress-events/">WordPress Events</a> on wordpress.org.</p>
<p>Total downloads: 1,869.</p>
<ol>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-events/screenshot-1.png?r=533862' alt='wordpress-events screenshot 1' />
		<p>See all your events</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-events/screenshot-2.png?r=533862' alt='wordpress-events screenshot 2' />
		<p>Add/Edit an event</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-events/screenshot-3.png?r=533862' alt='wordpress-events screenshot 3' />
		<p>Your calendar will display within your theme's style. Here with a custom theme</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-events/screenshot-4.png?r=533862' alt='wordpress-events screenshot 4' />
		<p>And here within 2011</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-events/screenshot-5.png?r=533862' alt='wordpress-events screenshot 5' />
		<p>The widget!</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-events/screenshot-6.png?r=533862' alt='wordpress-events screenshot 6' />
		<p>Integrated sharing</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-events/screenshot-7.png?r=533862' alt='wordpress-events screenshot 7' />
		<p>Upon clicking on an event in the calendar a pop up will display further info.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-events/screenshot-8.png?r=533862' alt='wordpress-events screenshot 8' />
		<p>Add an image to the event.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-events/screenshot-9.png?r=533862' alt='wordpress-events screenshot 9' />
		<p>The new user role of "Calendar User".</p>
	</li>
</ol>
<p>Tags: calendar, display, event, events, gig, gigs, google, maps, multiple, sharing, shortcode, users, widget</p>
<p>Changelog-</p>
<h4>0.1</h4>

<ul>
<li>First release</li>
</ul>

<h4>0.2</h4>

<ul>
<li>Major feature upgrades</li>
</ul>

<h4>0.3</h4>

<p>*Fixed date format functions for &#60; php 5.3</p>

<h4>0.4</h4>

<p>*fixed bug causing user id's to not display</p>

<h4>0.5</h4>

<p>*Fixed bug that was showing blank map on pop up</p>

<h4>0.6</h4>

<p>*Minor css issues fixed</p>

<h4>0.7</h4>

<p>*Calendar users now able to view only their own events as well as delete their own events</p>

<h4>0.8</h4>

<p>*added settings page to display author of events</p>

<h4>0.8.1</h4>

<p>*Fix svn update error</p>

<h4>0.8.2</h4>

<p>*damn those fullstops!</p>

<h4>0.8.3</h4>

<p>*Added option to specify the phrase to prepend the author name</p>

<h4>0.8.4</h4>

<p>*date field is now populated with current date and time as leaving it blank causes an error</p>

<h4>0.9</h4>

<p>*MAJOR UPGRADE: Now using ajax to load events rather than inline.</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/wordpress-events/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ChimpPress</title>
		<link>http://fishcantwhistle.com/chimppress/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=chimppress</link>
		<comments>http://fishcantwhistle.com/chimppress/#comments</comments>
		<pubDate>Thu, 22 Dec 2011 14:18:52 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[FCW WordPress Plugins]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=2416</guid>
		<description><![CDATA[Download now or visit on wordpress.org. Total downloads: . Tags: Changelog-]]></description>
			<content:encoded><![CDATA[<p>*** THIS IS A BETA RELEASE ***</p>

<p>ChimpPress provides an interface for creating and managing your MailChimp campaigns without having to leave your WordPress dashboard.</p>

<p>Current features of ChimpPress</p>

<ul>
<li>Create bespoke HTML emails using the intuitive drag and drop editor.</li>
<li>Add padding and colours to specific cells in your email or to the entire campaign.</li>
<li>Select from a number of layout templates and then add multiple rows and columns as needed.</li>
<li>Receive in-depth stats about your campaign.</li>
<li>Manage your subscribers.</li>
</ul>

<p>All you need is a MailChimp account and an API key and you can start creating bespoke html emails!</p>
<p><span id="more-2416"></span></p>
<p><img title="More..." src="http://fishcantwhistle.com/wp-includes/js/tinymce/plugins/wordpress/img/trans.gif" alt="" /></p>
<p><a href="http://downloads.wordpress.org/plugin/chimppress.0.7.zip">Download now</a> or visit <a href="http://wordpress.org/extend/plugins/chimppress/">ChimpPress</a> on wordpress.org.</p>
<p>Total downloads: 882.</p>
<ol>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/chimppress/screenshot-1.png?r=546253' alt='chimppress screenshot 1' />
		<p>Manage your campaigns</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/chimppress/screenshot-2.png?r=546253' alt='chimppress screenshot 2' />
		<p>Add options and layout preferences</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/chimppress/screenshot-3.png?r=546253' alt='chimppress screenshot 3' />
		<p>More layout options</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/chimppress/screenshot-4.png?r=546253' alt='chimppress screenshot 4' />
		<p>Choose from some basic templates</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/chimppress/screenshot-5.png?r=546253' alt='chimppress screenshot 5' />
		<p>Add some content</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/chimppress/screenshot-6.png?r=546253' alt='chimppress screenshot 6' />
		<p>Add an image</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/chimppress/screenshot-7.png?r=546253' alt='chimppress screenshot 7' />
		<p>Added the image!</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/chimppress/screenshot-8.png?r=546253' alt='chimppress screenshot 8' />
		<p>Apply some colour</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/chimppress/screenshot-9.png?r=546253' alt='chimppress screenshot 9' />
		<p>Preview it!</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/chimppress/screenshot-10.png?r=546253' alt='chimppress screenshot 10' />
		<p>Send it!</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/chimppress/screenshot-11.png?r=546253' alt='chimppress screenshot 11' />
		<p>Get some stats about your campaign</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/chimppress/screenshot-12.png?r=546253' alt='chimppress screenshot 12' />
		<p>The email!</p>
	</li>
</ol>
<p>Tags: campaign, drag-and-drop, email, mail chimp, mailout, manage, send, subscribers</p>
<p>Changelog-</p>
<h4>0.1</h4>

<ul>
<li>First release</li>
</ul>

<h4>0.2</h4>

<p>Fixed some security issues and added a feedback page</p>

<h4>0.3</h4>

<p>Fixed 404 error on js files with some WP installations</p>

<h4>0.5</h4>

<p>*Fixed error causing editors to show in emails</p>

<h4>0.6</h4>

<p>*Added functionality that closes editing windows when opening another</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/chimppress/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Getshopped &#8211; Add more details to sales CSV</title>
		<link>http://fishcantwhistle.com/getshopped-add-more-details-to-sales-csv/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=getshopped-add-more-details-to-sales-csv</link>
		<comments>http://fishcantwhistle.com/getshopped-add-more-details-to-sales-csv/#comments</comments>
		<pubDate>Tue, 25 Oct 2011 12:42:27 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[getshopped]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress 3.0]]></category>
		<category><![CDATA[WordPress Development]]></category>
		<category><![CDATA[WordPress Plugins]]></category>
		<category><![CDATA[wp e-commerce]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=2288</guid>
		<description><![CDATA[I have previously showed I added shipping columns to the sales logs page in a ...]]></description>
			<content:encoded><![CDATA[<p>I have previously showed I <a title="GetShopped – Add order without shipping column to sales view" href="http://fishcantwhistle.com/getshopped/getshopped-add-order-without-shipping-column-to-sales-view/">added shipping columns to the sales logs page</a> in a getshopped (Wp-Ecommerce) installation. This was fine but now we need that data to show up in the csv download.</p>
<p>Here&#8217;s how to do it-</p>
<p><span id="more-2288"></span></p>
<p>Open wp-content/plugins/wp-e-commerce/wpsc-admin/ajax-and-init.php and find the function wpsc_purchase_log_csv();</p>
<p>Find this-</p>
<pre>$headers = ""Purchase ID","Purchase Total","; //capture the headers</pre>
<p>And replace it with this-</p>
<pre>$headers = "Purchase ID, Item Price, Item Shipping, Item Total,"; //capture the headers</pre>
<p>A few lines under that you will find the beginning of the foreach loop, which looks like this-</p>
<pre>foreach ( (array)$data as $purchase ) {</pre>
<p>Right after that add this-</p>
<pre>              $purch_item_price = $purchase['totalprice'];

              $price_wo_shipping = $purch_item_price - (float)preg_replace('/[^0-9.]/', '', $purchase['base_shipping']);</pre>
<p>And then below that should be this-</p>
<pre>            $form_headers = '';
            $output .= """ . $purchase['id'] . "","; //Purchase ID
            $output .= """ . $purchase['totalprice'] . "","; //Purchase Total</pre>
<p>Replace it with this-</p>
<pre>            $form_headers = '';
            $output .= """ . $purchase['id'] . "","; //Purchase ID
            $output .= """ . $price_wo_shipping . "","; //Item w/o shipping
            $output .= """ . $purchase['base_shipping'] . "","; //Shipping
            $output .= """ . $purchase['totalprice'] . "","; //Purchase Total</pre>
<p>&nbsp;</p>
<p>And you&#8217;re done!</p>
<p>Have fun!</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/getshopped-add-more-details-to-sales-csv/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>GetShopped &#8211; Add order without shipping column to sales view</title>
		<link>http://fishcantwhistle.com/getshopped-add-order-without-shipping-column-to-sales-view/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=getshopped-add-order-without-shipping-column-to-sales-view</link>
		<comments>http://fishcantwhistle.com/getshopped-add-order-without-shipping-column-to-sales-view/#comments</comments>
		<pubDate>Thu, 06 Oct 2011 13:19:06 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[getshopped]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress 3.0]]></category>
		<category><![CDATA[WordPress Development]]></category>
		<category><![CDATA[WordPress Plugins]]></category>
		<category><![CDATA[wp e-commerce]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=2283</guid>
		<description><![CDATA[The sales view in the wp-ecommerce (GetShopped) is great but it will show you the ...]]></description>
			<content:encoded><![CDATA[<p>The sales view in the wp-ecommerce (GetShopped) is great but it will show you the total price of an order rather than the price without shipping, the shipping, and the total.</p>
<p>To introduce this functionality you do have to hack the plugin files, but there is not another way as I can not see any hooks I could make use of. If I have missed one, please do let me know!</p>
<p><span id="more-2283"></span></p>
<p>Here is what you need to do-</p>
<p>Open &#8216;plugins/wp e-commerce/wpsc-admin/display-sales-logs.php&#8217;, go to around line 75 and find this-</p>
<pre>         if(!isset($_REQUEST['purchaselog_id'])){
            $columns = array(
               'cb' =&gt; '&lt;input type="checkbox" /&gt;',
               'purchid' =&gt; __( 'Order ID', 'wpsc' ),
               'date' =&gt; __( 'Date / Time', 'wpsc' ),
               'name' =&gt; '',
               'amount' =&gt; __( 'Amount', 'wpsc' ),
               'details' =&gt; __( 'Details', 'wpsc' ),
               'status' =&gt; __( 'Status', 'wpsc' ),
               'delete' =&gt; __( 'Delete', 'wpsc' ),
               'track' =&gt; __( 'Tracking ID', 'wpsc' )
            );</pre>
<pre></pre>
<p>Change it to this-</p>
<pre>         if(!isset($_REQUEST['purchaselog_id'])){
            $columns = array(
               'cb' =&gt; '&lt;input type="checkbox" /&gt;',
               'purchid' =&gt; __( 'Order ID', 'wpsc' ),
               'date' =&gt; __( 'Date / Time', 'wpsc' ),
               'name' =&gt; '',
               'pricewoshipping' =&gt; __( 'Price w/o Shipping', 'wpsc' ),
               'shipping' =&gt; __( 'Shipping', 'wpsc' ),
               'amount' =&gt; __( 'Total', 'wpsc' ),
               'details' =&gt; __( 'Details', 'wpsc' ),
               'status' =&gt; __( 'Status', 'wpsc' ),
               'delete' =&gt; __( 'Delete', 'wpsc' ),
               'track' =&gt; __( 'Tracking ID', 'wpsc' )
            );</pre>
<pre></pre>
<p>I have added in two new columns and also changed the Amount column name to Total. Then go to around line 452. You&#8217;re looking for the function called get_purchaselogs_content(). You will see a while statement that starts like this-</p>
<pre>   while(wpsc_have_purch_items()) : wpsc_the_purch_item();
   ?&gt;
   &lt;tr&gt;
      &lt;th class="check-column" scope="row"&gt;&lt;input type='checkbox' name='purchlogids[]' class='editcheckbox' value='&lt;?php echo wpsc_the_purch_item_id(); ?&gt;' /&gt;&lt;/th&gt;
      &lt;td&gt;&lt;?php echo wpsc_the_purch_item_id(); ?&gt;&lt;/td&gt;&lt;!-- purchase ID --&gt;
      &lt;td&gt;&lt;?php echo wpsc_the_purch_item_date(); ?&gt;&lt;/td&gt; &lt;!--Date --&gt;
      &lt;td&gt;&lt;?php echo wpsc_the_purch_item_name(); ?&gt;&lt;/td&gt; &lt;!--Name/email --&gt;</pre>
<p>After the Name/email &lt;td&gt; is where we will put our new column data.</p>
<p>First, we have to calculate the price without shipping. Do that like this-</p>
<pre>      &lt;?php

       $purch_item_price = wpsc_the_purch_item_price();

      $price_wo_shipping = $purch_item_price - (float)preg_replace('/[^0-9.]/', '', wpsc_display_purchlog_shipping());

      ?&gt;</pre>
<p>Then you can add the table cell to display it-</p>
<pre>&lt;td&gt;&lt;?php echo wpsc_currency_display( $price_wo_shipping ); ?&gt;&lt;/td&gt;&lt;!-- Price w/o shipping --&gt;</pre>
<p>Then add the next custom column-</p>
<pre>&lt;td&gt;&lt;?php echo wpsc_display_purchlog_shipping(); ?&gt;&lt;/td&gt;&lt;!-- Shipping --&gt;</pre>
<p>And finally update the amount column- (you have to do this one because calling wpsc_the_purch_item_price() multiple times will add to your total. Which is not good.)</p>
<pre>&lt;td&gt;&lt;?php echo wpsc_currency_display( $purch_item_price ); ?&gt;&lt;/td&gt;&lt;!-- Amount --&gt;</pre>
<p>And we&#8217;re done! Nice and simple and now you/your clients can have a more informative first view of their sales.</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/getshopped-add-order-without-shipping-column-to-sales-view/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>New version of WordPress Gallery</title>
		<link>http://fishcantwhistle.com/new-version-of-wordpress-gallery/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=new-version-of-wordpress-gallery</link>
		<comments>http://fishcantwhistle.com/new-version-of-wordpress-gallery/#comments</comments>
		<pubDate>Mon, 03 Oct 2011 07:38:28 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress 3.0]]></category>
		<category><![CDATA[WordPress Development]]></category>
		<category><![CDATA[WordPress Plugins]]></category>
		<category><![CDATA[drag and drop]]></category>
		<category><![CDATA[galley]]></category>
		<category><![CDATA[order]]></category>
		<category><![CDATA[pager]]></category>
		<category><![CDATA[slider]]></category>
		<category><![CDATA[thumbnails]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/wordpress-3-0/new-version-of-wordpress-gallery/</guid>
		<description><![CDATA[Version 0.6 of WordPress Gallery is now available! It&#8217;s always nice to see my plugin ...]]></description>
			<content:encoded><![CDATA[<p>Version 0.6 of WordPress Gallery is now available!</p>
<p>It&#8217;s always nice to see my plugin on the front page of WordPress plugins. Even if it is only in the recently updated section!</p>
<p>Two massive new features have been introduced in the latest version-</p>
<p><span id="more-2280"></span></p>
<p>Links per images.<br />
You can now specify a link for each image to link to on click. Great for people using the gallery as a featured content slider. Only thing to watch here is that you don&#8217;t have the lightbox option switched on. If you do, the lightbox will take precedence.</p>
<p>Drag and drop order.<br />
Now you can order the images by simply dragging them in to the order you would like in the admin page. Go to Gallery then simply drag ad drop your images!</p>
<p>Please let me know of any bugs or feedback!</p>
<p><a href="http://fishcantwhistle.com/wp-content/uploads/2011/10/20111003-083413.jpg"><img class="alignnone " style="border-style: initial; border-color: initial;" src="http://fishcantwhistle.com/wp-content/uploads/2011/10/20111003-083413.jpg" alt="20111003-083413.jpg" width="384" height="576" /></a></p>
<p>Have fun!</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/new-version-of-wordpress-gallery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Is WordPress good enough for my site?</title>
		<link>http://fishcantwhistle.com/is-wordpress-good-enough-for-my-site/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=is-wordpress-good-enough-for-my-site</link>
		<comments>http://fishcantwhistle.com/is-wordpress-good-enough-for-my-site/#comments</comments>
		<pubDate>Wed, 03 Aug 2011 14:33:24 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress 3.0]]></category>
		<category><![CDATA[WordPress Development]]></category>
		<category><![CDATA[WordPress Plugins]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[Scaling]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=2202</guid>
		<description><![CDATA[Quite often I have people asking whether or not WordPress can handle their large site. ...]]></description>
			<content:encoded><![CDATA[<p>Quite often I have people asking whether or not WordPress can handle their large site. They have very genuine concerns that WordPress can not handle things like scaling and caching and large visitor loads.</p>
<p>Whether you are performing due diligence or just wondering what WordPress can do, the below should be quite useful to you.</p>
<p>Its always best to lead by example right! So here we go!</p>
<p>A whole bunch of sites with massive user bases use WordPress. Here are a few-</p>
<p><a href="http://tutsplus.com/" target="_blank">http://tutsplus.com/</a> &#8211; A HUUUGE site with thousands of articles, media and users. Alexa rank 591</p>
<p><a href="http://freelanceswitch.com/" target="_blank">http://freelanceswitch.com/</a> &#8211; I use this site a lot! Both the site and the jobs board are powered by WordPress. Alexa rank 5,813</p>
<p><a href="http://mac.appstorm.net/" target="_blank">http://mac.appstorm.net/</a> &#8211; Another site with a huge following. Alexa rank 5,856</p>
<p><a href="http://wiki.envato.com/" target="_blank">http://wiki.envato.com/</a> &#8211; The wiki for the ginormous envato market place. Alexa rank 4,101</p>
<p><a href="http://workawesome.com/" target="_blank">http://workawesome.com/</a> &#8211; A blog but a large blog nonetheless. Alexa rank 31, 945</p>
<p><a href="http://blog.themeforest.net/" target="_blank">http://blog.themeforest.net/</a> &#8211; The blog for themeforest, possibly the largest template site on the net. A huge following. Alexa rank 287</p>
<p>With large sites caching is very important. Querying the database as few times as possible and only doing so when cached content is not available is crutial for a large site. Serving users static html rather than server intensive php powered by goodness knows how many DB queries saves a tonne in terms of server resources and site responsiveness. WordPress already has numerous plugins for this. The best two are <a href="http://wordpress.org/extend/plugins/wp-super-cache/" target="_blank">WP Super Cache</a> and <a href="http://wordpress.org/extend/plugins/w3-total-cache/" target="_blank">W3 Total Cache</a>.</p>
<p><a href="http://codex.wordpress.org/High_Traffic_Tips_For_WordPress" target="_blank">http://codex.wordpress.org/High_Traffic_Tips_For_WordPress</a> is a really good read straight from the WordPress mouth about the capabilities of WordPress. For me, the overriding message from that page is that it is more about the hardware behind the site than the software serving the site.</p>
<p>37 signals (the makers of Basecamp and other very successful web apps) wrote this very honest and wise piece.</p>
<p><a href="http://gettingreal.37signals.com/ch04_Scale_Later.php" target="_blank">http://gettingreal.37signals.com/ch04_Scale_Later.php</a></p>
<p>Basecamp is probably the most successful online project management tool out there and they openly admit that precious time is lost worrying about problems that may never occur. And when they do occur it is optimal to fix them and tweak the set up as they happen.</p>
<p>As they say -</p>
<blockquote><p>In the beginning, make building a solid core product your priority instead of obsessing over scalability and server farms. Create a great app and then worry about what to do once it&#8217;s wildly successful. Otherwise you may waste energy, time, and money fixating on something that never even happens.</p></blockquote>
<p>Another brilliantly honest article from the same guys-</p>
<p><a href="http://37signals.com/svn/archives2/dont_scale_99999_uptime_is_for_walmart.php" target="_blank">http://37signals.com/svn/archives2/dont_scale_99999_uptime_is_for_walmart.php</a></p>
<p>Edublogs is one of the most successful education based blogging platforms and they use WordPress MU (multi-user). Here is an in depth (and quite geeky) article on the set up of that system.</p>
<p><a href="http://wpmu.org/scaling-wordpress-wpmu-buddypress-like-edublogs/" target="_blank">http://wpmu.org/scaling-wordpress-wpmu-buddypress-like-edublogs/</a></p>
<p>Matt Mullenweg, the founder of WordPress made an interesting response to somebody moving their site to drupal from WordPress after getting to 200,000 hits per day. He offers some sound advice-</p>
<p><a href="http://webdevnews.net/2008/12/mullenweg-scale-wordpress-to-20000000-views-per-day-for-100-pmonth/" target="_blank">http://webdevnews.net/2008/12/mullenweg-scale-wordpress-to-20000000-views-per-day-for-100-pmonth/</a></p>
<p>&#8220;Barry&#8221; is the &#8220;Chief Systems Wrangler&#8221; at automattic (the people behind wordpress, askimet, vaultpress and IntenseDebate) and he wrote this article about hyperDB -</p>
<p><a href="http://barry.wordpress.com/2011/07/20/hyperdb-lag-detection/" target="_blank">http://barry.wordpress.com/2011/07/20/hyperdb-lag-detection/</a></p>
<p>Essentially what he is saying is that using hyperDB (<a href="http://wordpress.org/extend/plugins/hyperdb/" target="_blank">found here http://wordpress.org/extend/plugins/hyperdb/</a>) enables huge sites to effectively and sparingly use DB queries to further optimise a high traffic volume and user interaction site. Read more from &#8220;Barry&#8221; on scaling here <a href="http://barry.wordpress.com/category/scaling/" target="_blank">http://barry.wordpress.com/category/scaling/</a></p>
<p>The only other thing I will add is that words like &#8220;blog&#8221;, &#8220;theme&#8221; and &#8220;plugin&#8221; are used a lot with WordPress. Do not be put off by them! WordPress started out life as a blogging platform and it has struggled to shift that association. In truth, WordPress is actually an extremely powerful Content Management System with a highly intuitive and extensive API. Plugins are essentially little (or large) packages that add extra functionality to a WordPress install. Themes define the look of your site. They contain all the client side code and it is in themes that a design of a site is held.</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/is-wordpress-good-enough-for-my-site/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Add Links to Pages</title>
		<link>http://fishcantwhistle.com/add-links-to-pages/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=add-links-to-pages</link>
		<comments>http://fishcantwhistle.com/add-links-to-pages/#comments</comments>
		<pubDate>Tue, 26 Jul 2011 14:31:23 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[FCW WordPress Plugins]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=2191</guid>
		<description><![CDATA[Download now or visit on wordpress.org. Total downloads: . Tags: Changelog-]]></description>
			<content:encoded><![CDATA[<p>Easily display page specific links on any page or post by quickly adding a link directly from the add/edit page/post screen.</p>

<p>Delete links by clicking the trashcan next to the link.</p>

<p>Supports adding URL, name, target and description.</p>
<p><span id="more-2191"></span></p>

<p><a href="http://downloads.wordpress.org/plugin/add-links-to-pages.0.2.zip">Download now</a> or visit <a href="http://wordpress.org/extend/plugins/add-links-to-pages/">Add Links to Pages</a> on wordpress.org.<br />
Total downloads: 4,556.</p>
<ol>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/add-links-to-pages/screenshot-1.png?r=546253' alt='add-links-to-pages screenshot 1' />
		<p>The new section that is added to the add/edit page screen.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/add-links-to-pages/screenshot-2.png?r=546253' alt='add-links-to-pages screenshot 2' />
		<p>Add at least a url and name and hit "Add link". Your link then shows up at the bottom of this section.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/add-links-to-pages/screenshot-3.png?r=546253' alt='add-links-to-pages screenshot 3' />
		<p>Multiple links are no problem and the handy trash icon allows you to quickly delete a link.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/add-links-to-pages/screenshot-4.png?r=546253' alt='add-links-to-pages screenshot 4' />
		<p>Choose the widget titled "Add links to page".</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/add-links-to-pages/screenshot-5.png?r=546253' alt='add-links-to-pages screenshot 5' />
		<p>The widget! Add a title of your choosing.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/add-links-to-pages/screenshot-6.png?r=546253' alt='add-links-to-pages screenshot 6' />
		<p>The widget will render in style with your site perfectly.</p>
	</li>
</ol>
<p>Tags: add, link, links, page, pages, specific, widget</p>
<p>Changelog-</p>
<h4>0.1</h4>

<ul>
<li>First release</li>
</ul>

<h4>0.2</h4>

<p>*Added option to add links to posts as well as pages</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/add-links-to-pages/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Hana FLV Extension</title>
		<link>http://fishcantwhistle.com/hana-flv-extension/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=hana-flv-extension</link>
		<comments>http://fishcantwhistle.com/hana-flv-extension/#comments</comments>
		<pubDate>Thu, 14 Jul 2011 16:36:58 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[FCW WordPress Plugins]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=1852</guid>
		<description><![CDATA[*** You must have the Hana FLV Player plugin installed and activated for this plugin ...]]></description>
			<content:encoded><![CDATA[<p>This plugin extends the capabilities of the Hana FLV Player plugin.</p>

<p>It allows users to upload their FLV files directly through the Tiny MCE button rather than having to copy and paste a URL.</p>

<p>It also adds a new meta box to posts and pages which allows the user to save the same data but as post meta. This can then be called from within a theme from a simple function.</p>
<p><span id="more-1852"></span></p>

<p>*** You must have the Hana FLV Player plugin installed and activated for this plugin to work. ***</p>
<p><a href="http://downloads.wordpress.org/plugin/hana-flv-extension.0.2.zip">Download now</a> or visit <a href="http://wordpress.org/extend/plugins/hana-flv-extension/">Hana FLV Extension</a> on wordpress.org.<br />
Total downloads: 2,459.</p>
<ol>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/hana-flv-extension/screenshot-1.png?r=546253' alt='hana-flv-extension screenshot 1' />
		<p>The metabox that is added to all post and page write screens.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/hana-flv-extension/screenshot-2.png?r=546253' alt='hana-flv-extension screenshot 2' />
		<p>The new upload buttons added to the original Hana FLV plugin.</p>
	</li>
</ol>
<p>Tags: extension, flv, hana, hana flv, integration, media library, upload</p>
<p>Changelog-</p>
<h4>0.1</h4>

<ul>
<li>First release</li>
</ul>

<h4>0.2</h4>

<p>*Added fix for 500 error on js file</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/hana-flv-extension/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>WordPress Gallery</title>
		<link>http://fishcantwhistle.com/wordpress-gallery/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wordpress-gallery</link>
		<comments>http://fishcantwhistle.com/wordpress-gallery/#comments</comments>
		<pubDate>Thu, 14 Jul 2011 16:32:15 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[FCW WordPress Plugins]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=1846</guid>
		<description><![CDATA[Download now or visit on wordpress.org. Total downloads: . Tags: Changelog-]]></description>
			<content:encoded><![CDATA[<p>WordPress gallery provides a simple interface for uploading images, editing them and having them displayed on the front end of your site via a shortcode or a function call.</p>

<p>The front end gallery can be configured in the following ways-</p>

<ul>
<li>Height and width of your gallery.</li>
<li>Transition effect.</li>
<li>Transition time.</li>
<li>Optional lightbox effect to original image.</li>
<li>Choose whether or not to display a "pager" which can contain nothing (just empty squares), numbers or thumbnails. Thumbnail sizes are configurable.</li>
<li>Order the images by dragging them.</li>
</ul>

<p>Uploading images is done through a simple interface that allows you to upload multiple images at once (only limited by your server's execution time and maximum file size). You can then edit the image to adjust crop, scale and rotation. Any changes you make to an image can be easily reverted back to the original image at any time.</p>

<p>If you have an Amazon S3 account your images will be uploaded there saving bandwidth and storage costs.</p>
<p><span id="more-1846"></span></p>

<p><a href="http://downloads.wordpress.org/plugin/wordpress-gallery.0.8.zip">Download now</a> or visit <a href="http://wordpress.org/extend/plugins/wordpress-gallery/">WordPress Gallery</a> on wordpress.org.<br />
Total downloads: 18,219.</p>
<ol>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-gallery/screenshot-1.png?r=533857' alt='wordpress-gallery screenshot 1' />
		<p>The main admin page which shows options to add a new image and view and edit images currently in the gallery.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-gallery/screenshot-2.png?r=533857' alt='wordpress-gallery screenshot 2' />
		<p>Edit any image in your gallery at any time.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-gallery/screenshot-3.png?r=533857' alt='wordpress-gallery screenshot 3' />
		<p>Upload multiple images.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-gallery/screenshot-4.png?r=533857' alt='wordpress-gallery screenshot 4' />
		<p>The new menu item is conveniently placed below your current Media menu item.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-gallery/screenshot-5.png?r=533857' alt='wordpress-gallery screenshot 5' />
		<p>The main settings page.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-gallery/screenshot-6.png?r=533857' alt='wordpress-gallery screenshot 6' />
		<p>A plethora of options are available for the transitions between images.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-gallery/screenshot-7.png?r=533857' alt='wordpress-gallery screenshot 7' />
		<p>Choose the type of pager and how it is displayed.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-gallery/screenshot-8.png?r=533857' alt='wordpress-gallery screenshot 8' />
		<p>The gallery using thumbnails in the pager.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-gallery/screenshot-9.png?r=533857' alt='wordpress-gallery screenshot 9' />
		<p>The gallery using numbers in the pager.</p>
	</li>
	<li>
		<img class='screenshot' src='http://s.wordpress.org/extend/plugins/wordpress-gallery/screenshot-10.png?r=533857' alt='wordpress-gallery screenshot 10' />
		<p>The gallery using the "nothing" option for the pager.</p>
	</li>
</ol>
<p>Tags: amazon, galleries, gallery, image, jquery, s3, slideshow</p>
<p>Changelog-</p>
<h4>0.1</h4>

<ul>
<li>First release</li>
</ul>

<h4>0.4</h4>

<ul>
<li>Fixed links menu being hidden.</li>
</ul>

<h4>0.41</h4>

<ul>
<li>Added an extra shortcode as there is a conflict with the default gallery short code. Users can now use [wp-gallery] as well as [gallery] :-)</li>
</ul>

<h4>0.5</h4>

<ul>
<li>WordPress Gallery now supports the pager effect and can be configured to show blank shapes, numbers or thumbnails.</li>
</ul>

<h4>0.5.1</h4>

<ul>
<li>Added helpful info buttons. :-)</li>
</ul>

<h4>0.6</h4>

<ul>
<li>Added ability to drag the images to define the front end dispel order.</li>
</ul>

<h4>0.6.1</h4>

<p>Fixed bug with update_order.php working</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/wordpress-gallery/feed/</wfw:commentRss>
		<slash:comments>46</slash:comments>
		</item>
		<item>
		<title>WP E-commerce &#8211; Image previews to change on hover</title>
		<link>http://fishcantwhistle.com/wp-e-commerce-image-previews-to-change-on-hover/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wp-e-commerce-image-previews-to-change-on-hover</link>
		<comments>http://fishcantwhistle.com/wp-e-commerce-image-previews-to-change-on-hover/#comments</comments>
		<pubDate>Mon, 06 Jun 2011 17:07:14 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[getshopped]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[WordPress 3.0]]></category>
		<category><![CDATA[WordPress Development]]></category>
		<category><![CDATA[WordPress Plugins]]></category>
		<category><![CDATA[wp e-commerce]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=1744</guid>
		<description><![CDATA[Hi All, Another fix ive had to implement whilst working with WP E-Commerce. This time ...]]></description>
			<content:encoded><![CDATA[<div>
<p>Hi All,</p>
<p>Another fix ive had to implement whilst working with WP E-Commerce. This time to add functionality so that when thumbnails (from gold cart gallery) are hovered over, the main image preview changes. This also will update the main preview image so that when clicked the correct large image pops up.</p>
<p>You must add this code AFTER the thumbnails have been generated. For me that was at the very bottom of wpsc-single_product.php after</p>
<pre><code>&lt;/div&gt;&lt;!--close single_product_page_container--&gt;</code></pre>
<p>Here&#8217;s the code to add-</p>
<pre><code>&lt;script&gt; jQuery(".attachment-gold-thumbnails").each(function () { jQuery(this).css("cursor", "pointer"); var large_preview = jQuery(this).parent().attr("rev"); var even_larger_preview = jQuery(this).parent().attr("href"); var preview_title = jQuery(this).parent().attr("rel"); jQuery(this).hover( jQuery(this).mouseover(function() { jQuery(".product_image").attr("src", large_preview); jQuery(".product_image").parent().attr("href", even_larger_preview); jQuery(".product_image").parent().attr("rel", preview_title); }) ); }); &lt;/script&gt;</code></pre>
<p>It also takes the magnifying glass cursor off the thumbnails and replaces it with pointer. You can change it to whatever you like really.</p>
<p><strong>NB: I have only tested this with the thickbox image pop up script within WPEC. This is due to it being the only one that works natively within the plugin for me&#8230;</strong><br />
 <img src='http://fishcantwhistle.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/wp-e-commerce-image-previews-to-change-on-hover/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WP E-commerce Category list order and more control&#8230;</title>
		<link>http://fishcantwhistle.com/wp-e-commerce-category-list-order-and-more-control/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wp-e-commerce-category-list-order-and-more-control</link>
		<comments>http://fishcantwhistle.com/wp-e-commerce-category-list-order-and-more-control/#comments</comments>
		<pubDate>Sun, 05 Jun 2011 12:53:49 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[getshopped]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[WordPress Development]]></category>
		<category><![CDATA[WordPress Plugins]]></category>
		<category><![CDATA[wp e-commerce]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=1740</guid>
		<description><![CDATA[So ive been trying to use wpsc functions to control my widget of category listings&#8230; ...]]></description>
			<content:encoded><![CDATA[<p>So ive been trying to use wpsc functions to control my widget of category listings&#8230; not fun. i have very little control over the listings without editing the core files which is something i would rather not do.</p>
<p>There are a number of supposed solutions out there but with the recent change to use wordpress tables rather than wpsc custom tables, at lot of those fixes no longer work.</p>
<p>So my solution has been to just use the already existing WordPress function &#8220;wp_list_categories&#8221;.</p>
<p>Like this</p>
<pre>&lt;?php
 $args = array('taxonomy' =&gt; 'wpsc_product_category', 'orderby' =&gt; 'ID', 'order' =&gt; 'ASC', 'style' =&gt; 'none', 'child_of' =&gt; 15);
 wp_list_categories( $args );
 ?&gt;</pre>
<p>Just put that in your sidebar or wherever else you want to display categories. Forget the widget for category listings, it doesnt allow you enough control. Using the above code will allow you to have control over the following (from <a href="http://codex.wordpress.org/Template_Tags/wp_list_categories" target="_blank">http://codex.wordpress.org/Template_Tags/wp_list_categories</a>)</p>
<pre>&lt;?php $args = array(
 'show_option_all'    =&gt; ,
 'orderby'            =&gt; 'name',
 'order'              =&gt; 'ASC',
 'show_last_update'   =&gt; 0,
 'style'              =&gt; 'list',
 'show_count'         =&gt; 0,
 'hide_empty'         =&gt; 1,
 'use_desc_for_title' =&gt; 1,
 'child_of'           =&gt; 0,
 'feed'               =&gt; ,
 'feed_type'          =&gt; ,
 'feed_image'         =&gt; ,
 'exclude'            =&gt; ,
 'exclude_tree'       =&gt; ,
 'include'            =&gt; ,
 'hierarchical'       =&gt; true,
 'title_li'           =&gt; __( 'Categories' ),
 'show_option_none'   =&gt; __('No categories'),
 'number'             =&gt; NULL,
 'echo'               =&gt; 1,
 'depth'              =&gt; 0,
 'current_category'   =&gt; 0,
 'pad_counts'         =&gt; 0,
 'taxonomy'           =&gt; 'category',
 'walker'             =&gt; 'Walker_Category' ); ?&gt;</pre>
<p>I was using three category widgets but now am simply using this in my sidebar-</p>
<pre>&lt;h2&gt;SHOP BY AGE&lt;/h2&gt;    

 &lt;?php
 $args = array('taxonomy' =&gt; 'wpsc_product_category', 'orderby' =&gt; 'ID', 'order' =&gt; 'ASC', 'style' =&gt; 'none', 'child_of' =&gt; 15);
 wp_list_categories( $args );
 ?&gt;    

 &lt;h2&gt;SHOP BY ARTIST&lt;/h2&gt;    

 &lt;?php
 $args = array('taxonomy' =&gt; 'wpsc_product_category', 'orderby' =&gt; 'ID', 'order' =&gt; 'ASC', 'style' =&gt; 'none', 'child_of' =&gt; 8);
 wp_list_categories( $args );
 ?&gt;    

 &lt;h2&gt;SHOP BY TYPE&lt;/h2&gt;    

 &lt;?php
 $args = array('taxonomy' =&gt; 'wpsc_product_category', 'orderby' =&gt; 'ID', 'order' =&gt; 'ASC', 'style' =&gt; 'none', 'child_of' =&gt; 11);
 wp_list_categories( $args );
 ?&gt;</pre>
<p>Much simpler and allows me absolute control over the order, appearance, depth and exclusions etc.</p>
<p>Its sad the this plugin doesnt have native support for this. maybe because its not needed when we can just use the WordPress functions?&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/wp-e-commerce-category-list-order-and-more-control/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Add related products to wp e-commerce (getshopped) store</title>
		<link>http://fishcantwhistle.com/add-related-products-to-wp-e-commerce-getshopped-store/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=add-related-products-to-wp-e-commerce-getshopped-store</link>
		<comments>http://fishcantwhistle.com/add-related-products-to-wp-e-commerce-getshopped-store/#comments</comments>
		<pubDate>Sun, 05 Jun 2011 00:07:04 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[getshopped]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[WordPress 3.0]]></category>
		<category><![CDATA[WordPress Development]]></category>
		<category><![CDATA[WordPress Plugins]]></category>
		<category><![CDATA[wp e-commerce]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=1735</guid>
		<description><![CDATA[Here is a nice and simple way to enable related products on a single product ...]]></description>
			<content:encoded><![CDATA[<p>Here is a nice and simple way to enable related products on a single product page when using wp e-commerce. There&#8217;s only four steps!</p>
<p>Step one: Download the &#8220;Related Posts&#8221; plugin from <a href="http://www.microkid.net/wordpress/related-posts/" target="_blank">http://www.microkid.net/wordpress/related-posts/</a> and install it.</p>
<p>Step two: Set up the plugin and familiarise yourself with the admin panel. <a href="http://www.microkid.net/wordpress/related-posts/" target="_blank">Here is a great place to start.</a></p>
<p>Step three: Insert the following where you want your related products to display (for me this is in the imported wpsc-single_product.php file in my theme folder)-</p>
<pre>MRP_show_related_posts()</pre>
<p>Step four: Change line 450 in microkids-related-posts.php (now in your wp-content/plugins/microkids-related-posts folder)</p>
<p><strong>FROM</strong></p>
<pre>$output .= "&lt;li&gt;&lt;a href="".get_permalink( $related_post-&gt;ID ).""&gt;".$related_post-&gt;post_title."&lt;/a&gt;&lt;/li&gt;n";<strong></strong></pre>
<p><strong>TO</strong></p>
<pre>$output .= "&lt;li&gt;&lt;a href="".get_permalink( $related_post-&gt;ID ).""&gt;&lt;img src="".wpsc_the_product_thumbnail(get_option('product_image_width'),get_option('product_image_height'),$related_post-&gt;ID,'single')."" &gt;&lt;br&gt;".$related_post-&gt;post_title."&lt;/a&gt;&lt;/li&gt;n";<strong></strong></pre>
<p>And you&#8217;re done.<br />
 <img src='http://fishcantwhistle.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/add-related-products-to-wp-e-commerce-getshopped-store/feed/</wfw:commentRss>
		<slash:comments>22</slash:comments>
		</item>
		<item>
		<title>Custom WordPress search with pretty urls</title>
		<link>http://fishcantwhistle.com/custom-wordpress-search-with-pretty-urls/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=custom-wordpress-search-with-pretty-urls</link>
		<comments>http://fishcantwhistle.com/custom-wordpress-search-with-pretty-urls/#comments</comments>
		<pubDate>Mon, 06 Dec 2010 18:13:54 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[WordPress 3.0]]></category>
		<category><![CDATA[wordpress search]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=1654</guid>
		<description><![CDATA[A recent contact of mine recently posted the following question at wordpress.org - Hi everyone, ...]]></description>
			<content:encoded><![CDATA[<p>A recent contact of mine recently posted the following question at <a href="http://wordpress.org/support/topic/rewrite-htaccess-how-change-a-string-for-the-url-and-show-other-content?replies=1" target="_blank">wordpress.org</a> -</p>
<p style="padding-left: 30px;"><em><span style="color: #ffffff;">Hi everyone,</span></em></p>
<p style="padding-left: 30px;"><em><span style="color: #ffffff;">i hope someone here has an idea how to solve this.</span></em></p>
<p style="padding-left: 30px;"><em><span style="color: #ffffff;">I am using a complex plugin combination related to the search engine  in wordpress.</span></em></p>
<p style="padding-left: 30px;"><em><span style="color: #ffffff;">Basically, right now i have a URL like<br />
<a rel="nofollow" href="http://www.test.com/search/key1&amp;key2">http://www.test.com/search/key1&amp;key2</a></span></em></p>
<p style="padding-left: 30px;"><em><span style="color: #ffffff;">Is there any way ( maybe a redirection plugin or htaccess rewrite  rules ) that i can use the URL <a rel="nofollow" href="http://www.test.com/s/key1-key2">http://www.test.com/s/key1-key2</a></span></em></p>
<p style="padding-left: 30px;"><em><span style="color: #ffffff;">and show the content from <a rel="nofollow" href="http://www.test.com/search/key1&amp;key2">http://www.test.com/search/key1&amp;key2</a> ?</span></em></p>
<p style="padding-left: 30px;"><em><span style="color: #ffffff;">I dont want the URL to change, so the user should see the initial  URL, but the plugins ( or WordPress in generall ) should of course use  all informations for the search engine.</span></em></p>
<p style="padding-left: 30px;"><em><span style="color: #ffffff;">Looking forward for your ideas or help.</span></em></p>
<p>So I gave it some thought and figured it could be done using the 404.php template file.</p>
<p>For the inpatient among you, here is the code (it&#8217;s only the first 37 lines that are really of any relevance&#8230;) -</p>
<pre>&lt;?php
$url = $_SERVER['REQUEST_URI'];
if (substr($url,0, 3) == '/s/'){
 $search=substr($url,3);
 $searchitems = explode('-', $search);
 echo "&lt;title&gt;Search results for ";
 $i=0;
 foreach ($searchitems as $value){
 if($i&gt;0){
 $searchkeys .= " &amp; ";
 }
 $searchkeys .=  $value;
 $i++;
 }
 echo $searchkeys;
 echo "&lt;/title&gt;";
 get_header();
 $search_query = new WP_query();
 $search_query-&gt;query("s=$searchkeys"); ?&gt;
 &lt;div id="container"&gt;
 &lt;div id="content" role="main"&gt;
 &lt;?php if ($search_query-&gt;have_posts()) : ?&gt;
 &lt;h1&gt;&lt;?php echo 'Search results for &lt;span&gt;' . $searchkeys . '&lt;/span&gt;'; ?&gt;&lt;/h1&gt;
 &lt;?php while ($search_query-&gt;have_posts()) : $search_query-&gt;the_post();?&gt;
 &lt;h2&gt;&lt;a href="&lt;?php the_permalink(); ?&gt;" title="&lt;?php the_title();  ?&gt;" rel="bookmark"&gt;&lt;?php the_title(); ?&gt;&lt;/a&gt;&lt;/h2&gt;
 &lt;div&gt;
 &lt;?php the_excerpt(); ?&gt;
 &lt;/div&gt;
 &lt;?php endwhile;
 else : ?&gt;
 &lt;h1&gt;Sorry! No posts were found with the term&lt;?php if($i&gt;1){echo 's';} echo '&lt;span&gt; '.$searchkeys.'&lt;/span&gt;'; ?&gt;&lt;/h1&gt;
 &lt;?php endif;
 wp_reset_query();?&gt;
 &lt;/div&gt;
 &lt;/div&gt;

&lt;?php }else{

/**
 * The template for displaying 404 pages (Not Found).
 *
 * @package WordPress
 * @subpackage Twenty_Ten
 * @since Twenty Ten 1.0
 */

get_header(); ?&gt;

 &lt;div id="container"&gt;
 &lt;div id="content" role="main"&gt;

 &lt;div id="post-0"&gt;
 &lt;h1&gt;&lt;?php _e( 'Not Found', 'twentyten' ); ?&gt;&lt;/h1&gt;
 &lt;div&gt;
 &lt;p&gt;&lt;?php _e( 'Apologies, but the page you requested could not be found. Perhaps searching will help.', 'twentyten' ); ?&gt;&lt;/p&gt;
 &lt;?php get_search_form(); ?&gt;
 &lt;/div&gt;&lt;!-- .entry-content --&gt;
 &lt;/div&gt;&lt;!-- #post-0 --&gt;

 &lt;/div&gt;&lt;!-- #content --&gt;
 &lt;/div&gt;&lt;!-- #container --&gt;
 &lt;script type="text/javascript"&gt;
 // focus on search field after it has loaded
 document.getElementById('s') &amp;&amp; document.getElementById('s').focus();
 &lt;/script&gt;

&lt;?php }; ?&gt;

&lt;?php get_footer(); ?&gt;
</pre>
<p>That is the entirety of the 404.php template file.</p>
<p>Lets look at the important bit -</p>
<pre>$url = $_SERVER['REQUEST_URI'];
if (substr($url,0, 3) == '/s/'){
 $search=substr($url,3);
 $searchitems = explode('-', $search);
 echo "&lt;title&gt;Search results for ";
 $i=0;
 foreach ($searchitems as $value){
 if($i&gt;0){
 $searchkeys .= " &amp; ";
 }
 $searchkeys .=  $value;
 $i++;
 }
 echo $searchkeys;
 echo "&lt;/title&gt;";
 get_header();
 $search_query = new WP_query();
 $search_query-&gt;query("s=$searchkeys"); ?&gt;
 &lt;div id="container"&gt;
 &lt;div id="content" role="main"&gt;
 &lt;?php if ($search_query-&gt;have_posts()) : ?&gt;
 &lt;h1&gt;&lt;?php echo 'Search results for &lt;span&gt;' . $searchkeys . '&lt;/span&gt;'; ?&gt;&lt;/h1&gt;
 &lt;?php while ($search_query-&gt;have_posts()) : $search_query-&gt;the_post();?&gt;
 &lt;h2&gt;&lt;a href="&lt;?php the_permalink(); ?&gt;" title="&lt;?php the_title();  ?&gt;" rel="bookmark"&gt;&lt;?php the_title(); ?&gt;&lt;/a&gt;&lt;/h2&gt;
 &lt;div&gt;
 &lt;?php the_excerpt(); ?&gt;
 &lt;/div&gt;
 &lt;?php endwhile;
 else : ?&gt;
 &lt;h1&gt;Sorry! No posts were found with the term&lt;?php if($i&gt;1){echo 's';} echo '&lt;span&gt; '.$searchkeys.'&lt;/span&gt;'; ?&gt;&lt;/h1&gt;
 &lt;?php endif;
 wp_reset_query();?&gt;
 &lt;/div&gt;
 &lt;/div&gt;

&lt;?php }else{
</pre>
<p>Quite simply what that does is look to see if the string &#8216;/s/&#8217; is in the url (as Hamed specified in his question), puts the various keys in to an array, loops the array building the correct argument for the custom query that we then implement using wp_query.</p>
<p>Of course how you get to the url to initialise this code isn&#8217;t in here. That will differ for each person depending on how they are using it. However a simple redirect upon submission of the search form adding the keys to the url would probably be what i would do&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/custom-wordpress-search-with-pretty-urls/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Auto scroll to bottom of DIV &#8211; Javascript</title>
		<link>http://fishcantwhistle.com/auto-scroll-to-bottom-of-div-javascript/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=auto-scroll-to-bottom-of-div-javascript</link>
		<comments>http://fishcantwhistle.com/auto-scroll-to-bottom-of-div-javascript/#comments</comments>
		<pubDate>Mon, 08 Nov 2010 16:23:13 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[javascript]]></category>

		<guid isPermaLink="false">http://fishcantwhistle.com/?p=1649</guid>
		<description><![CDATA[I needed to find an easy way of making a scrollable div be scrolled all ...]]></description>
			<content:encoded><![CDATA[<p>I needed to find an easy way of making a scrollable div be scrolled all the way down to the bottom of the possible space. In this case it was for a shopping cart so the user could straight away see the total of their purchases.</p>
<p><img class="aligncenter size-full wp-image-1650" title="auto scroll to the bottom of a div" src="http://fishcantwhistle.com/wp-content/uploads/2010/11/scroll-bottom.jpg" alt="" width="522" height="692" /></p>
<p>The way I did it was with a little bit of javascript. Here it is-</p>
<pre>window.onload=function () {
     var objDiv = document.getElementById("digitalbasket");
     objDiv.scrollTop = objDiv.scrollHeight;
}
</pre>
<p>Have fun!</p>
]]></content:encoded>
			<wfw:commentRss>http://fishcantwhistle.com/auto-scroll-to-bottom-of-div-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

