<?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>miLienzo.com &#187; Web Design, CSS and SEO</title>
	<atom:link href="http://www.milienzo.com/category/web-design-css-and-seo/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.milienzo.com</link>
	<description>Jason Stone blogs about Web Design, Trends and Weekly Findings</description>
	<lastBuildDate>Wed, 26 Nov 2008 14:40:48 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>How to add custom sites to I Love Social Bookmarking</title>
		<link>http://www.milienzo.com/2008/03/15/how-to-add-custom-sites-to-i-love-social-bookmarking/</link>
		<comments>http://www.milienzo.com/2008/03/15/how-to-add-custom-sites-to-i-love-social-bookmarking/#comments</comments>
		<pubDate>Sat, 15 Mar 2008 13:25:22 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Blogging, WordPress and Themes]]></category>
		<category><![CDATA[Web Design, CSS and SEO]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Plugins]]></category>
		<category><![CDATA[Social Bookmarking]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.milienzo.com/2008/03/15/how-to-add-custom-sites-to-i-love-social-bookmarking/</guid>
		<description><![CDATA[<p></p>
<p>On a recent comment on the I Love Social Bookmarking plugin page, I was asked by shegs of GamersBeyond how to add a custom site to ILSB. Well, as luck would have it, it&#8217;s actually really easy so I will walk through the stages here.</p>
Ingredients

    A social bookmarking site &#8211; there are [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.milienzo.com/wp-content/uploads/2007/09/social_bmarking.jpg" alt="I Love Social Bookmarking" title="I Love Social Bookmarking" class="centered" border="0" height="240" width="480" /></p>
<p>On a recent comment on the <a href="http://www.milienzo.com/wordpress-plugins/i-love-social-bookmarking/" title="I Love Social Bookmarking plugin"><em>I Love Social Bookmarking</em></a> plugin page, I was asked by <a href="http://shegs.gamersbeyond.com/blog/" title="GamersBeyond">shegs of GamersBeyond</a> how to <a href="http://www.milienzo.com/wordpress-plugins/i-love-social-bookmarking/#comment-11716" title="I Love Social Bookmarking">add a custom site to ILSB</a>. Well, as luck would have it, it&#8217;s actually really easy so I will walk through the stages here.</p>
<h2>Ingredients</h2>
<ul>
<li>    A social bookmarking site &#8211; there are millions out there to choose from.</li>
<li>An icon &#8211; I wont describe how to make an icon, but you will need one (preferably PNG) size 20 x 20 pixels.</li>
<li>A submission URL &#8211; each site works slightly differently so you will need to find out the format of how URLs are submitted.</li>
</ul>
<h2>Place the icon and edit the CSS</h2>
<p>This first bit is really easy. Simply put your icon in the plugin includes folder along with all the other icons. Make sure you have named it something sensible.</p>
<p>Next you need to open up the plugin&#8217;s <code>style.css</code> style-sheet (also in the includes folder). See the list of classes that show the background images for each social network site? Add a new one using exactly the same format (replacing &#8216;mysite&#8217; with your chosen site):</p>
<link rel="stylesheet" href="http://www.milienzo.com/wp-content/plugins/codeviewer/codeviewer.css" type="text/css" media="all" />
<ol class="codelist">
<li value="1" class="tab0 odd"><code><span style="color: #6666ff;">.ilsb-mysite</span> <span style="color: #66cc66;">&#123;</span>background-image<span style="color: #3333ff;">:url</span><span style="color: #66cc66;">&#40;</span>mysite<span style="color: #6666ff;">.png</span><span style="color: #66cc66;">&#41;</span>;<span style="color: #66cc66;">&#125;</span></code></li>
</ol>
<h2>Add the site to the PHP array</h2>
<p>This next bit is slightly less easy. But still easy. Open up <code>ilsb.php</code> and scroll down until you find the <code>show_icons</code> array. See the format for how each separate site is defined? Well that&#8217;s right, you need to create a new one using the exact same format which will look something like this.</p>
<link rel="stylesheet" href="http://www.milienzo.com/wp-content/plugins/codeviewer/codeviewer.css" type="text/css" media="all" />
<ol class="codelist">
<li value="1" class="tab0 odd"><code><span style="color: #ff0000;">'show_mysite'</span> =&gt; <a rel="nofollow" href="http://www.php.net/array"><span style="color: #000066;">array</span></a><span style="color: #66cc66;">&#40;</span></code></li>
<li value="2" class="tab16 even"><code><span style="color: #ff0000;">'selected'</span> =&gt; <span style="color: #ff0000;">'on'</span>,</code></li>
<li value="3" class="tab16 odd"><code><span style="color: #ff0000;">'url'</span> =&gt; <span style="color: #ff0000;">'http://www.mysite.com/submit.php?Url=%BLOG_URL%&amp;amp;Title=%BLOG_TITLE%'</span>,</code></li>
<li value="4" class="tab16 even"><code><span style="color: #ff0000;">'title'</span> =&gt; <span style="color: #ff0000;">'Add to MySite'</span>,</code></li>
<li value="5" class="tab16 odd"><code><span style="color: #ff0000;">'anchor'</span> =&gt; <span style="color: #ff0000;">'MySite'</span><span style="color: #66cc66;">&#41;</span>,</code></li>
</ol>
<h2>See. I told you it was easy</h2>
<p>That, ladies and gentlemen, is it. You may need to click the &#8216;Reset Defaults&#8217; button in ILSB admin options screen if it doesn&#8217;t show up immediately.</p>
<p>If you do add any extra sites, do let me know via the comments here or my contact form, and I will consider putting your custom sites in the next release.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.milienzo.com/2008/03/15/how-to-add-custom-sites-to-i-love-social-bookmarking/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Finding the perfect web host for you and your clients</title>
		<link>http://www.milienzo.com/2008/02/07/finding-the-perfect-web-host-for-you-and-your-clients/</link>
		<comments>http://www.milienzo.com/2008/02/07/finding-the-perfect-web-host-for-you-and-your-clients/#comments</comments>
		<pubDate>Thu, 07 Feb 2008 21:41:00 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Web Design, CSS and SEO]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Web Development]]></category>
		<category><![CDATA[Web Hosting]]></category>

		<guid isPermaLink="false">http://www.milienzo.com/2008/02/07/finding-the-perfect-web-host-for-you-and-your-clients/</guid>
		<description><![CDATA[<p></p>
<p>An unfortunate truth for any of us who buy web hosting is that there are a lot more bad hosts than there are good ones. Running a website can be a complicated affair at the best of times but when your site is down more often than it&#8217;s up, customer support takes days to respond [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.milienzo.com/wp-content/uploads/2008/02/maitre_d.jpg" alt="Maitre D' Host" title="Maitre D' Host" class="centered" border="0" height="300" width="480" /></p>
<p>An unfortunate truth for any of us who buy web hosting is that there are a lot more bad hosts than there are good ones. Running a website can be a complicated affair at the best of times but when your site is down more often than it&#8217;s up, customer support takes days to respond to queries, and when they do they respond with a suspiciously East-European grasp of the English language, it can be excruciating.</p>
<p>I&#8217;ve been through more hosts than I care to count and most of them were rubbish. However, through my trials and tribulations I have stumbled across one or two good&#8217;uns so I feel I should share my story and pose one or two of the questions that you should ask yourself when searching for a<br />
new host.</p>
<h2>It&#8217;s not good to share</h2>
<p>Anyone who has ever hosted a website will at some point have used a budget-priced shared hosting package of some sort. Priced from a few quid a month upwards, there are some amazing deals to be found. Unfortunately the shared arena is also the one most wrought with cowboys, bedroom hosts, and promises that simply can&#8217;t be delivered.</p>
<p>If one host is offering 1,500 GB of storage and 15,000 GB of bandwidth you can bet your bottom dollar there is another host offering even more. With some top of the range dedicated server packages offering only a fraction of that storage and bandwidth you have to ask how it all adds up? A typical shared host contends hundreds of customers on one server, so do the maths.</p>
<p>The fact is it doesn&#8217;t add up. The big flashy numbers are designed to sell, not provide. A shared host can not and will not ever provide that level of storage or bandwidth &#8211; ask anyone who&#8217;s ever suffered the Digg effect on their shared hosted blog!</p>
<p>In reality, if a shared hosting package is the most appropriate solution for you (and for the vast majority of people <em>it is</em> the most appropriate) then I would be very surprised if you needed 10 GB of storage, let alone 1,500 GB. And 50 GB of bandwidth is more than enough for most small to medium sized blogs.</p>
<p>When buying shared hosting don&#8217;t be suckered in by the unrealistic headline figures and remember the old truism &#8220;you get what you pay for&#8221; has rarely been truer. Sites like <a href="http://www.webhostmagazine.com/" title="Webhost Magazine">Webhost Magazine</a> and <a href="http://webhostinggeeks.com/" title="Web Hosting Geeks">Web Hosting Geeks</a> provide users&#8217; reviews from their hosting experiences, and whilst it must be remembered that people like to complain a lot more than they do compliment, these sites should help you avoid the worst of the bunch.</p>
<p>Out of the many shared hosts I&#8217;ve tried, I will only reserve a mention for one: <a href="http://www.lunarpages.com/" title="Lunarpages">Lunarpages</a>. This site, <strong>miLienzo.com</strong> was with them all of last year and as far as I&#8217;m aware there was never any downtime and the site held up well under one very significant wave of traffic from a Stumbling and a Digg.</p>
<h2>Virtual private servers</h2>
<p>A virtual private server (VPS) is the next logical step for those who feel that maybe they&#8217;ve outgrown their basic shared host, or as is my case, you want to offer hosting as an added service to your clients.</p>
<p>A VPS is still essentially a shared environment. However, rather than being bundled in with the world and his dog, a VPS host generally contends from 4 to 16 customers on one server. What&#8217;s more is you also get many of the advanced features that a dedicated server provides: root SSH access, cron jobs, the ability to install custom applications.</p>
<p>Whilst it&#8217;s still possible to get a bad neighbour who abuses the server and affects the quality of your service, a good host will look out for this and move heavy users onto less contended machines to spread the load.</p>
<p>Prices for VPS hosts can range massively from £10 a month to £100 a month. As always, the more you pay the more you get in terms of storage, bandwidth and memory. The key with choosing a VPS lies in memory use. Generally you will be allocated a guaranteed memory limit and a non-guaranteed burstable limit. The theory is that your guaranteed memory is yours and yours only; the burstable limit is there if you need it but is shared amongst your follow customers so cannot be guaranteed.</p>
<p>It&#8217;s bad news if your memory usage is constantly above your guaranteed limit, which at entry level VPS plans is normally 256 MB. Unfortunately two or three WordPress blogs or Joomla sites can quickly eat into that so depending on how many sites you plan on hosting you may need to upgrade to a more expensive plan.</p>
<p><a href="http://www.servint.net/index.php?refid=DCA302038841"><img src="http://img.servint.net/125x125a.gif" class="alignright" border="0" /></a>I made the move to VPS at the beginning of this year and I&#8217;m delighted with the move. Hopefully you will have noticed the massively improved speed of this site, and now I can resell hosting to my web design clients. After MUCH research I opted for <a href="http://www.servint.net/index.php?refid=BFF021202781" title="ServInt Internet Services">Servint.net</a> and I&#8217;m very happy with my decision. Their support is fantastic and very fast and I am yet to find anyone who has a bad word to say about them.</p>
<p>I completely unashamedly link to them using an affiliate link &#8211; something I never do &#8211; because I really do recommend them! <a href="http://www.servint.net/index.php?refid=BFF021202781" title="ServInt Internet Services">Check out Servint.net for their range of VPS solutions</a>.</p>
<h2>Dedication is all you need&#8230;</h2>
<p>&#8230; or so Roy Castle would have you believe. Because once you&#8217;ve got several dozen big clients on your books, or one of your sites is generating a million page views a month, it&#8217;s more than likely that you&#8217;ll have outgrown your VPS and need a dedicated server.</p>
<p>A dedicated server is exactly that &#8211; a server that sits in a rack in some data-centre that is all yours. But be warned, a dedicated server is not for the feint-hearted. Once your server is switched on it is up to you to log into your server using SSH, configure it and install whatever is necessary to make it do what you want it to. There are more expensive managed solutions available where some of responsibility of administering the system is taken off of your hands, but either way you still need to know what you&#8217;re doing.</p>
<p>Prices for dedicated hosts vary from the £30 a month range right up to eye-watering four figure fees. With a dedicated server the more you pay the more you get in terms of memory, CPU, storage, etc. It&#8217;s worth paying attention to your host&#8217;s connection to the Internet &#8211; I&#8217;ve seen some cheaper dedicated hosts offering a 10 MB connection to the Internet which is going to struggle under a Digg. Look for at least a 100 MB connection.</p>
<p>The other point to bare in mind is the quality of support. If you&#8217;re having difficulties getting your server up and running yourself (happens quite often with me) and you need to turn to support, what is the response going to be like? Are you going to have a friendly and helpful conversation or is it going to be excruciatingly long-winded where everything support suggests involves you paying them money to do some work?</p>
<p>One UK host I&#8217;ve been working with is <a href="http://www.rapidswitch.com/" title="Rapid Switch">Rapid Switch</a> who boast the fastest network in the UK and one of the fastest in Europe. My experience of their support has not been fantastic but you can&#8217;t argue with their prices or the speed of their network.</p>
<h2>Conclusions</h2>
<p>Finding a host is not an easy business. The important thing is know what you need from a host, look to match those criteria, and then do your research. Find out what other people are saying about the host you have your eye on &#8211; is everyone complaining about their constant downtime and hideous customer service, or are loyal customers singing their praises?</p>
<p>Once you&#8217;ve made you choice, what guarantees have you got? A 99.9% up-time guarantee is an absolute minimum. Also, are you locking yourself into a twelve month contract or can you up sticks and move at any time. If the latter I suggest moving your sites over slowly so you can test and monitor the impact each site is having on your server&#8217;s performance.</p>
<h3>What have your hosting experiences been like?</h3>
<p>I&#8217;ve told you about some of the hosts I&#8217;ve had success with &#8211; what about you? Who would you recommend and why? What sort of things do you look out for when choosing a host?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.milienzo.com/2008/02/07/finding-the-perfect-web-host-for-you-and-your-clients/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>What do you make of this PageRank hullabaloo?</title>
		<link>http://www.milienzo.com/2007/10/28/what-do-you-make-of-this-pagerank-hullabaloo/</link>
		<comments>http://www.milienzo.com/2007/10/28/what-do-you-make-of-this-pagerank-hullabaloo/#comments</comments>
		<pubDate>Sat, 27 Oct 2007 23:08:38 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Blogging, WordPress and Themes]]></category>
		<category><![CDATA[Web Design, CSS and SEO]]></category>
		<category><![CDATA[DoFollow]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[PageRank]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[Spam]]></category>
		<category><![CDATA[Text Link Ads]]></category>

		<guid isPermaLink="false">http://www.milienzo.com/2007/10/28/what-do-you-make-of-this-pagerank-hullabaloo/</guid>
		<description><![CDATA[<p></p>
<p>Even the less observant amongst us wont fail to have noticed the recent disquiet emanating from the blogosphere concerning that little green bar we all love to hate. One minute it&#8217;s down, the next it&#8217;s up, leaving many bloggers in something of a stir.</p>
<p>For the benefit of those oblivious, here&#8217;s a quick recap:</p>

At the end [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.milienzo.com/wp-content/uploads/2007/10/hullabaloo.jpg" alt="PageRank hullbaloo" title="PageRank hullbaloo" class="centered" border="0" height="300" width="480" /></p>
<p>Even the less observant amongst us wont fail to have noticed the recent <a href="http://www.problogger.net/archives/2007/10/26/competition-create-a-slogan-for-bloggers-hit-by-the-page-rank-slam-of-october-07/" title="Competition: Create a Slogan for Bloggers Hit by the Page Rank Slam of October 07">disquiet emanating from the blogosphere</a> concerning that little green bar we all love to hate. One minute it&#8217;s down, the next it&#8217;s up, leaving many bloggers in something of a stir.</p>
<p>For the benefit of those oblivious, here&#8217;s a quick recap:</p>
<ul>
<li>At the end of September David Airey <a href="http://www.davidairey.com/google-search-ranking-penalty-david-airey/" title="Google search rank drop: advice needed">reported being punished by Google</a> for selling text link ads and trying to game search engine positioning. As far as I&#8217;m aware David didn&#8217;t actually take a PR hit put was being positioned a lot lower in search results than he should have been. David subsequently <a href="http://www.davidairey.com/how-i-reversed-my-google-ranking-penalty/" title="How I reversed my Google ranking penalty">had his penalty reversed</a> by generally being quite mature and sensible (removing the offending links and kissing big G&#8217;s ass <img src='http://www.milienzo.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  ).</li>
<li>Early October Andy Beard confirmed that <a href="http://andybeard.eu/2007/10/penalty-confirmed-but-i-dont-sell-pagerank.html" title="Penalty Confirmed - But I Don't Sell PageRank">Google were applying PageRank deductions</a> to some blogs. Andy&#8217;s very SEO-savvy community speculated that the deductions were related to selling text link ads and possibly doing paid reviews.</li>
<li>Last Thursday it seemed the world and their dog got slapped with a PageRank penalty including some very prominent blogs <a href="http://www.problogger.net/archives/2007/10/24/problogger-pagerank-4/" title="ProBlogger - PageRank 4">such as ProBlogger</a> and Engadget. Andy Beard compiled a <a href="http://andybeard.eu/2007/10/pagerank-update.html" title="Digg Favorites Slapped By Google">comprehensive list of those punished</a> and speculation suggested that some of these sites are being punished for massive interlinking between blog networks.</li>
<li>Today it seems that Google has completed its quarterly update of the PageRank. Many of those punished earlier in the month have regained either all or some of their PR losses. Some have lost even more! Once again, head over to Andy Beard&#8217;s blog for a <a href="http://andybeard.eu/2007/10/pagerank-update-2.html" title="Real or Fake PageRank Update In Progress (round 3)">comprehensive run down</a>. Andy&#8217;s done a great job of keeping on top of the story as it unfolds.</li>
</ul>
<h2>What do I make of this to-do?</h2>
<p>It is clear to me that Google are making a very loud statement, although I actually haven&#8217;t fared too badly. I don&#8217;t sell text links, don&#8217;t do paid reviews, and don&#8217;t interlink massively between &#8216;associate&#8217; blogs. There&#8217;s been no penalties for me and today I actually saw a slight PR increase from three to four.</p>
<p>Personally I don&#8217;t pay much heed to PageRank as I don&#8217;t sell any advertising and thus have no need to assert my <em>worth</em> with these kinds of metrics. Obviously I&#8217;m all for seeing more traffic coming here from search engines so it will be interesting to see what difference (if any) this little increase has on my Google traffic.</p>
<p>I do have a certain amount of sympathy for Google. They have a right to protect their position as the number one search engine by protecting the integrity of their search results, and all of the activities identified above do affect organic search results. And what&#8217;s more, I don&#8217;t have much sympathy for those bloggers who put that bloody awful word, monetization, first and foremost and tread dangerously close to the thin and wobbly spam-line.</p>
<p>But it&#8217;s not as black and white as people using the weight of their wallets to climb search engine results. Whose to say that a text link ad or a paid review is not <em>relevant</em>? The fact that it is paid for doesn&#8217;t make it irrelevant by default. The same goes for blog networks: by their very nature, the interlinking is between similar and relevant blogs.</p>
<h2>The unanswered questions&#8230;</h2>
<ul>
<li>If a blogger doesn&#8217;t declare that a link or review is paid, how can Google monitor whether it is paid for?</li>
<li>Therefore, will this not just force bloggers to camouflage their text link ads within their blogrolls and be more discreet about paid reviews?</li>
<li>Or are blogrolls against Google&#8217;s terms as well? If so 99% of bloggers should have a PR penalty now!</li>
<li>What about the <a href="http://www.milienzo.com/2007/04/28/lets-all-join-the-dofollow-revolution/" title="Lets all join the DoFollow revolution">DoFollow blog brigade</a> &#8211; are they treading on thin ice too?</li>
</ul>
<p>Google are notoriously bad at coming forward and engaging with the web-public, but if ever there was a time for one of their trademark carefully worded blog articles, now is the time. As much as Google have a right to protect their business, they also have a responsibility, as a near-monopoly, to be upfront and clear with the web community. Google has absolutely no right to play games with peoples livelihoods!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.milienzo.com/2007/10/28/what-do-you-make-of-this-pagerank-hullabaloo/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Like a gift from the Gods: Internet Explorer 6</title>
		<link>http://www.milienzo.com/2007/09/18/like-a-gift-from-the-gods-internet-explorer-6/</link>
		<comments>http://www.milienzo.com/2007/09/18/like-a-gift-from-the-gods-internet-explorer-6/#comments</comments>
		<pubDate>Tue, 18 Sep 2007 09:00:47 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Web Design, CSS and SEO]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[Web Design]]></category>

		<guid isPermaLink="false">http://www.milienzo.com/2007/09/18/like-a-gift-from-the-gods-internet-explorer-6/</guid>
		<description><![CDATA[<p></p>
<p>So, you downloaded Internet Explorer 7 when it was released, huh? Then banged your head against the wall when you realised you had overwritten IE6 and there was no way to reinstall it? Since that moment you&#8217;ve been building websites without thoroughly testing them in IE6 haven&#8217;t you? Either that or you&#8217;ve had to dust [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.milienzo.com/wp-content/uploads/2007/09/heavenly_ie7.jpg" alt="IE6 from heaven" title="IE6 from heaven" class="centered" border="0" height="280" width="480" /></p>
<p>So, you downloaded Internet Explorer 7 when it was released, huh? Then banged your head against the wall when you realised you had overwritten IE6 and there was no way to reinstall it? Since that moment you&#8217;ve been building websites without thoroughly testing them in IE6 haven&#8217;t you? Either that or you&#8217;ve had to dust off your old PC from out of the attic just to test sites in IE6.</p>
<p>Well, I know that&#8217;s what I&#8217;ve been doing, but not anymore. Yesterday I discovered a stand-alone version of IE6 that can be downloaded and run from your desktop without installing anything. It runs without cookies so functionality can be limited but for testing basic layout this is a God-send.</p>
<p>Head straight over to the mirror site to <a href="http://browsers.evolt.org/download.php?/ie/32bit/standalone/ie6eolas_nt.zip" title="ie6eolas_nt.zip">download the standalone version of IE6</a>. Alternatively read more info about <a href="http://www.tech-recipes.com/rx/1188/ie7_use_ie6_ie7_together" title="Using IE6 and IE7 together">using IE6 and IE7 together</a> over on tech-recipes.com.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.milienzo.com/2007/09/18/like-a-gift-from-the-gods-internet-explorer-6/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Web design: managing a client&#8217;s expectations</title>
		<link>http://www.milienzo.com/2007/09/17/web-design-managing-a-clients-expectations/</link>
		<comments>http://www.milienzo.com/2007/09/17/web-design-managing-a-clients-expectations/#comments</comments>
		<pubDate>Mon, 17 Sep 2007 12:00:52 +0000</pubDate>
		<dc:creator>Justin Kistner</dc:creator>
				<category><![CDATA[The Creative Industry]]></category>
		<category><![CDATA[Web Design, CSS and SEO]]></category>
		<category><![CDATA[Creative Industry]]></category>
		<category><![CDATA[Freelancing]]></category>
		<category><![CDATA[Web Design]]></category>

		<guid isPermaLink="false">http://www.milienzo.com/2007/09/17/web-design-managing-a-clients-expectations/</guid>
		<description><![CDATA[<p class="guest">Guest article: This article is written by Justin Kistner.</p>
<p></p>
<p>Starting a site&#8217;s design before the content for that site is fully developed can be a costly mistake. It often leads to designs that are sub par or that don&#8217;t fit with the final content. Knowing that is only half of the battle. The other battle [...]]]></description>
			<content:encoded><![CDATA[<p class="guest"><strong>Guest article</strong>: This article is written by <a href="#guest">Justin Kistner</a>.</p>
<p><img src="/wp-content/uploads/2007/09/frustration.jpg" alt="Web design can be frustrating without content" border="0" height="209" width="480" /></p>
<p>Starting a site&#8217;s design before the content for that site is fully developed can be a costly mistake. It often leads to designs that are sub par or that don&#8217;t fit with the final content. Knowing that is only half of the battle. The other battle is helping clients understand that, which is where this post comes into play.</p>
<p>I often refer to my approach to design as &#8216;<a href="http://www.metafluence.com/content-driven-design">content driven design</a>&#8216;. <a href="http://en.wikipedia.org/wiki/Louis_Sullivan">Louis Sullivan</a> would have said, &#8220;form follows function&#8221;. No matter how you express it, using language in the beginning that defines the design as dependent upon the function/content of the site helps establish a precedence. But, simply saying you subscribe to the &#8216;content driven design&#8217; school of thought isn&#8217;t enough to prevent a client from saying, &#8220;Can&#8217;t we just make a design and then put the copy and pictures in when it&#8217;s done?&#8221;</p>
<h2>The logical approach</h2>
<p>Your first line of defense should be one of reasoning because it demonstrates that your respect your client&#8217;s intelligence. For some clients, a simple statement is enough to convince them. The statement I use is, &#8220;My job as a web designer is to arrange content on a page so that it is both functional and compelling. I can&#8217;t make good decisions about either unless I know what I&#8217;m supposed to arrange.&#8221;</p>
<p>Good design reveals more about the content that the design is treating. Emphasis, for example, can be represented by scale, color, and/or font weight. In order to know how to present the messages on the page, you need to be able to read the message.</p>
<h2>The illustrated approach</h2>
<p>Sharp clients that don&#8217;t want to or can&#8217;t get their content together in the timeframe they want the site designed by can have a response to the logical approach. They usually come in the form of a few variations:</p>
<ul>
<li>&#8220;I know what I basically want, isn&#8217;t that enough to at least get you started?&#8221;</li>
<li>&#8220;I can already tell you what pages I want and what will be on them.&#8221;</li>
<li>&#8220;I pretty much have all of my content. Let&#8217;s just start with that.&#8221;</li>
</ul>
<p>Here&#8217;s a list of examples to help explain in more detail the importance of the specific content.</p>
<h3>Complexity thresholds</h3>
<p>If you have one good photo, it&#8217;s pretty straightforward how to place it on the page. If you have twelve photos, then you might need to arrange them in a matrix as thumbnails that can be clicked to view them larger. If you have two hundred photos, you would need to break them up onto multiple pages. If you&#8217;ve got twenty thousand, then you would need categories and search options to make them digestible, which means there are now form elements that have to be included in the layout.</p>
<p>This example reveals how the volume of content not only impacts the way that content is laid out, but also the number of pages and additional supporting elements that might need to be on the page.</p>
<h3>Square peg, round hole</h3>
<p>Let&#8217;s say your design uses a horizontal nav bar that has five items and each is a single word. Then let&#8217;s say your real content comes back and you need eight items in the nav bar and they are all 2-3 words each. Now your horizontal nav bar doesn&#8217;t hold the real navigation and needs to be made vertical. That could break the whole design and require starting over on the layout.</p>
<p>This example shows that designing in a vacuum can produce a layout that won&#8217;t accommodate the final content. And, it can happen in the reverse too where a design allows for a lot of space for content that turns out to be small making the site feel awkward and empty.</p>
<h3>A chef is only as good as his/her ingredients</h3>
<p>Let&#8217;s say the client is only missing the photo of their office and one of their staff that they want on their about page. So, you use placeholders you found using Google&#8217;s image search. Then the final photo of the office the client provides was taken on their cell phone and most of the staff objected to having their pictures taken. Now you can&#8217;t run the office photo very big and you have holes where the staff photos were supposed to go forcing you to redesign the about page.</p>
<p>This example illustrates two points: the quality of content impacts how you use it; and planning to have certain content doesn&#8217;t mean you&#8217;ll get it.</p>
<h3>It&#8217;s as easy as 1-2-3</h3>
<p>Let&#8217;s say you have a page that describes your client&#8217;s service. Because the client doesn&#8217;t have the final content, you design it with Lorem Ipsum. When the final content comes you see that signing up for the service is a three step process that would have been a great opportunity for an infographic. Now the service page is a page of boring grey text.</p>
<p>This example is about missed opportunities. Here the client doesn&#8217;t incur additional expense from breaking the design with the final content, but they miss out on what could have been a great visual description of their money making service. The result is that they lose profits from a less effective website.</p>
<p>Your job as a web designer is both as a designer and a client counselor. You can and should advise your client according to the experience and knowledge that you have, but you are under no obligation to deliver a difficult client the best website in the world. In other words, if the logical approach and a couple of good examples isn&#8217;t enough to convince your client then you can take one of two courses of action:</p>
<ol>
<li><strong>Tell them you appreciate the opportunity to work with them, but you&#8217;ll have to pass on this project</strong>. Obviously you can only take this approach if you have the luxury to do so. There are many successful designers that will wisely advise you to avoid projects that will cause you pain and not end up in your portfolio. Sometimes throwing down the gauntlet can spark a stubborn client into action, which means pulling their content together. You might still be weary of that situation because conflict is usually not a great way to start a project.</li>
<li><strong>Tell them they need to sign a waiver stating that you advised them not to go this route and that it could lead to extra rounds of revisions for which they will be responsible for paying.</strong> While it reads pretty harsh, there are polite and diplomatic ways of approaching this option. You could say something like, <em>&#8220;I can appreciate that your timeline is tight. We can get started without the final content, but it could lead to additional rounds of design when we start plugging in the real content. If your priority is your timeline, then let&#8217;s just update our agreement to make sure you get those extra rounds of design if need be. I&#8217;ve got this handy form right here.&#8221;</em></li>
</ol>
<h2>Content driven design for a <acronym title="Content management system">CMS</acronym></h2>
<p>Most clients seeking web design today would like some level of admin control via a CMS. In those situations the client won&#8217;t have all of the content by definition of the project. In the case of a CMS design, what you will need up front is not the future content, but rather a clear description of the system. I could write a whole post about how to define a content system, but I&#8217;ll save it for later. For now, my recommendation to you is to ask some basic questions about what they need to manage, like is it a gallery, a blog, a calendar, etc. Select a free CMS that seems like it will fit and have the client start using it before you make a custom design. Having the client use a CMS before creating a design will help you in two ways:</p>
<ul>
<li>It will reveal if it meets their functional needs before investing in an interface design.</li>
<li>It will give you a starting base of content to analyze for design direction. Even the most prepared client ends up producing content that is different from what they thought they would create in the beginning, so it&#8217;s good to have something real to provide you with design direction.</li>
</ul>
<p><strong>Do you ask for content before starting a design? Do you have challenges getting the content from the client? How do you handle those situations?</strong></p>
<p class="guest"><img src="http://farm2.static.flickr.com/1196/711415959_696321378b.jpg?v=0" class="alignright" alt="Justin Kistner" /><a title="guest" name="guest"></a><strong>Justin Kistner</strong> &#8211; Justin is an Internet strategist, web designer, and the author of the blog <a href="http://www.metafluence.com/">Metafluence</a> that covers web design, website traffic driving strategies, business practices for web developers, and news and trends.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.milienzo.com/2007/09/17/web-design-managing-a-clients-expectations/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Be &#8216;digged&#8217; and die happy</title>
		<link>http://www.milienzo.com/2007/09/04/be-digged-and-die-happy/</link>
		<comments>http://www.milienzo.com/2007/09/04/be-digged-and-die-happy/#comments</comments>
		<pubDate>Tue, 04 Sep 2007 22:09:37 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Blogging, WordPress and Themes]]></category>
		<category><![CDATA[Web Design, CSS and SEO]]></category>
		<category><![CDATA[Digg]]></category>
		<category><![CDATA[Social Networking]]></category>
		<category><![CDATA[Web Design]]></category>

		<guid isPermaLink="false">http://www.milienzo.com/2007/09/04/be-digged-and-die-happy/</guid>
		<description><![CDATA[<p></p>
<p>You may have noticed a new funky little &#8216;Share the love&#8217; icon appear at the bottom of every article over the last few days. Go on, hover the mouse over it and see what happens.</p>
<p>I&#8217;ve got absolutely no evidence that anyone has ever used the social bookmarking icons or the Share This plugin that I&#8217;ve [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.milienzo.com/wp-content/uploads/2007/09/social_bmarking.jpg" alt="Social bookmarkin icons" title="Social bookmarkin icons" class="centered" border="0" height="240" width="480" /></p>
<p>You may have noticed a new funky little &#8216;Share the love&#8217; icon appear at the bottom of every article over the last few days. Go on, hover the mouse over it and see what happens.</p>
<p>I&#8217;ve got absolutely no evidence that anyone has ever used the social bookmarking icons or the <a href="http://alexking.org/blog/2007/01/25/share-this-14" title="Share This">Share This plugin</a> that I&#8217;ve previously used, so I&#8217;ve ditched the plugin and packaged the little bookmark icons into a neat and clutter-free solution that might just be intriguing enough to make readers hover their mouse over the link.</p>
<p>It was a right royal pain in the ass to get it working in Internet Explorer 6, but I got there in the end with a little <a href="http://www.alistapart.com/articles/dropdowns/" title="Suckerfish Dropdowns">help from a suckerfish</a>. I downloaded the <a href="http://fasticon.com/freeware/?p=60" title="Web 2 - Social Bookmark Icons">social bookmark icons from Fast Icon</a> and the others were drawn by yours truly in a matching style.</p>
<p>Now that I&#8217;ve gone to all the effort of creating this little social bookmarking drop-down of joy, if I don&#8217;t get &#8216;digged&#8217;, have my server killed by a deluge of traffic, and receive reams of derogatory comments by hordes of hateful pubescent teens by the end of this year, I&#8217;ll be very disappointed!</p>
<p>Many thanks for the recent comments: <a href="http://www.davidairey.com/" title="David Airey :: Graphic Designer">David</a>, <a href="http://redsil.com/blog/" title="Graphic design art and typography blog">Johno</a> and <a href="http://www.asgeirhoem.no/" title="Journale - Asgeir Hoem">Asgeir</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.milienzo.com/2007/09/04/be-digged-and-die-happy/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>Improving WordPress&#8217; the_excerpt() template tag</title>
		<link>http://www.milienzo.com/2007/09/02/improving-wordpress-the_excerpt-template-tag/</link>
		<comments>http://www.milienzo.com/2007/09/02/improving-wordpress-the_excerpt-template-tag/#comments</comments>
		<pubDate>Sun, 02 Sep 2007 20:29:01 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Blogging, WordPress and Themes]]></category>
		<category><![CDATA[Web Design, CSS and SEO]]></category>
		<category><![CDATA[Hacks]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.milienzo.com/2007/09/02/improving-wordpress-the_excerpt-template-tag/</guid>
		<description><![CDATA[<p></p>
<p>There&#8217;s no doubt about it, WordPress is a great blogging platform. It&#8217;s an incredibly flexible and multifunctional publishing platform and can even give a lot of fully-blown content management systems a run for their money.</p>
<p>That&#8217;s not to say there isn&#8217;t room for improvement. Currently the function which the_excerpt() template tag calls upon leaves a little [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.milienzo.com/wp-content/uploads/2007/09/code.jpg" alt="JavaScript code" title="JavaScript code" class="centered" border="0" height="240" width="480" /></p>
<p>There&#8217;s no doubt about it, WordPress is a great blogging platform. It&#8217;s an incredibly flexible and multifunctional publishing platform and can even give a lot of fully-blown content management systems a run for their money.</p>
<p>That&#8217;s not to say there isn&#8217;t room for improvement. Currently the function which <code>the_excerpt()</code> template tag calls upon leaves a little to be desired. The excerpt is used in most themes for browsing the archives and categories of a blog. Rather than displaying the full content of the post, the excerpt displays a short snippet of the content. Unless you manually enter in an excerpt when writing each post, WordPress grabs the first 55 words of the post and uses that as the excerpt.</p>
<p>So far so good, but there are problems with the way WordPress does this. These include:</p>
<ul>
<li><strong>Word count</strong> &#8211; 55 words is a good number, but what if you want more or less?</li>
<li><strong>Formatting</strong> &#8211; WordPress strips out all HTML tags. This gets rid of images and links, but can also get rid of paragraph formatting, making the entire excerpt one long paragraph without any line breaks.</li>
<li><strong>JavaScript</strong> &#8211; Unfortunately JavaScript isn&#8217;t stripped out, which can result in some plugins&#8217; messy script appearing in your excepts. Not only does this look rubbish, it can be a vulnerability too.</li>
</ul>
<p>There are ways to fix these problems, and I will show you how. Better yet, these changes can be done completely within your theme without having to hack away at the WordPress core files.</p>
<h2>Finding the excerpt function</h2>
<p>The first thing we need to do is find the relevant excerpt function that is not doing its job very well. Actually, you don&#8217;t need to find it because I&#8217;ve done it for you, but if you insist you can find the code below deep within <code>wp-includes/formatting.php</code>.</p>
<link rel="stylesheet" href="http://www.milienzo.com/wp-content/plugins/codeviewer/codeviewer.css" type="text/css" media="all" />
<ol class="codelist">
<li value="1" class="tab0 odd"><code><span style="color: #000000; font-weight: bold;">function</span> wp_trim_excerpt<span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$text</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span> <span style="color: #808080; font-style: italic;">// Fakes an excerpt if needed</span></code></li>
<li value="2" class="tab1 even"><code><a rel="nofollow" href="http://www.php.net/global"><span style="color: #000066;">global</span></a> <span style="color: #0000ff;">$post</span>;</code></li>
<li value="3" class="tab1 odd"><code><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">''</span> == <span style="color: #0000ff;">$text</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span></code></li>
<li value="4" class="tab2 even"><code><span style="color: #0000ff;">$text</span> = get_the_content<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">''</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="5" class="tab2 odd"><code><span style="color: #0000ff;">$text</span> = apply_filters<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'the_content'</span>, <span style="color: #0000ff;">$text</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="6" class="tab2 even"><code><span style="color: #0000ff;">$text</span> = <a rel="nofollow" href="http://www.php.net/str_replace"><span style="color: #000066;">str_replace</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">']]&gt;'</span>, <span style="color: #ff0000;">']]&amp;gt;'</span>, <span style="color: #0000ff;">$text</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="7" class="tab2 odd"><code><span style="color: #0000ff;">$text</span> = <a rel="nofollow" href="http://www.php.net/strip_tags"><span style="color: #000066;">strip_tags</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$text</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="8" class="tab2 even"><code><span style="color: #0000ff;">$excerpt_length</span> = <span style="color: #cc66cc;">55</span>;</code></li>
<li value="9" class="tab2 odd"><code><span style="color: #0000ff;">$words</span> = <a rel="nofollow" href="http://www.php.net/explode"><span style="color: #000066;">explode</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">' '</span>, <span style="color: #0000ff;">$text</span>, <span style="color: #0000ff;">$excerpt_length</span> + <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="10" class="tab2 even"><code><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><a rel="nofollow" href="http://www.php.net/count"><span style="color: #000066;">count</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$words</span><span style="color: #66cc66;">&#41;</span>&gt; <span style="color: #0000ff;">$excerpt_length</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span></code></li>
<li value="11" class="tab3 odd"><code><a rel="nofollow" href="http://www.php.net/array_pop"><span style="color: #000066;">array_pop</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$words</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="12" class="tab3 even"><code><a rel="nofollow" href="http://www.php.net/array_push"><span style="color: #000066;">array_push</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$words</span>, <span style="color: #ff0000;">'[...]'</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="13" class="tab3 odd"><code><span style="color: #0000ff;">$text</span> = <a rel="nofollow" href="http://www.php.net/implode"><span style="color: #000066;">implode</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">' '</span>, <span style="color: #0000ff;">$words</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="14" class="tab2 even"><code><span style="color: #66cc66;">&#125;</span></code></li>
<li value="15" class="tab1 odd"><code><span style="color: #66cc66;">&#125;</span></code></li>
<li value="16" class="tab1 even"><code><span style="color: #b1b100;">return</span> <span style="color: #0000ff;">$text</span>;</code></li>
<li value="17" class="tab0 odd"><code><span style="color: #66cc66;">&#125;</span></code></li>
</ol>
<p>Remember, we are not altering the core files here, so we need to copy this code and paste it into our theme files. Open up your <code>functions.php</code> theme file and paste the code in.</p>
<p>This function is called <code>wp_trim_excerpt()</code> but it is important that we call it something unique. I&#8217;m going to rename it <code>improved_trim_excerpt()</code> but you can call it what you want. Edit line one accordingly:</p>
<link rel="stylesheet" href="http://www.milienzo.com/wp-content/plugins/codeviewer/codeviewer.css" type="text/css" media="all" />
<ol class="codelist">
<li value="1" class="tab0 odd"><code><span style="color: #000000; font-weight: bold;">function</span> improved_trim_excerpt<span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$text</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span></code></li>
</ol>
<h2>Increase the word length of the excerpt</h2>
<p>This is simple. Find line eight and change the value to whatever you want &#8211; lets say 80.</p>
<link rel="stylesheet" href="http://www.milienzo.com/wp-content/plugins/codeviewer/codeviewer.css" type="text/css" media="all" />
<ol class="codelist">
<li value="1" class="tab0 odd"><code><span style="color: #0000ff;">$excerpt_length</span> = <span style="color: #cc66cc;">80</span>;</code></li>
</ol>
<h2>Include HTML tags</h2>
<p>If you have problems with your formatting you may need to include the <code>P</code> tag. You may want to include links or even images. Find line seven and replace it with this:</p>
<link rel="stylesheet" href="http://www.milienzo.com/wp-content/plugins/codeviewer/codeviewer.css" type="text/css" media="all" />
<ol class="codelist">
<li value="1" class="tab0 odd"><code><span style="color: #0000ff;">$text</span> = <a rel="nofollow" href="http://www.php.net/strip_tags"><span style="color: #000066;">strip_tags</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$text</span>, <span style="color: #ff0000;">'&lt;p&gt;'</span><span style="color: #66cc66;">&#41;</span>;</code></li>
</ol>
<p>You can simply list as many tags as you need to immediately following the <code>P</code> tag.</p>
<h2>Remove unwanted JavaScript code</h2>
<p>To remove unwanted script code you need to add another line. In-between lines five and six add the following:</p>
<link rel="stylesheet" href="http://www.milienzo.com/wp-content/plugins/codeviewer/codeviewer.css" type="text/css" media="all" />
<ol class="codelist">
<li value="1" class="tab0 odd"><code><span style="color: #0000ff;">$text</span> = <a rel="nofollow" href="http://www.php.net/preg_replace"><span style="color: #000066;">preg_replace</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'@&lt;script[^&gt;]*?&gt;.*?&lt;/script&gt;@si'</span>, <span style="color: #ff0000;">''</span>, <span style="color: #0000ff;">$text</span><span style="color: #66cc66;">&#41;</span>;</code></li>
</ol>
<p>OK, that&#8217;s sorted out all our problems. Just to clarify your new and improved function should look like this:</p>
<link rel="stylesheet" href="http://www.milienzo.com/wp-content/plugins/codeviewer/codeviewer.css" type="text/css" media="all" />
<ol class="codelist">
<li value="1" class="tab0 odd"><code><span style="color: #000000; font-weight: bold;">function</span> improved_trim_excerpt<span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$text</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span></code></li>
<li value="2" class="tab1 even"><code><a rel="nofollow" href="http://www.php.net/global"><span style="color: #000066;">global</span></a> <span style="color: #0000ff;">$post</span>;</code></li>
<li value="3" class="tab1 odd"><code><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span> <span style="color: #ff0000;">''</span> == <span style="color: #0000ff;">$text</span> <span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span></code></li>
<li value="4" class="tab2 even"><code><span style="color: #0000ff;">$text</span> = get_the_content<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">''</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="5" class="tab2 odd"><code><span style="color: #0000ff;">$text</span> = apply_filters<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'the_content'</span>, <span style="color: #0000ff;">$text</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="6" class="tab2 even"><code><span style="color: #0000ff;">$text</span> = <a rel="nofollow" href="http://www.php.net/str_replace"><span style="color: #000066;">str_replace</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">']]&gt;'</span>, <span style="color: #ff0000;">']]&amp;gt;'</span>, <span style="color: #0000ff;">$text</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="7" class="tab2 odd"><code><span style="color: #0000ff;">$text</span> = <a rel="nofollow" href="http://www.php.net/preg_replace"><span style="color: #000066;">preg_replace</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'@&lt;script[^&gt;]*?&gt;.*?&lt;/script&gt;@si'</span>, <span style="color: #ff0000;">''</span>, <span style="color: #0000ff;">$text</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="8" class="tab2 even"><code><span style="color: #0000ff;">$text</span> = <a rel="nofollow" href="http://www.php.net/strip_tags"><span style="color: #000066;">strip_tags</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$text</span>, <span style="color: #ff0000;">'&lt;p&gt;'</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="9" class="tab2 odd"><code><span style="color: #0000ff;">$excerpt_length</span> = <span style="color: #cc66cc;">80</span>;</code></li>
<li value="10" class="tab2 even"><code><span style="color: #0000ff;">$words</span> = <a rel="nofollow" href="http://www.php.net/explode"><span style="color: #000066;">explode</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">' '</span>, <span style="color: #0000ff;">$text</span>, <span style="color: #0000ff;">$excerpt_length</span> + <span style="color: #cc66cc;">1</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="11" class="tab2 odd"><code><span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span><a rel="nofollow" href="http://www.php.net/count"><span style="color: #000066;">count</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$words</span><span style="color: #66cc66;">&#41;</span>&gt; <span style="color: #0000ff;">$excerpt_length</span><span style="color: #66cc66;">&#41;</span> <span style="color: #66cc66;">&#123;</span></code></li>
<li value="12" class="tab3 even"><code><a rel="nofollow" href="http://www.php.net/array_pop"><span style="color: #000066;">array_pop</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$words</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="13" class="tab3 odd"><code><a rel="nofollow" href="http://www.php.net/array_push"><span style="color: #000066;">array_push</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #0000ff;">$words</span>, <span style="color: #ff0000;">'[...]'</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="14" class="tab3 even"><code><span style="color: #0000ff;">$text</span> = <a rel="nofollow" href="http://www.php.net/implode"><span style="color: #000066;">implode</span></a><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">' '</span>, <span style="color: #0000ff;">$words</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="15" class="tab2 odd"><code><span style="color: #66cc66;">&#125;</span></code></li>
<li value="16" class="tab1 even"><code><span style="color: #66cc66;">&#125;</span></code></li>
<li value="17" class="tab1 odd"><code><span style="color: #b1b100;">return</span> <span style="color: #0000ff;">$text</span>;</code></li>
<li value="18" class="tab0 even"><code><span style="color: #66cc66;">&#125;</span></code></li>
</ol>
<p>The final thing we need to do is tell WordPress to use our new and improved function rather than its built in function. Fortunately this is a piece of cake and involves entering two more lines at the end of our <code>functions.php</code> theme file.</p>
<link rel="stylesheet" href="http://www.milienzo.com/wp-content/plugins/codeviewer/codeviewer.css" type="text/css" media="all" />
<ol class="codelist">
<li value="1" class="tab0 odd"><code>remove_filter<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'get_the_excerpt'</span>, <span style="color: #ff0000;">'wp_trim_excerpt'</span><span style="color: #66cc66;">&#41;</span>;</code></li>
<li value="2" class="tab0 even"><code>add_filter<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'get_the_excerpt'</span>, <span style="color: #ff0000;">'improved_trim_excerpt'</span><span style="color: #66cc66;">&#41;</span>;</code></li>
</ol>
<p>That&#8217;s everything complete. You&#8217;re now set for improved excerpts.</p>
<p><strong>PS:</strong> Notice my new <em>&#8220;Share the love&#8221;</em> icon below? Go on, give it a go!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.milienzo.com/2007/09/02/improving-wordpress-the_excerpt-template-tag/feed/</wfw:commentRss>
		<slash:comments>47</slash:comments>
		</item>
		<item>
		<title>Do trackbacks mixed with comments annoy blog readers?</title>
		<link>http://www.milienzo.com/2007/08/15/do-trackbacks-mixed-with-comments-annoy-blog-readers/</link>
		<comments>http://www.milienzo.com/2007/08/15/do-trackbacks-mixed-with-comments-annoy-blog-readers/#comments</comments>
		<pubDate>Wed, 15 Aug 2007 21:04:47 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Blogging, WordPress and Themes]]></category>
		<category><![CDATA[Web Design, CSS and SEO]]></category>
		<category><![CDATA[Plugins]]></category>
		<category><![CDATA[Web Design]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://www.milienzo.com/2007/08/15/do-trackbacks-mixed-with-comments-annoy-blog-readers/</guid>
		<description><![CDATA[<p></p>
<p>Over on Devlounge there is an excellent list of 15 design decisions that annoy readers. The article is written by Ronald Huereca and is based on informal feedback received at his personal blog the Reader Appreciation Project.</p>
<p>The 15 annoyances are:</p>

Pop-ups (link hovers)
Turning off the timestamp on posts
Pop-up windows
Snap preview pop-ups
Positioning the subscribe box above the [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.milienzo.com/wp-content/uploads/2007/07/speech_bubble.jpg" alt="Separating conversation" title="Separating conversation" class="centered" border="0" height="280" width="480" /></p>
<p>Over on Devlounge there is an excellent list of <a href="http://www.devlounge.net/articles/15-design-decisions-that-annoy-readers" title="15 Design Decisions That Annoy Readers">15 design decisions that annoy readers</a>. The article is written by Ronald Huereca and is based on informal feedback received at his personal blog the <a href="http://www.raproject.com/articles/design-decisions-that-annoy-readers-part-1/" title="Design Decisions That Annoy Readers Part 1">Reader Appreciation Project</a>.</p>
<p>The 15 annoyances are:</p>
<ul>
<li>Pop-ups (link hovers)</li>
<li>Turning off the timestamp on posts</li>
<li>Pop-up windows</li>
<li>Snap preview pop-ups</li>
<li>Positioning the subscribe box above the search box</li>
<li>Dark backgrounds</li>
<li>Auto play music</li>
<li><strong>Not separating trackbacks from comments</strong></li>
<li>Talking advertisements</li>
<li>Obtrusive subscription requests</li>
<li>Hard to find subscription options</li>
<li>Failure to interlink posts or show related posts</li>
<li>Obtrusive advertisements</li>
<li>In-text advertisements</li>
<li>Small font size</li>
</ul>
<p>I agree with pretty much every single point that Ronald makes, but the one that caught my eye is the issue of separating trackbacks from comments. Ronald&#8217;s argument is that they don&#8217;t form part of the conversation:</p>
<blockquote><p>&#8220;To a regular commenter and/or reader of the post, the trackback is not really part of the conversation. To me, a trackback interspersed with regular comments is more of an interruption than a continuation of discussion.&#8221;</p></blockquote>
<p>It&#8217;s certainly not the most annoying annoyance on the list, but I think Ronald has a point. And it&#8217;s actually quite common: by default WordPress displays all comments and trackbacks in chronological order, and most bloggers don&#8217;t do anything to change it.</p>
<p>There are a couple of ways of changing this default behaviour. If you fancy hand-editing your comment.php template file, a <a href="http://www.noscope.com/journal/2005/01/wp-separating-trackbacks-pingbacks" title="Separating Trackbacks &amp; Pingbacks in Wordpress 1.5 &amp; Above">fairly simple technique is demonstrated on Noscope</a>. If you&#8217;re not the coding type then the <a href="http://urbangiraffe.com/plugins/separate-comment-pings/" title="Separate Comments &amp; Pings Plugin">Separating Comments &amp; Pings plugin</a> may be for you.</p>
<p>Another site-tweak is added it my &#8216;to-do&#8217; list&#8230;</p>
<p>Many thanks for the recent comments: <a href="http://www.asgeirhoem.no/" title="Journale - Asgeir Hoem">Asgeir</a>, <a href="http://inkdrop.wordpress.com/" title="Inkdrop">1ndigo</a>, <a href="http://redsil.com/blog/" title="Graphic design art and typography blog">Johno</a> and <a href="http://www.trendmatter.com/" title="trendmatter.com">Mac</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.milienzo.com/2007/08/15/do-trackbacks-mixed-with-comments-annoy-blog-readers/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Clean up your CSS with Firefox plugin</title>
		<link>http://www.milienzo.com/2007/08/07/clean-up-your-css-with-firefox-plugin/</link>
		<comments>http://www.milienzo.com/2007/08/07/clean-up-your-css-with-firefox-plugin/#comments</comments>
		<pubDate>Tue, 07 Aug 2007 20:13:56 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Web Design, CSS and SEO]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Firefox]]></category>
		<category><![CDATA[Plugins]]></category>
		<category><![CDATA[Web Design]]></category>

		<guid isPermaLink="false">http://www.milienzo.com/2007/08/07/clean-up-your-css-with-firefox-plugin/</guid>
		<description><![CDATA[<p>Have you ever inherited someone else&#8217;s website and not had a clue what half the CSS selectors are doing? Or tried to rehash someone else&#8217;s WordPress theme but been afraid to remove any of the CSS selectors in case you break something?</p>
<p>Fortunately the kind chaps at Sitepoint have developed a nifty Firefox extension called Dust-Me [...]]]></description>
			<content:encoded><![CDATA[<p>Have you ever inherited someone else&#8217;s website and not had a clue what half the CSS selectors are doing? Or tried to rehash someone else&#8217;s WordPress theme but been afraid to remove any of the CSS selectors in case you break something?</p>
<p>Fortunately the kind chaps at <a href="http://www.sitepoint.com/" title="Sitepoint">Sitepoint</a> have developed a nifty <a href="http://www.sitepoint.com/dustmeselectors/" title="Dust-Me Selectors">Firefox extension called Dust-Me Selectors</a> which should solve your style sheet woes.</p>
<p>Dust-Me Selectors monitors a website&#8217;s CSS whilst you surf the site and identifies any unused styles. As you move from page to page the extension builds and presents a definitive list of style sheet selectors that you can safely remove.</p>
<p><img src="http://www.milienzo.com/wp-content/uploads/2007/08/dust_me.gif" alt="Dust-Me Selectors" title="Dust-Me Selectors" class="centered" border="0" height="240" width="480" /></p>
<p>This a great tool which has made it into my rapidly increasing list of Firefox extensions. It&#8217;s a shame you have to manually navigate the site, so for any budding extension developers out there: how about a tool that automatically scans all the HTML pages of any given URL?</p>
<p>Many thanks for the previous posts&#8217; comments: <a href="http://www.raproject.com/" title="Reader Appreciation Project">Ronald</a>, <a href="http://www.inspirationbit.com/" title="Inspiration Bit">Vivien</a> and <a href="http://randaclay.com/" title="Randa Clay Design">Randa</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.milienzo.com/2007/08/07/clean-up-your-css-with-firefox-plugin/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>Is it OK to stop supporting Internet Explorer 6?</title>
		<link>http://www.milienzo.com/2007/08/06/is-it-ok-to-stop-supporting-internet-explorer-6/</link>
		<comments>http://www.milienzo.com/2007/08/06/is-it-ok-to-stop-supporting-internet-explorer-6/#comments</comments>
		<pubDate>Mon, 06 Aug 2007 20:52:44 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Web Design, CSS and SEO]]></category>
		<category><![CDATA[Accessibility]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[Web Design]]></category>

		<guid isPermaLink="false">http://www.milienzo.com/2007/08/06/is-it-ok-to-stop-supporting-internet-explorer-6/</guid>
		<description><![CDATA[<p></p>
<p>Over at Web Designer Wall, there&#8217;s an interesting discussion rolling after Nick La put a case together for why web designers and developers should stop using Internet Explorer CSS hacks on their websites.</p>
<p>The logic of his argument is built on the belief that by stopping support for IE6 users (currently 50 per cent of Internet [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.milienzo.com/wp-content/uploads/2007/08/which_browser.jpg" alt="Which browser?" title="Which browser?" class="centered" border="0" height="140" width="480" /></p>
<p>Over at <a href="http://www.webdesignerwall.com/" title="Web Designer Wall">Web Designer Wall</a>, there&#8217;s an interesting discussion rolling after Nick La put a case together for why web designers and developers should <a href="http://www.webdesignerwall.com/general/trash-all-ie-hacks/" title="Trash All IE Hacks">stop using Internet Explorer CSS hacks</a> on their websites.</p>
<p>The logic of his argument is built on the belief that by stopping support for IE6 users (<a href="http://www.thecounter.com/stats/2007/July/browser.php" title="Browser Stats">currently 50 per cent of Internet users</a>), it will force those users to upgrade to a better browser.</p>
<blockquote><p>&#8220;But, together we can make a difference. Stop using IE hacks on your sites and let them see the ugly side of IE6. Eventually, they will find a better browser (ie Firefox) or at least upgrade to a newer version of IE.&#8221;</p></blockquote>
<p>A poll has been running with 85 per cent agreeing that yes we should stop using IE6 hacks, to 15 per cent saying we should carry on using IE6 hacks.</p>
<p>Here is why 85 per cent of those voters are wrong:</p>
<ul>
<li>Many IE6 users are either a) within businesses and organisations whose computers are locked to a certain configuration, or b) users of older computers and operating systems (eg Windows 2000) and upgrading is not a possibility.</li>
<li>The client you are building a website for probably cares about those 50 per cent of users who you are about to alienate. In fact, your client probably cares about them a lot. And they&#8217;re paying you to do a job!</li>
<li>When non-techy IE6 users find your standards only site not rendering in the only Internet browser they&#8217;ve ever known, they&#8217;re going to do one thing. It begins in &#8216;B&#8217; and ends in &#8216;ACK&#8217;.</li>
</ul>
<p>I couldn&#8217;t agree more that hacking CSS for IE6 support can be a real pain, especially since Windows automatically took it off all my computers and replaced it with IE7. But not supporting 50 per cent of Internet users is daft.</p>
<h2>When does it become OK to drop IE6 support?</h2>
<p>However, when all is said and done, IE6 is a dying browser, right? Even for the die-hard accessibility evangelists there must become a point where we stop support. When and where is that point?</p>
<p>Many thanks for the previous posts&#8217; comments: <a href="http://www.napolux.com/" title="Napolux">Napolux</a>, <a href="http://www.inspirationbit.com/" title="Inspiration Bit">Vivien</a> and <a href="http://www.raproject.com/" title="Reader Appreciation Project">Ronald</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.milienzo.com/2007/08/06/is-it-ok-to-stop-supporting-internet-explorer-6/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
	</channel>
</rss>
