<?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>Praj&#039;s Site &#187; Web Development</title>
	<atom:link href="http://www.praj.com.au/category/web-development/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.praj.com.au</link>
	<description></description>
	<lastBuildDate>Sat, 06 Aug 2011 23:37:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>Cloning a WordPress Site</title>
		<link>http://www.praj.com.au/cloning-a-wordpress-site/</link>
		<comments>http://www.praj.com.au/cloning-a-wordpress-site/#comments</comments>
		<pubDate>Tue, 22 Jun 2010 10:55:26 +0000</pubDate>
		<dc:creator>praj</dc:creator>
				<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.praj.com.au/?p=463</guid>
		<description><![CDATA[These are the basic steps for cloning a WordPress site. In this example, I assume your source web server is your live site on your web hosting and your target web server is your local development web server. Try to keep the same directory name and database name to keep things simple. Backup all of [...]]]></description>
			<content:encoded><![CDATA[<p>These are the basic steps for cloning a WordPress site. In this example, I assume your source web server is your live site on your web hosting and your target web server is your <a href="http://www.praj.com.au/local-development-servers/" title="Local Web Development Servers">local development web server</a>. Try to keep the same directory name and database name to keep things simple.</p>
<ol>
<li>Backup all of the files from your site on your web hosting and download (e.g. via FTP).</li>
<li>Export your database to a SQL script (e.g. through phpMyAdmin for MySQL)</li>
<li>Extract your files to your local development server directory</li>
<li>(Create) and import your database using the exported SQL script (e.g. through phpMyAdmin for MySQL)</li>
<li>If your database name or database user/password has changed, update <strong>wp-config.php</strong> in the main directory accordingly.</li>
<li>Start your SQL tool (e.g. phpMyAdmin for MySQL). You will need to update the table <strong>wp-options</strong>. The two options you will be updating (option_name) are siteurl and home. Change these from the URL of your source site (live site) to your local development web server URL (option_value fields).</li>
</ol>
<p>Hopefully your local development site is now working.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.praj.com.au/cloning-a-wordpress-site/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Pages not printing in Firefox</title>
		<link>http://www.praj.com.au/pages-not-printing-in-firefox/</link>
		<comments>http://www.praj.com.au/pages-not-printing-in-firefox/#comments</comments>
		<pubDate>Sat, 19 Jun 2010 03:29:50 +0000</pubDate>
		<dc:creator>praj</dc:creator>
				<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://www.praj.com.au/?p=461</guid>
		<description><![CDATA[While redesigning this site, I incorporated a new print style sheet. During the process I discovered a feature in Firefox when printing a web site. Basically, if you have the overflow: hidden CSS attribute set, then it could prevent Firefox from printing all pages from the web site. So, if you notice that you are [...]]]></description>
			<content:encoded><![CDATA[<p>While redesigning this site, I incorporated a new print style sheet. During the process I discovered a <em>feature</em> in Firefox when printing a web site. Basically, if you have the overflow: hidden CSS attribute set, then it could prevent Firefox from printing all pages from the web site.</p>
<p>So, if you notice that you are only seeing a portion of your web site in your print preview, check your CSS code, and look for any cases where overflow: hidden has been set. For example, I had it set in my container div to allow the footer to always be placed right at the bottom of the page regardless of the content size above it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.praj.com.au/pages-not-printing-in-firefox/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Equally aligning images in CSS</title>
		<link>http://www.praj.com.au/equally-aligning-images-in-css/</link>
		<comments>http://www.praj.com.au/equally-aligning-images-in-css/#comments</comments>
		<pubDate>Thu, 17 Jun 2010 09:16:26 +0000</pubDate>
		<dc:creator>praj</dc:creator>
				<category><![CDATA[Web Development]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[web-design]]></category>

		<guid isPermaLink="false">http://www.praj.com.au/?p=448</guid>
		<description><![CDATA[Equally aligning a row of images so they are equal distances apart with the first image being flush left and the last image being flush right, is actually a lot harder than you would think! Eventually, I turned to Google and came across the solution at CSS tricks. I&#8217;d actually tried the first two approaches [...]]]></description>
			<content:encoded><![CDATA[<p>Equally aligning a row of images so they are equal distances apart with the first image being flush left and the last image being flush right, is actually a lot harder than you would think! Eventually, I turned to Google and came across<a href="http://css-tricks.com/equidistant-objects-with-css/" target="_blank"> the solution at CSS tricks</a>.</p>
<p>I&#8217;d actually tried the first two approaches described in the article, but didn&#8217;t go down the table road. Instead, I stopped and thought, someone somewhere must have solved this. What did they do?</p>
<p>It works really well, but it is not intuitive at all. By the way, you can use exactly 33.3% (instead of 33%) for your width if you really need to be spot on. It works in IE6 too which is always a bonus.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.praj.com.au/equally-aligning-images-in-css/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>What&#8217;s the go with the target attribute?</title>
		<link>http://www.praj.com.au/whats-the-go-with-the-target-attribute/</link>
		<comments>http://www.praj.com.au/whats-the-go-with-the-target-attribute/#comments</comments>
		<pubDate>Tue, 04 May 2010 04:04:29 +0000</pubDate>
		<dc:creator>praj</dc:creator>
				<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.praj.com.au/?p=393</guid>
		<description><![CDATA[If you want to open a link in a new browser window/tab, the common approach is to use the target=&#8221;_blank&#8221; attribute in your anchor tag. However, the target attribute is deprecated by W3C standards and your HTML won&#8217;t validate if you use it. The common alternative is to use JavaScript but I don&#8217;t really like [...]]]></description>
			<content:encoded><![CDATA[<p>If you want to open a link in a new browser window/tab, the common approach is to use the <strong>target=&#8221;_blank&#8221; </strong>attribute in your anchor tag. However, the target attribute is deprecated by W3C standards and your HTML won&#8217;t validate if you use it.</p>
<p>The common alternative is to use <a href="http://www.ajaxblender.com/open-links-new-window-w3c-valid-target-blank.html" target="_blank">JavaScript</a> but I don&#8217;t really like that &#8212; what happens if the user doesn&#8217;t have JavaScript enabled? Also, apparently JavaScript versions are more susceptible to pop up blockers (although I can&#8217;t confirm if this is really the case).</p>
<p>Smashing Magazine argue that links <a href="http://www.smashingmagazine.com/2008/07/01/should-links-open-in-new-windows/" target="_blank">shouldn&#8217;t  open in new windows</a>, because it leads to bad user expectation as  users <strong>expect</strong> links to open in the same window. They do say there  are certain exceptions. I don&#8217;t entirely agree with this. I may  not expect a window to open in a new window, but I don&#8217;t know if that  necessarily leads to a bad user experience, you just go, oh it opened in  a new window, right lets go there now&#8230;</p>
<p>One way to make the target attribute validate is to the XHTML transitional DocType:</p>
<pre class="brush: html">
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"&gt;
</pre>
<p>Again though this isn&#8217;t ideal because of the other subtleties of using a transitional DocType instead of a strict one. So, that&#8217;s why I ask, what is the go with the target attribute? Is there an alternate, HTML only solution? Is everyone comfortable using the <a href="http://www.456bereastreet.com/archive/200605/using_javascript_instead_of_target_to_open_new_windows/" target="_blank">unobtrusive javascript</a> way? Do I just need to harden up and do that?</p>
<p>BTW, I do realise its ironic that this post links to external sources using the deprecated target=&#8221;_blank&#8221; attribute. But that&#8217;s just the easiest way to do it in WordPress.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.praj.com.au/whats-the-go-with-the-target-attribute/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Web Mockups with Pencil</title>
		<link>http://www.praj.com.au/web-mockups-with-pencil/</link>
		<comments>http://www.praj.com.au/web-mockups-with-pencil/#comments</comments>
		<pubDate>Mon, 03 May 2010 04:25:09 +0000</pubDate>
		<dc:creator>praj</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.praj.com.au/?p=382</guid>
		<description><![CDATA[Discovered Pencil today, a nifty free/open source mockup tool. Initially I wasn&#8217;t going to try it because it is advertised as a Firefox extension, and I didn&#8217;t want yet another firefox extension installed. But then I found you could download a standalone version. So far, it works pretty good, my only complaint is that I [...]]]></description>
			<content:encoded><![CDATA[<p>Discovered <a href="http://www.evolus.vn/pencil/" target="_blank">Pencil</a> today, a nifty free/open source mockup tool. Initially I wasn&#8217;t going to try it because it is advertised as a Firefox extension, and I didn&#8217;t want yet another firefox extension installed. But then I found you could <a href="http://www.evolus.vn/pencil/Downloads.html" target="_blank">download a standalone</a> version. So far, it works pretty good, my only complaint is that I there isn&#8217;t a grid view OR at least I don&#8217;t know how to turn it on.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.praj.com.au/web-mockups-with-pencil/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>CSS Shorthand Property Order</title>
		<link>http://www.praj.com.au/css-shorthand-property-order/</link>
		<comments>http://www.praj.com.au/css-shorthand-property-order/#comments</comments>
		<pubDate>Sun, 02 May 2010 07:44:07 +0000</pubDate>
		<dc:creator>praj</dc:creator>
				<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.praj.com.au/?p=377</guid>
		<description><![CDATA[You can use a shorthand notation for setting certain CSS properties, for example: div.example { margin-top: 10px; margin-right: 20px; margin-bottom: 30px; margin-left: 40px; } Is the same as: div.example { margin: 10px 20px 30px 40px; } Nothing revolutionary there. However, I always have trouble remembering the order, so I came up with my own Gen-Y [...]]]></description>
			<content:encoded><![CDATA[<p>You can use a shorthand notation for setting certain CSS properties, for example:</p>
<pre class="brush: css">div.example {
    margin-top: 10px;
    margin-right: 20px;
    margin-bottom: 30px;
    margin-left: 40px;
}</pre>
<p>Is the same as:</p>
<pre class="brush: css">div.example {
    margin: 10px 20px 30px 40px;
}</pre>
<p>Nothing revolutionary there.</p>
<p>However, I always have trouble remembering the order, so I came up with my own Gen-Y acronym (mnemonic) -<strong> trbl</strong> for <em>trouble </em>remembering. Get it?</p>
<p>That is, <strong>t</strong>op <strong>r</strong>ight <strong>b</strong>ottom <strong>left</strong>. Might be helpful next time you are writing some CSS and can&#8217;t remember the order&#8230;</p>
<p><strong>Update</strong>: as a number of people have correctly pointed out, a better, more traditional way of remembering this would be to think of a clock &#8211; going clockwise from 12 (top) -&gt; 3 (right) -&gt; 6 (bottom) -&gt; 9 (left).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.praj.com.au/css-shorthand-property-order/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Dummy HTML Content</title>
		<link>http://www.praj.com.au/dumm-html-content/</link>
		<comments>http://www.praj.com.au/dumm-html-content/#comments</comments>
		<pubDate>Sat, 01 May 2010 04:17:28 +0000</pubDate>
		<dc:creator>praj</dc:creator>
				<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.praj.com.au/?p=375</guid>
		<description><![CDATA[Very handy if you need some dummy HTML content: http://html-ipsum.com/]]></description>
			<content:encoded><![CDATA[<p>Very handy if you need some dummy HTML content: <a href="http://html-ipsum.com/">http://html-ipsum.com/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.praj.com.au/dumm-html-content/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Web Development with NotePad++</title>
		<link>http://www.praj.com.au/web-development-with-notepad/</link>
		<comments>http://www.praj.com.au/web-development-with-notepad/#comments</comments>
		<pubDate>Fri, 30 Apr 2010 10:33:24 +0000</pubDate>
		<dc:creator>praj</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.praj.com.au/?p=372</guid>
		<description><![CDATA[I&#8217;ve started using NotePad++ as my primary editor for web development &#8211; HTML, CSS, JavaScript and PHP. Notepad++ gives you everything you need, but you do have to turn on a few settings. Autocompletion. This will prompt for you to complete repeated or known text for the relevant language you are working with: Settings &#62; [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve started using NotePad++ as my primary editor for web development &#8211; HTML, CSS, JavaScript and PHP. Notepad++ gives you everything you need, but you do have to turn on a few settings.</p>
<p><strong>Autocompletion.</strong></p>
<p>This will prompt for you to complete repeated or known text for the relevant language you are working with:</p>
<ul>
<li>Settings &gt; Preferences &gt; Backup/Auto-Completion</li>
</ul>
<ul>
<li>Tick enable auto-completion on each input, and leave it as function completion. You can start from the 2nd character or more if you find it annoying. Press the &lt;enter&gt; or &lt;tab&gt; keys to automatically populate the full word.</li>
</ul>
<p><strong>TextFX Settings</strong></p>
<p>TextFX can perform automatic closing of (X)HTML and XML tags through the following setting:</p>
<ul>
<li>TextFX &gt; TextFX Settings &gt; Autoclose XHTML/XML &lt;Tag&gt;</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.praj.com.au/web-development-with-notepad/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>NotePad++ Run in Various Browsers</title>
		<link>http://www.praj.com.au/notepad-run-in-various-browsers/</link>
		<comments>http://www.praj.com.au/notepad-run-in-various-browsers/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 01:46:49 +0000</pubDate>
		<dc:creator>praj</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.praj.com.au/?p=368</guid>
		<description><![CDATA[By default, NotePad++ has a number of browsers included in the Run menu including: Firefox Internet Explorer Safari Chrome However, depending on where these browsers are installed on your computer they may not work. For example, I have Firefox Portable installed, so, the command to launch it is D:\Programs\Firefox\FirefoxPortable.exe. To update the shortcuts listed on [...]]]></description>
			<content:encoded><![CDATA[<p>By default, NotePad++ has a number of browsers included in the Run menu including:</p>
<ul>
<li>Firefox</li>
<li>Internet Explorer</li>
<li>Safari</li>
<li>Chrome</li>
</ul>
<p>However, depending on where these browsers are installed on your computer they may not work. For example, I have <a href="http://portableapps.com/apps/internet/firefox_portable" target="_blank">Firefox Portable</a> installed, so, the command to launch it is D:\Programs\Firefox\FirefoxPortable.exe.</p>
<p>To update the shortcuts listed on the Run menu, you need to edit the file shortcuts.xml in the NotePad++ installation directory (e.g. C:\Program Files\NotePad++\shortcuts.xml). However there&#8217;s a catch. You can&#8217;t edit this file with NotePad++. Instead, edit with another text editor (e.g. plain old NotePad). If you edit this file with NotePad++ the changes won&#8217;t persist &#8211; and the file will be reset back to its defaults.</p>
<p>Here&#8217;s the change I made to the file for Firefox Portable:</p>
<pre class="brush: xml">&lt;Command name="Launch in Firefox" Ctrl="yes" Alt="yes" Shift="yes" Key="88"&gt;
D:\Programs\Firefox\FirefoxPortable.exe &amp;quot;$(FULL_CURRENT_PATH)&amp;quot;
&lt;/Command&gt;</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.praj.com.au/notepad-run-in-various-browsers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>StatPress Analytics in WordPress</title>
		<link>http://www.praj.com.au/statpress-analytics-in-wordpress/</link>
		<comments>http://www.praj.com.au/statpress-analytics-in-wordpress/#comments</comments>
		<pubDate>Tue, 13 Apr 2010 21:00:06 +0000</pubDate>
		<dc:creator>praj</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Web Development]]></category>

		<guid isPermaLink="false">http://blog.praj.com.au/?p=363</guid>
		<description><![CDATA[I&#8217;ve been trying StatPress for a week now and its going pretty well. Its an alternative to analytics software such as Google Analytics to give you information about visitors to your wordpress site.]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been trying <a href="http://wordpress.org/extend/plugins/statpress/" target="_blank">StatPress</a> for a week now and its going pretty well. Its an alternative to analytics software such as Google Analytics to give you information about visitors to your wordpress site.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.praj.com.au/statpress-analytics-in-wordpress/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

