<?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"
	>

<channel>
	<title>Developer Tutorials' Webmaster Blog &#187; Development</title>
	<atom:link href="http://www.developertutorials.com/blog/tag/development/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.developertutorials.com/blog</link>
	<description>Keeping webmasters up-to-date on technology.</description>
	<pubDate>Tue, 02 Sep 2008 14:59:45 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.2</generator>
	<language>en</language>
			<item>
		<title>Snipplr: A Code Repository for Designers and Developers</title>
		<link>http://www.developertutorials.com/blog/design/snipplr-a-code-repository-for-designers-and-developers-281/</link>
		<comments>http://www.developertutorials.com/blog/design/snipplr-a-code-repository-for-designers-and-developers-281/#comments</comments>
		<pubDate>Mon, 30 Jun 2008 21:50:19 +0000</pubDate>
		<dc:creator>JonGos</dc:creator>
		
		<category><![CDATA[Design]]></category>

		<category><![CDATA[Development]]></category>

		<guid isPermaLink="false">http://www.developertutorials.com/blog/design/snipplr-a-code-repository-for-designers-and-developers-281/</guid>
		<description><![CDATA[
Snipplr.com is like del.icio.us for people who write a lot of code.  Whether you develop for Ruby or Django, hack WordPress or MovableType, or if you just write XHTML, you probably keep a &#8220;Code Diary&#8221; full of useful tricks, hacks and hints that you&#8217;ve used in past projects. Snipplr exists to let you share [...]]]></description>
			<content:encoded><![CDATA[<p><a href='http://www.developertutorials.com/blog/wp-content/uploads/2008/06/picture-11.png'><img src="http://www.developertutorials.com/blog/wp-content/uploads/2008/06/picture-11-300x133.png" alt="" width="300" height="133" class="alignnone size-medium wp-image-282" /></a></p>
<p><a href="http://snipplr.com/">Snipplr.com</a> is like del.icio.us for people who write a lot of code.  Whether you develop for Ruby or Django, hack WordPress or MovableType, or if you just write XHTML, you probably keep a &#8220;Code Diary&#8221; full of useful tricks, hacks and hints that you&#8217;ve used in past projects. Snipplr exists to let you share that code with other developers just like yourself.  It&#8217;s become indispensable to my work flow since I found it!</p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark" style="float:left;">
<div class="d281" style="overflow:hidden">
<div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://www.developertutorials.com/blog/design/snipplr-a-code-repository-for-designers-and-developers-281/&amp;title=Snipplr%3A+A+Code+Repository+for+Designers+and+Developers" title="Add to&nbsp;Del.icio.us">Del.icio.us</a></div><div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://www.developertutorials.com/blog/design/snipplr-a-code-repository-for-designers-and-developers-281/&amp;title=Snipplr%3A+A+Code+Repository+for+Designers+and+Developers" title="Add to&nbsp;Digg This">Digg This</a></div><div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit.php?url=http://www.developertutorials.com/blog/design/snipplr-a-code-repository-for-designers-and-developers-281/&amp;title=Snipplr%3A+A+Code+Repository+for+Designers+and+Developers" title="Add to&nbsp;Stumble">Stumble</a></div></div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://www.developertutorials.com/blog/design/snipplr-a-code-repository-for-designers-and-developers-281/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Subversion Workflow For Designers Pt. 2</title>
		<link>http://www.developertutorials.com/blog/design/subversion-workflow-for-designers-pt-2-232/</link>
		<comments>http://www.developertutorials.com/blog/design/subversion-workflow-for-designers-pt-2-232/#comments</comments>
		<pubDate>Tue, 24 Jun 2008 20:10:01 +0000</pubDate>
		<dc:creator>JonGos</dc:creator>
		
		<category><![CDATA[Design]]></category>

		<category><![CDATA[Development]]></category>

		<category><![CDATA[graphics]]></category>

		<category><![CDATA[subversion]]></category>

		<category><![CDATA[svn]]></category>

		<guid isPermaLink="false">http://www.developertutorials.com/blog/design/subversion-workflow-for-designers-pt-2-232/</guid>
		<description><![CDATA[
We&#8217;re talking about Subversion, the powerful Version tracking system for programmers and how we can repurpose it for design workflow.  This was covered by Chris Nagele a while back at ThinkVitamin but it&#8217;s a topic so new to the design community it deserves repeating.  

The Scenario
Kathy runs a small design firm that is [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://upload.wikimedia.org/wikipedia/en/thumb/7/79/Subversion.png/250px-Subversion.png"></p>
<p>We&#8217;re talking about Subversion, the powerful Version tracking system for programmers and how we can repurpose it for design workflow.  This was covered by <a href="http://www.thinkvitamin.com/features/design/subversion-for-designers">Chris Nagele</a> a while back at <a href="http://www.thinkvitamin.com/features/design/subversion-for-designers">ThinkVitamin</a> but it&#8217;s a topic so new to the design community it deserves repeating.  </p>
<p><span id="more-232"></span></p>
<p><b>The Scenario</b></p>
<p>Kathy runs a small design firm that is working with three clients. One client needs a website, print graphics and branding, another needs a Wordpress theme designed and the last needs a web application for Facebook.  Kathy&#8217;s staff includes one designer, one web developer, one backend programmer and herself who does a little bit of everything.  Without Subversion, I assure you making this happen (while entirely possible) will be a huge mess.  The designer will ordinarily turn in their work and let the web designer go at it.  But wait that first client decides they don&#8217;t like the logo any more and they you to rebrand the entire site with a different idea.  Oh and that Facebook App?  It works but the developer uploads three different working versions of the file to your server before going off on a two week vacation with his girlfriend.  He&#8217;s not answering the phone or email, but the client wants changes done immediately and Kathy can&#8217;t tell which of the three versions is the final!  Plus, the whole office catches a virus that shuts down the server for a few hours and when it comes back up, you&#8217;ve lost some data.  How much did you lose?  Was everything backed up?  Which versions of all your stuff was saved?</p>
<p>It happens more often than you think.  Poor Kathy, she thought this would be the month she could take some much needed time off before that big conference in Miami.  </p>
<p><b>The Pitch</b></p>
<p>Kathy shares her troubles with a friend, a software developer, who asks her if she&#8217;s ever heard of Subversion.  He explains to her that with Subversion she can create a repository for her team and have her team start using it for version control.  With the subversion server she&#8217;ll be able to give people different access levels, share files, leave notes, track versions, allow client access and see who&#8217;s working on what when.  Kathy remembers the time her team tried this with first a shared intranet and then later their ftp server.  It was still a mess because they would end up with so many different versions of a file no one knew what to use.  Her friend reminds her that the missing element to all her previous attempts was &#8216;version control&#8217;.  He tells her that the only versions of files that exist on the server are production and final versions.  Divergent variations are treated as separate files entirely and the administrator can see how various projects are progressing.</p>
<p>Kathy now realizes the power of Subversion.  It might just be the method for organizing the chaos of her studio that she&#8217;s been looking for.</p>
<p><b>Adopting the Subversion Workflow</b></p>
<p>This may not be the best example, but you get the point.  Subversion makes it easy for many different people to track the development of projects by only serving you specific versions of files.  It doesn&#8217;t matter if the file is a beta version of a web app or an early concept for a logo.  The only version of a file that will ever be on the Subversion server is the latest one.  If not, then someone&#8217;s not using it right and they need to be instructed.</p>
<p>The first thing Kathy learns from her programmer friend is to make Subversion the repository for ALL work coming in and out of her studio.  You don&#8217;t want one person on your team going rogue and serving files to clients off his laptop because this will result in the same problem as before and that would be counter productive.  Every new project her studio takes on now gets a folder with the names of everyone in the studio in it.  People &#8220;checkout&#8221; the folders relevant to them and begin work.  At the end of the workday (or week) they check the folders back in.  Subversion tells her what&#8217;s changed, who changed it and when it was changed.  She can also delegate specific projects to specific people who can easily deploy final projects since they can have access to the same data.</p>
<p>Kathy realizes this is also good a way to make sure clients only receive final versions of projects.  She learns about <a href="http://www.warehouseapp.com/">Warehouse</a>, a web client for accessing Subversion servers.  She decides to purchase a plan that allows her to serve files to an unlimited amount of people.  This allows her to track final project deployment and also see when (or if) clients are accessing files.</p>
<p>She also learns that she can either host her own Subversion server or she can can set it up with her web host.  Alternatively applications like <a href="http://www.beanstalkapp.com/" title="beanstalk for subversion">Beanstalk</a> can be used to host Subversion.  She now has a scalable management system that can be used for two people, five or five hundred whether they are in the office or anywhere in the world.</p>
<p>Great!  It&#8217;s wonderful!  Get to the point, how do I use it?</p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark" style="float:left;">
<div class="d232" style="overflow:hidden">
<div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://www.developertutorials.com/blog/design/subversion-workflow-for-designers-pt-2-232/&amp;title=Subversion+Workflow+For+Designers+Pt.+2" title="Add to&nbsp;Del.icio.us">Del.icio.us</a></div><div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://www.developertutorials.com/blog/design/subversion-workflow-for-designers-pt-2-232/&amp;title=Subversion+Workflow+For+Designers+Pt.+2" title="Add to&nbsp;Digg This">Digg This</a></div><div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit.php?url=http://www.developertutorials.com/blog/design/subversion-workflow-for-designers-pt-2-232/&amp;title=Subversion+Workflow+For+Designers+Pt.+2" title="Add to&nbsp;Stumble">Stumble</a></div></div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://www.developertutorials.com/blog/design/subversion-workflow-for-designers-pt-2-232/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Designing and Coding a Wordpress Theme From Scratch (Part 8)</title>
		<link>http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-8-154/</link>
		<comments>http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-8-154/#comments</comments>
		<pubDate>Tue, 29 Apr 2008 19:44:44 +0000</pubDate>
		<dc:creator>JonGos</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[WordPress]]></category>

		<category><![CDATA[code]]></category>

		<category><![CDATA[Design]]></category>

		<category><![CDATA[Development]]></category>

		<category><![CDATA[theme]]></category>

		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-8-154/</guid>
		<description><![CDATA[Going From Photoshop to XHTML to Wordpress Theme.  In this multi-part series I'll detail how to create and design a Wordpress theme in Photoshop and take it from just an idea to fully coded.
]]></description>
			<content:encoded><![CDATA[<p><a target="_blank" href="http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-1-143/">Part 1</a> - &#8220;Tools For The Task&#8221; and &#8220;Preparation&#8221;<br />
<a target="_blank" href="http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-2-144/">Part 2</a> - &#8220;Layout And Structure&#8221; and &#8220;Designing Wordpress Themes in Photoshop&#8221;<br />
<a target="_blank" href="http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-3-146/">Part 3</a> - &#8220;Photoshop to XHTML in 24 Hours&#8221;<br />
<a target="_blank" href="http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-4-147/">Part 4</a> - &#8220;Cleaning Up Your XHTML&#8221;<br />
<a target="_blank" href="http://www.developertutorials.com/blog/javascript/designing-and-coding-a-wordpress-theme-from-scratch-part-5-149/">Part 5</a> - &#8220;Preloading Images with Javascript and CSS&#8221;<br />
<a target="_blank" href="http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-6-151/">Part 6</a> - &#8220;Marking Up is Hard to Do&#8221; and &#8220;The Anatomy of a Wordpress Theme&#8221;<br />
<a target="_blank" href="http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-7-153/">Part 7</a> - &#8220;Beginning with PHP for Wordpress&#8221;</p>
<hr />
<b>Putting the Press in WordPress with PHP</b></p>
<p>Wordpress is <i>a state-of-the-art publishing platform with a focus on aesthetics, web standards, and usability</i> as the makers proudly proclaim at <a target="_blank" href="http://wordpress.org">wordpress.org</a>.  The keyword there being &#8216;publishing&#8217; and the most important part of the Wordpress publishing engine is the element that allows content to be published online easily and automatically.  This element is called the <strong>the loop</strong>.</p>
<p><span id="more-154"></span></p>
<p>While I can&#8217;t get into all the operational mechanics of how Wordpress works here, I can refer you to a page that does offer more in depth analysis (<a href="http://codex.wordpress.org" target="_blank">here</a>).  What is important to this tutorial is that the Wordpress theme we designed in Photoshop needs this PHP function (along with a few others) to correctly fetch content from the database.  Let&#8217;s examine four critical functions:</p>
<pre>
&lt;?php query_posts();?&gt;
<strong>Requests the database of content, should be placed near the top of index.php
just after the request &lt;?php get_header(); ?&gt;</strong>

&lt;?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?&gt;
<strong>this is The Loop and it should be placed prior to
where you want your content to print</strong>

&lt;?php the_content(''); ?&gt;
<strong>Calls and prints the content of your blog according to the settings in the
admin section or php functions called before it.  This should be placed wherever
you want your blog posts to go within the &lt;div&gt; tags.</strong>

&lt;?php endif; ?&gt;
<strong>Closes the loop.</strong>
</pre>
<p>Using the code from <a href="http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-7-153/">Part 7</a> as an example:</p>
<pre>
&lt;?php get_header(); ?&gt;
&lt;?php query_posts();?&gt;

    &lt;/div&gt;

	&lt;div id="post"&gt;
	  &lt;div class="entry"&gt;
	&lt;?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?&gt;

		&lt;div class="posts"&gt;
	&lt;?php the_excerpt(''); ?&gt;
     		&lt;/div&gt;   

	&lt;?php endif; ?&gt;
	  &lt;/div&gt;
     &lt;/div&gt;

&lt;?php get_footer(); ?&gt;
</pre>
<p>You may notice that the &lt;div&gt; tags with <strong>id</strong>  and <strong>class=&#8221;posts&#8221;</strong>elements.  These are styling anything they contain. My <strong>id=&#8221;post&#8221;</strong> is printing my photoshoped content area.  The area with <strong>id=&#8221;class&#8221;</strong> is formating how my content will be formated.  Do I want to justify text?  Do I want to use a text-transform on the first letter?  Change the color of text?  All those types of styles should be applied to this class to be passed on to the text inside the container.</p>
<p>These three lines alone are essentially all you need for index.php in your theme.  However, you&#8217;ll notice that we&#8217;re missing a few important items.  We need to call and style the posts name, permalink, and meta data individually.  This means we need to add the following:</p>
<pre>
&lt;a href="&lt;?php the_permalink() ?&gt;"&gt;&lt;?php the_title(); ?&gt;&lt;/a&gt;
<strong>Requests the post tile and links to it. Place this before the post content.</strong>

&lt;?php the_time('F j, Y'); ?&gt; at &lt;?php the_time('g:i a'); ?&gt;
&lt;?php comments_popup_link('| No Comments', '| 1 Comment;', '| % Comments;'); ?&gt;
<strong>Requests various types of information related to the post.  Place this just after the previous line.</strong>

&lt;?php the_category(', ') ?&gt; &lt;?php the_tags('| Tags: ', ', ', ''); ?&gt;
&lt;?php edit_post_link('| Edit', '', ''); ?&gt;&lt;/p&gt;
<strong>This calls the footer meta information for each individual post.
Place this after the content but before you close the loop.</strong>
</pre>
<p>After placing these codes my index.php looks something like this:</p>
<pre>
&lt;?php get_header(); ?&gt;
&lt;?php query_posts("showposts=2");?&gt;

	&lt;div id="post"&gt;
	&lt;div class="entry"&gt;
		&lt;?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?&gt;

   	&lt;span class="postname"&gt;&lt;a href="&lt;?php the_permalink() ?&gt;"&gt;&lt;?php
 the_title(); ?&gt;&lt;/a&gt;&lt;/span&gt;

    	&lt;p class="postinfo"&gt;

		&lt;?php the_time('F j, Y'); ?&gt; at &lt;?php the_time('g:i a'); ?&gt; &lt;?
php comments_popup_link('| No Comments', '| 1 Comment;', '| % Comments;'); ?&gt;&lt;/p&gt;

	&lt;div class="posts"&gt;
    		&lt;?php the_content(''); ?&gt;
         	&lt;p class="postinfo"&gt;Posted in &lt;?php the_category(', ') ?&gt; &lt;?php
 the_tags('| Tags: ', ', ', ''); ?&gt; &lt;?php edit_post_link('| Edit', '', ''); ?&gt;
&lt;/p&gt;

     	&lt;/div&gt;   

		&lt;?php endif; ?&gt;
	&lt;/div&gt;
	&lt;/div&gt;

    		&lt;?php get_footer(); ?&gt;
</pre>
<p>In Part 9 we&#8217;ll be discussing how to correctly markup header.php, footer.php and footer.php and in Part 10 we&#8217;ll create the other pages Wordpress needs.</p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark" style="float:left;">
<div class="d154" style="overflow:hidden">
<div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-8-154/&amp;title=Designing+and+Coding+a+Wordpress+Theme+From+Scratch+%28Part+8%29" title="Add to&nbsp;Del.icio.us">Del.icio.us</a></div><div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-8-154/&amp;title=Designing+and+Coding+a+Wordpress+Theme+From+Scratch+%28Part+8%29" title="Add to&nbsp;Digg This">Digg This</a></div><div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit.php?url=http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-8-154/&amp;title=Designing+and+Coding+a+Wordpress+Theme+From+Scratch+%28Part+8%29" title="Add to&nbsp;Stumble">Stumble</a></div></div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-8-154/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Designing and Coding a Wordpress Theme From Scratch (Part 7)</title>
		<link>http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-7-153/</link>
		<comments>http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-7-153/#comments</comments>
		<pubDate>Tue, 29 Apr 2008 13:51:45 +0000</pubDate>
		<dc:creator>JonGos</dc:creator>
		
		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Photoshop]]></category>

		<category><![CDATA[WordPress]]></category>

		<category><![CDATA[Design]]></category>

		<category><![CDATA[Development]]></category>

		<category><![CDATA[theme]]></category>

		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-7-153/</guid>
		<description><![CDATA[Going From Photoshop to XHTML to Wordpress Theme.  In this multi-part series I'll detail how to create and design a Wordpress theme in Photoshop and take it from just an idea to fully coded.
]]></description>
			<content:encoded><![CDATA[<p>This is the seventh post in series about creating Wordpress themes with your Photoshop designs.  You may want to review before we continue&#8230;.</p>
<p><a target="_blank" href="http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-1-143/">Part 1</a> - &#8220;Tools For The Task&#8221; and &#8220;Preparation&#8221;<br />
<a target="_blank" href="http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-2-144/">Part 2</a> - &#8220;Layout And Structure&#8221; and &#8220;Designing Wordpress Themes in Photoshop&#8221;<br />
<a target="_blank" href="http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-3-146/">Part 3</a> - &#8220;Photoshop to XHTML in 24 Hours&#8221;<br />
<a target="_blank" href="http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-4-147/">Part 4</a> - &#8220;Cleaning Up Your XHTML&#8221;<br />
<a target="_blank" href="http://www.developertutorials.com/blog/javascript/designing-and-coding-a-wordpress-theme-from-scratch-part-5-149/">Part 5</a> - &#8220;Preloading Images with Javascript and CSS&#8221;<br />
<a target="_blank" href="http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-6-151/">Part 6</a> - &#8220;Marking Up is Hard to Do&#8221; and &#8220;The Anatomy of a Wordpress Theme&#8221;</p>
</p>
<hr style="margin-bottom:20px; height:1px; color:#cccccc;"/>
<b>Beginning with PHP for WordPress</b></p>
<ul>
<li>First we&#8217;ll duplicate <strong>index.html</strong> and rename the copy <strong>index.php</strong>.  We&#8217;re only keeping the original .html file for reference to make sure that the finished PHP operates and looks the same.</li>
<li>Let&#8217;s open index.php in our text editor.  Right now it&#8217;s just a .html renamed .php.  Our job is to make make it true PHP.</li>
<p><span id="more-153"></span></p>
<li>Go ahead and create some more blank documents in your theme folder.  Let&#8217;s call them header.php, footer.php and sidebar.php (if you have a side bar in your theme).  We&#8217;re going to divide the HTML into the major sections and make each section it&#8217;s own PHP file to be marked up separately.</li>
<li>Cut everything that you consider the header of your document.  Make sure all tags are closed.  Below you&#8217;ll find an example of my code which is really irrelevant, your own code will look and function differently based on your unique design. Still, for the sake of a working example:</li>
<pre>
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;
&lt;head&gt;
&lt;title&gt;The Wonderful World of Web Design!&lt;/title&gt;
&lt;meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /&gt;
&lt;link rel="stylesheet" href="style.css" type="text/css" media="screen" /&gt;
&lt;script type="text/javascript" src="scripts/preload.js"&gt;&lt;/script&gt;
&lt;/head&gt;

&lt;body&gt;
&lt;div id="container"&gt;
	&lt;div id="header"&gt;
    &lt;div class="description"&gt;The Blog Title&lt;/span&gt;&lt;/div&gt;
	&lt;/div&gt;
    &lt;div id="header-nav"&gt;&lt;div class="content"&gt;
    &lt;a href=""&gt;ADVERTISE&lt;/a&gt;  |
    &lt;a href=""&gt;CONTACT&lt;/a&gt;  |
    &lt;a href=""&gt;RSS&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;
    &lt;div id="spacer1"&gt;&lt;/div&gt;
    &lt;div id="upper-menu"&gt;&lt;div class="navigation"&gt;
    &lt;a href=""&gt;HOME&lt;/a&gt;
    &lt;a href=""&gt;NEWS&lt;/a&gt;
    &lt;a href=""&gt;BLOG&lt;/a&gt;
    &lt;a href=""&gt;HIRE ME&lt;/a&gt;
    &lt;a href=""&gt;PORTFOLIO&lt;/a&gt;
    &lt;a href=""&gt;QUESTIONS&lt;/a&gt;
    &lt;a href=""&gt;LINKS&lt;/a&gt;
    &lt;a href=""&gt;POPULAR&lt;/a&gt;
    &lt;/div&gt;

    &lt;/div&gt;
	&lt;div id="right-top"&gt;&lt;/div&gt;

 &lt;!-- End header.php --&gt;
</pre>
<li>Paste your header information in to header.php.  Do the same for sidebar and your footer, cutting the code from index.php and pasting it in the corresponding file.</li>
<li>I use comment tags like <strong>&lt;!&#8211; End header.php &#8211;&gt;</strong> to write notes that help me remember what&#8217;s going on in my code.</li>
<li>If you do this correctly you&#8217;ll be left with a pretty sparse index.php document.  All that should be left is some That&#8217;s good because now we&#8217;re going to tell index.php where to find all the information we just moved.  We do this with PHP functions like so:</li>
<pre>
&lt;?php get_phpdocumentname(); ?&gt;
</pre>
<p>This <strong>get_</strong> function does exactly what it sounds like it goes and fetches a requested document and displays the contents of that document in the area requested.  My index.php document looked like this:</p>
<pre>
&lt;?php get_header(); ?&gt;

    &lt;/div&gt;

	&lt;div id="post"&gt;
	  &lt;div class="entry"&gt;

		&lt;div class="posts"&gt;
     		&lt;/div&gt;   

	  &lt;/div&gt;
	&lt;/div&gt;

&lt;?php get_footer(); ?&gt;
</pre>
<li>Ofcourse, for now we&#8217;ll leave the body &lt;div&gt;&#8217;s empty.  This is where our content will eventually go.
<p>You&#8217;ll notice that I have no sidebar, that&#8217;s because I call for it in the header.php document instead.  Why?  Because browsers read code from top to bottom and I want page to request the header and side bars to first before requesting the body.</p>
<p>In the next lesson we&#8217;ll start to analyze the PHP functions needed to request and display the dynamic content of a Wordpress theme.</p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark" style="float:left;">
<div class="d153" style="overflow:hidden">
<div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-7-153/&amp;title=Designing+and+Coding+a+Wordpress+Theme+From+Scratch+%28Part+7%29" title="Add to&nbsp;Del.icio.us">Del.icio.us</a></div><div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-7-153/&amp;title=Designing+and+Coding+a+Wordpress+Theme+From+Scratch+%28Part+7%29" title="Add to&nbsp;Digg This">Digg This</a></div><div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit.php?url=http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-7-153/&amp;title=Designing+and+Coding+a+Wordpress+Theme+From+Scratch+%28Part+7%29" title="Add to&nbsp;Stumble">Stumble</a></div></div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://www.developertutorials.com/blog/php/designing-and-coding-a-wordpress-theme-from-scratch-part-7-153/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Designing and Coding a Wordpress Theme From Scratch (Part 4)</title>
		<link>http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-4-147/</link>
		<comments>http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-4-147/#comments</comments>
		<pubDate>Mon, 28 Apr 2008 21:23:17 +0000</pubDate>
		<dc:creator>JonGos</dc:creator>
		
		<category><![CDATA[Design]]></category>

		<category><![CDATA[General]]></category>

		<category><![CDATA[PHP]]></category>

		<category><![CDATA[Photoshop]]></category>

		<category><![CDATA[WordPress]]></category>

		<category><![CDATA[code]]></category>

		<category><![CDATA[css]]></category>

		<category><![CDATA[Development]]></category>

		<category><![CDATA[theme]]></category>

		<category><![CDATA[tut]]></category>

		<category><![CDATA[tutorial]]></category>

		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-4-147/</guid>
		<description><![CDATA[Going From Photoshop to XHTML to Wordpress Theme.  In this multi-part series I'll detail how to create and design a Wordpress theme in Photoshop and take it from just an idea to fully coded.
]]></description>
			<content:encoded><![CDATA[<p>You&#8217;ve gone from Photoshop PSD to slices to XHTML using Parts <a href="http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-1-143/">1</a>, <a href="http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-2-144/">2</a>, and <a href="http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-3-146/">3</a> but if the end result is a Wordpress theme the majority of the work still has to be done.  First of all it&#8217;s important to understand one bit of the operational mechanics of Wordpress.  Wordpress looks for certain information the header of a file called style.css, this is how it can tell themes apart. Here&#8217;s a better explanation from <a href="http://codex.wordpress.org/Theme_Development">Codex</a>:</p>
<blockquote cite="http://codex.wordpress.org/Theme_Development"><p>In addition to CSS style information for your theme, the stylesheet, style.css must provide details about the Theme in the form of comments. No two Themes are allowed to have the same details listed in their comment headers, as this will lead to problems in the Theme selection dialog. If you make your own Theme by copying an existing one, make sure you change this information first.</p>
</blockquote>
<p>Thus, we need to separate our inline CSS and put it in a separate file called style.css</p>
<p><span id="more-147"></span></p>
<p><b>Cleaning up Your XHTML</b></p>
<p>Let&#8217;s start by creating a blank document called style.css in the same directory as your HTML file. Open the CSS file and add the following information:</p>
<pre>/*
Theme Name: your-themes-name
Theme URI: the-theme's-homepage
Description: a-brief-description
Author: your-name
Author URI: your-URI
Template: use-this-to-define-a-parent-theme--optional
Version: a-number-optional

General comments/License Statement if any.
*/</pre>
<p>like so</p>
<p><img src="http://farm3.static.flickr.com/2375/2450107644_8959118e9c.jpg"></p>
<p>Now let&#8217;s open the HTML file the Photoshop created for us which should look something like <a href="http://flickr.com/photos/ww4f/2450125002/" title="click to see the document" rel="_blank">this</a>.<br />
The inline document is essentially divided for us already because everything between the &lt;style&gt; and &lt;/style&gt; tags is going to be cut out of our html document and pasted into the CSS document just after the heading we just added.  Let&#8217;s do that now, copy the style data out of the HTML document and into the CSS document and make sure that you close the tags once you&#8217;ve done so.</p>
<p>The resulting HTML file should now look like this:</p>
<p><img src="http://farm4.static.flickr.com/3193/2449334405_fdf4aff807.jpg"></p>
<p>and the CSS file like this:</p>
<p><img src="http://farm3.static.flickr.com/2111/2449334337_3183c10b1a.jpg"></p>
<p>Got it?  Now lets do some major cleaning.  Now that we&#8217;ve removed the style from our HTML we need to add it back.  We&#8217;re going to replace the empty &lt;style&gt; tags with the following line:</p>
<pre>&lt;link rel="stylesheet" href="style.css" type="text/css" media="screen" /&gt;</pre>
<p>This line is telling our document some very useful information:</p>
<ol>
<li>rel - the relationship of the linked document to the current document</li>
<li>href - the url to the linked document</li>
<li>type - the MIME (Multipurpose Internet Mail Extension) type of the target URL</li>
<li>media - denotes on which device the document is meant to be displayed</li>
</ol>
<p>or the translation for humans: &#8220;Hello, the text file that lives at this URL is a stylesheet that was made for use with documents that would be displayed on computer monitors and screens.&#8221;</p>
<p>We have to do this because we&#8217;ve taken out the style information but since we still want to style our HTML document we have to tell it where the style information now lives.  Next we want to empty all our &lt;div&gt; tags. </p>
<p>Since all our our photoshop images are essentially background images any line from our HTML document that looks like this:</p>
<pre>
   &lt;div id="aqua-01_"&gt;
	&lt;img id="yourfilename_01" src="yourfilename_01.png" width="549"
                  height="126" alt="" /&gt;
   &lt;/div&gt;
</pre>
<p>Should be changed to look like this:</p>
<pre>
	&lt;div id="aqua-01_"&gt;
	&lt;/div&gt;
</pre>
<p>But only when you change the corresponding ID container the CSS document to look like this:</p>
<pre>
	#aqua-01_ {
	position:absolute;
	left:0px;
	top:0px;
	width:549px;
	height:126px;
	background:url(images/aqua_01.png);
	}
</pre>
<p>What we&#8217;ve done is taken the image out of the &lt;div&gt; container in our HTML document and placed in the corresponding ID container in CSS.  This is important because now we can put other things like text or other images into the HTML files &lt;div&gt; container.  This will also allow our page to structure itself properly even if a few images are slow to load.</p>
<p>Finally we want to take anything that is an image and place it in a folder called &#8220;img&#8221; or &#8220;images&#8221;.  If you look at the code above I&#8217;m telling the CSS to look for image files in a folder called &#8220;images&#8221;.  We want to do this for organizational purposes.  Of course this is entirely optional but it&#8217;s good practice and somewhat of an organizational standard.</p>
<p>Are you still confused?<br />
<a href='http://www.developertutorials.com/blog/wp-content/uploads/2008/04/html_css.zip'>Download these files</a> and examine them to see if you can figure out what I did to make the page render properly.</p>
<p>In the next lesson we&#8217;re going learn how to optimize our page for speed using javascript.  Sweating yet? Don&#8217;t worry we&#8217;re already a lot closer than when we started!</p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark" style="float:left;">
<div class="d147" style="overflow:hidden">
<div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-4-147/&amp;title=Designing+and+Coding+a+Wordpress+Theme+From+Scratch+%28Part+4%29" title="Add to&nbsp;Del.icio.us">Del.icio.us</a></div><div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-4-147/&amp;title=Designing+and+Coding+a+Wordpress+Theme+From+Scratch+%28Part+4%29" title="Add to&nbsp;Digg This">Digg This</a></div><div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit.php?url=http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-4-147/&amp;title=Designing+and+Coding+a+Wordpress+Theme+From+Scratch+%28Part+4%29" title="Add to&nbsp;Stumble">Stumble</a></div></div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://www.developertutorials.com/blog/design/designing-and-coding-a-wordpress-theme-from-scratch-part-4-147/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Webinale 2008 Most Valuable Website Design Award</title>
		<link>http://www.developertutorials.com/blog/web/webinale-2008-most-valuable-website-design-award-123/</link>
		<comments>http://www.developertutorials.com/blog/web/webinale-2008-most-valuable-website-design-award-123/#comments</comments>
		<pubDate>Sun, 20 Apr 2008 16:36:44 +0000</pubDate>
		<dc:creator>Omi Azad</dc:creator>
		
		<category><![CDATA[Web]]></category>

		<category><![CDATA[Website Promotion]]></category>

		<category><![CDATA[Award]]></category>

		<category><![CDATA[Development]]></category>

		<category><![CDATA[Most]]></category>

		<category><![CDATA[Valuable]]></category>

		<category><![CDATA[Webinale]]></category>

		<category><![CDATA[Website]]></category>

		<guid isPermaLink="false">http://www.developertutorials.com/blog/web/webinale-2008-most-valuable-website-design-award-123/</guid>
		<description><![CDATA[Software &#38; Support Verlag&#8217;s website Create or Die  is a very popular informative web portal in Germany. They have arranged a valuable  web design award program for the first time called &#8220;Webinale 2008.&#8221; So far 30  websites has been nominated for Webinale 2008 Most Valuable Website Design  Award, under 3 different [...]]]></description>
			<content:encoded><![CDATA[<p>Software &amp; Support Verlag&#8217;s website Create or Die  is a very popular informative web portal in Germany. They have arranged a valuable  web design award program for the first time called &#8220;Webinale 2008.&#8221; So far 30  websites has been nominated for Webinale 2008 Most Valuable Website Design  Award, under 3 different categories. The categories are 1) Most Valuable  Business website, 2) Most Valuable Design Website, and 3) Most Valuable Development website. Winner from each category will get 5,000 Euros (+ some  more extra benefits).</p>
<p> There won&#8217;t be any Jury for selecting the winner. Only  visitor of the nominated sites can come to <a href="http://createordie.de/webinale/webinale-awards.php" target="_blank">Create or Die&#8217;s website</a> and vote for  their chosen site. Based on the online votes, on 27 May 2008 the award will be  given.</p>
<p> Still anyone can nominate their site by going <a href="http://entwickler.com/ssl/webinale_award/" target="_blank">here</a> (oops! The language is not English, try Google Translator <img src='http://www.developertutorials.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ).</p>
<p> You can find out the nominees and vote for them by going <a href="http://createordie.de/webinale/webinale-awards.php" target="_blank">here.</a></p>
<!-- Social Bookmarks BEGIN -->
<div class="social_bookmark" style="float:left;">
<div class="d123" style="overflow:hidden">
<div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://del.icio.us/post?url=http://www.developertutorials.com/blog/web/webinale-2008-most-valuable-website-design-award-123/&amp;title=Webinale+2008+Most+Valuable+Website+Design+Award" title="Add to&nbsp;Del.icio.us">Del.icio.us</a></div><div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://digg.com/submit?phase=2&amp;url=http://www.developertutorials.com/blog/web/webinale-2008-most-valuable-website-design-award-123/&amp;title=Webinale+2008+Most+Valuable+Website+Design+Award" title="Add to&nbsp;Digg This">Digg This</a></div><div id="socialstyles"><a onclick="window.open(this.href, '_blank', 'scrollbars=yes,menubar=no,height=600,width=750,resizable=yes,toolbar=no,location=no,status=no'); return false;" href="http://www.stumbleupon.com/submit.php?url=http://www.developertutorials.com/blog/web/webinale-2008-most-valuable-website-design-award-123/&amp;title=Webinale+2008+Most+Valuable+Website+Design+Award" title="Add to&nbsp;Stumble">Stumble</a></div></div>
</div>
<!-- Social Bookmarks END -->
]]></content:encoded>
			<wfw:commentRss>http://www.developertutorials.com/blog/web/webinale-2008-most-valuable-website-design-award-123/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
