<?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>farfromfearless &#187; Tutorial</title>
	<atom:link href="http://www.farfromfearless.com/category/tutorial/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.farfromfearless.com</link>
	<description>Personal blog of Chris Murphy</description>
	<lastBuildDate>Wed, 14 Jul 2010 13:18:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Visio Productivity Tips</title>
		<link>http://www.farfromfearless.com/2010/03/10/visio-productivity-tips/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=visio-productivity-tips</link>
		<comments>http://www.farfromfearless.com/2010/03/10/visio-productivity-tips/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 16:57:45 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Visio]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Tricks]]></category>
		<category><![CDATA[Visio Tutorials]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=544</guid>
		<description><![CDATA[The majority of my work as of late has been on the planning side of my service offering, e.g. Interaction Design and User Interface Design, and most of the artefacts of my work are typically generated with Visio. This past year has provided me with many opportunities and challenges in working with Visio and improving my efficiency with the tool.]]></description>
			<content:encoded><![CDATA[<p>I thought I would take some time to share some of the lessons have helped to improve my efficiency with Visio (2007).</p>
<p><strong>For the record:</strong> I’m not a die-hard fan of Visio, but rather I believe in choosing The Right Tool for The Job. In this case, Visio has been most effective, though I do use other tools when Visio is not appropriate.</p>
<p><strong>Quick Links:</strong></p>
<ol>
<li><a title="Backgrounds &amp; Guides" href="#tip-1">Tip No. 1</a>: Backgrounds &amp; Guides</li>
<li><a title="Use Layers to Group Common Elements" href="#tip-2">Tip No. 2</a>: Use Layers to Group Common Elements</li>
<li><a title="Use “Shape Data” for Common Shapes" href="#tip-3">Tip No. 3</a>: Use “Shape Data” for Common Shapes</li>
</ol>
<h2 id="tip-1">Tip No. 1: Backgrounds &amp; Guides</h2>
<p>Guides provide a great way to implement consistent columns and rows for a page. This is useful when planning a series of pages derived from a common layout.</p>
<h3>Problem:</h3>
<p>In my wireframe document, I have three different types of background pages for common page configurations. Each page has a defined “working area” where I layout my shapes and other elements. In the past, I have typically resorted to adding guides on each page, and most of these guides are aligned to the “working area” previously described.</p>
<p>The problem is that I’m having to add new guides to each page I create. I’ve tried a variety of techniques to manage my guides, and the one I had settled on previously (and still use to some degree) is copy/pasting my guides (and other shapes) using a macro called:</p>
<pre>CopyNoTranslate()</pre>
<p>I found the macro on <a title="CopyNoTranslate() - Wellie.com" href="http://www.welie.com/visio/index.php#pasteinplace">Welie.com</a>, and suffice to say this did improve my efficiency, but only to a degree.</p>
<p><strong>Note:</strong> Wellie.com is a great source for useful macros for Visio beyond just the one function.</p>
<h3>Solution:</h3>
<p>A better solution was a heck of a lot easier than I realized: <strong>add the guides to your background pages</strong>.</p>
<p>Using guides in the background pages allows me to ensure consistency in terms of shape dimensions (vertically and horizontally), by allowing me to “snap” a shape to align to a guide. This approach has the added bonus of minimizing the number of additional guides I need top drop onto a page. I’ve only discovered this one feature recently, and it’s really helped to minimize the amount of repetitive work I had to do in preparing the pages.</p>
<h2 id="tip-2">Tip No. 2: Use Layers to Group Common Elements</h2>
<p>This one takes a little bit of time to get in the habit of doing, and at some point, I’ll get around to writing a macro to automate it.</p>
<h3>Problem:</h3>
<p>There are times where I have a number of shapes or a collection of shapes that I want to show or hide when I output the document for a client review (*.PDF). In the past, I have resorted to commandeering Acrobat’s layer’s feature, but the learning curb for clients was a little too high for me to expect to use that as a long-term solution.</p>
<h3>Solution:</h3>
<p>What I ended up doing was using Visio’s “Layers” feature to group common elements together by assigning selected shapes to a layer. You can see a quick demo/tutorial on <a title="Visio Layers Tutorial - YouTube, 1 min - July 18, 2009" href="http://www.youtube.com/watch?v=lI_Q_WflpsA">how to use Visio’s Layers here</a>.</p>
<p>This approach allowed me to toggle shapes such as annotations or overlays (e.g. “Modal Windows”) on certain pages, and hide them altogether for others.</p>
<p>This approach does come with <strong>a small caveat</strong>: if you want to show all of the hidden layers in your document, e.g. annotations, you’ll need to either produce one document with all of the elements showing, or two documents—one with all the elements showing, and the second without.</p>
<h2 id="tip-3">Tip No. 3:  Use “Shape Data” for Common Shapes</h2>
<p>In an earlier article, I provided a detailed tutorial on how to leverage the Shape Data features for adding prompts with input fields (with some intelligent behaviour). This one feature has allowed me to improve how I manage and work with text and information I add to my wireframes, etc.</p>
<h3>Problem:</h3>
<p>You might have a pretty concise library of common elements that you use on a regular basis, and a few of them require that you update a number of fields. A good example of this is <a title="Nick Finck’s Sitemap Stencils" href="http://www.nickfinck.com/blog/entry/visio_stencils_for_information_architects/">Nick Finck’s Sitemap Stencils</a> which are still in use by designers today.  If you’re using the stencils, you’ll likely have discovered that you need to click a number of times to drill down into the desired field before you can enter any text (the page ID for example).</p>
<h3>Solution:</h3>
<p>Use Visio’s Shape Data features to help automate the task of data entry and editing for common shapes. Apply this feature sparingly as it is easy to go over-board with the technique.</p>
<p>Shape Data can improve the task of updating and manage these shapes by automating the data-entry task. I won’t go into great detail here, but if you want more information about how to accomplish this, take a read through my tutorial: <a title="Creating a Reusable Shape with Visio Shape Data Support" href="http://www.farfromfearless.com/2009/04/15/creating-a-reusable-shape-with-visio-shape-data-support/">Creating a Reusable Shape with Visio Shape Data Support</a>.</p>
<h2>What’s Next:</h2>
<p>There are a number of great sources for more tips on using Visio’s lesser used features (and some of it’s more advanced features); one such source is <a title="VisGuy--Shapes, Stencils, Drawings, Templates, Tutorials, Tips &amp; Developer Info for Microsoft Visio" href="http://www.visguy.com/">VisGuy.com</a>—from whom I have learned a great deal about Visio.</p>
<p>If you have any tips of your own, please feel free to share them <a title="Share your Visio tips &amp; tricks" href="#comment-form-main">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2010/03/10/visio-productivity-tips/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Creating a Reusable Shape with Visio Shape Data Support</title>
		<link>http://www.farfromfearless.com/2009/04/15/creating-a-reusable-shape-with-visio-shape-data-support/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=creating-a-reusable-shape-with-visio-shape-data-support</link>
		<comments>http://www.farfromfearless.com/2009/04/15/creating-a-reusable-shape-with-visio-shape-data-support/#comments</comments>
		<pubDate>Thu, 16 Apr 2009 02:09:01 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[Visio]]></category>
		<category><![CDATA[Custom Behavior]]></category>
		<category><![CDATA[Custom Event]]></category>
		<category><![CDATA[Data Graphic]]></category>
		<category><![CDATA[Shape Data]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=419</guid>
		<description><![CDATA[An in-depth tutorial on how to leverage Visio's datagraphics features for building efficient, multipurpose shapes for use in your diagrams and documents.]]></description>
			<content:encoded><![CDATA[<p>I’ve been quite busy over the past week having to rebuild many of my site planning documents from scratch. In the course of delving deeper into the workings and features of Visio, I’ve ended up with a small collection of really useful tips that I thought I would share here. The most useful one to date has been the creation of Visio shapes with Data Graphics support.<span id="more-419"></span><strong></strong></p>
<p><strong>Note:</strong> this should really be a screen cast – next time <img src='http://www.farfromfearless.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>
<h2>Custom IA Shapes with a Dialog/Prompt</h2>
<p>One of the primary building blocks of any information architecture is the shape that represents a page concept. There are some great stencils out there for Visio that other designers have put together, but you’ll find that maintaining these shapes (when on page) can be laborious given how Visio constructs its geometry.</p>
<p>One of the time savers that can be leveraged is the use of “Shape Data” to add custom information to a shape, and “Shape Graphics” to display the custom information. One other feature that can be leveraged is the customization of “Shape Sheet” information to provide dialog support.</p>
<h3>What is a Data Graphic?</h3>
<blockquote><p>Microsoft Office Visio 2007 Professional offers new ways for businesses to visualize information. New data connectivity, data linking, and data refresh features enable users to more easily connect to external data and associate it with specific shapes in a drawing, and to more easily refresh the data manually or automatically. The Data Graphics feature presents linked data and other shape information graphically in a diagram. Together, these capabilities make it faster and easier to communicate important information for making decisions and taking actions.Source: <a title="Building Custom Data Graphics for Visio 2007" href="http://msdn.microsoft.com/en-us/library/aa468596.aspx">MSDN – Office Developer Center</a></p></blockquote>
<p>In short: Data Graphics provide visualization capabilities to represent data in a meaningful way.</p>
<p>You can <a title="Visio Data Grahics for UxD/IxD Documents" href="http://www.farfromfearless.com/wp-content/uploads/2009/04/fff_custom_shape.zip">download the example for this tutorial here</a>.</p>
<h3>Getting Started:</h3>
<p><strong>Software:</strong> I’m working with a copy of <a href="http://office.microsoft.com/en-us/visio/default.aspx">Visio 2007</a>, and so some of the concepts might be labelled differently in older versions of the software. Consult your product documentation if need help finding the features.</p>
<h2>Step 1: Preparing the shape</h2>
<p>You can approach this step in one of two ways: start from scratch or attempt to modify an existing shape (as long as its not leveraging Data Graphics already).</p>
<p>For the purpose of this tutorial, we’ll be starting from scratch, but that doesn’t mean that you can’t skip this step and apply the later principles to your existing shapes.</p>
<p>Moving on…</p>
<h3>Creating the shape</h3>
<p>You’re going to need a shape. The most basic shape you may want to use is a rectangle to represent a page (the orientation is up to you). Start off by drawing a simple rectangle using Visio’s drawing tools. I have my page units set to inches, so a simple 1”x .7” rectangle is what I’ll make.</p>
<p>You can apply some basic effects to the shape such as rounded corners. For this one, I’ll use a .5pt corner radius.</p>
<p><img style="display: inline" title="creating_the_shapes" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/creating-the-shapes.png" alt="creating_the_shapes" width="337" height="141" /><br />
<strong>Fig. 1</strong> – The basic shape.</p>
<p>Now, the thing about Visio shapes is that you can automatically input text by typing while the the object is selected. This is the default behaviour for nearly all Visio stencils that I have come across.</p>
<p><img style="display: inline" title="entering_text" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/entering-text.png" alt="entering_text" width="195" height="167" /><br />
<strong>Fig. 2</strong> – Inputting text.</p>
<p>For the most part this is a good thing, but for what we want to create, it&#8217;s important we avoid this behavior. The layout of the labels is important for legibility, urging some clever designers to create complex shapes that will group a number of text fields arranged to display bits of info for the shape. This is where things tend to become unmanageable.</p>
<p>Moving on&#8230;</p>
<h3>Adding Glue Points</h3>
<p>You may not be familiar with Visio “Glue Points”, but you’re certainly familiar with how they work. “Glue Points” are those tiny dots that look like shape handles on a given shape. These dots are anchor points for objects to connect to each other.</p>
<p>You can add glue points to your shape by using the Connection Point tool located on your toolbar here:</p>
<p><img style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" title="connection_point_tool" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/connection-point-tool.png" border="0" alt="connection_point_tool" width="413" height="106" /><br />
<strong>Fig. 3</strong> – The “Connection Point Tool”.</p>
<p><strong>Note:</strong> Ctrl+Click anywhere within the shape to add a new glue point.</p>
<p>Once you’ve done that, your shape is pretty much ready to go.</p>
<p><img style="display: inline" title="glue_points" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/glue-points.png" alt="glue_points" width="337" height="141" /><br />
<strong>Fig. 4</strong> – The result after adding glue points.</p>
<h2>Step 2: Adding Shape Data</h2>
<p>As stated before, Shape Data is little more than additional information that can be dynamically added to a given shape. In this case we want to add some basic information to our shape that we would normally enter by hand.</p>
<p><strong>Here are the fields:</strong></p>
<ol>
<li><strong>ID</strong> – the numeric or text-based identifier for the shape</li>
<li><strong>Label</strong> – the label that you want to display, e.g. “home”, “about”, “contact”, etc.</li>
<li><strong>Type</strong> – This is something we’ll save for another tutorial, add it for now</li>
</ol>
<p>You can access the Shape Data dialog by first selecting the shape you created in Step 1, and going to your menu under Data&gt;Shape Data. The alternate way of accessing the interface is by right-clicking to show the context menu (on the shape) and navigating to Data&gt;Shape Data.</p>
<p>You’ll be presented with a prompt if there is no Shape Data available (there shouldn’t be)</p>
<p><img style="display: inline" title="no_shape_data_prompt" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/no-shape-data-prompt.png" alt="no_shape_data_prompt" width="286" height="125" /><br />
<strong>Fig. 1</strong> – The Shape Data prompt.</p>
<p>Click “yes” to bring up the Shape Data interface.</p>
<p><img style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" title="define_shape_data_dialog" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/define-shape-data-dialog.png" border="0" alt="define_shape_data_dialog" width="460" height="468" /><br />
<strong>Fig. 2</strong> – The Shape Data dialog.</p>
<p>Now that you have the interface up, start by entering the fields (mentioned above). What you’ll notice that there are two similar fields: “Label” and “Name”. What’s the difference? The “Label” is what will be displayed on the shape (and referenced in a later step), and the “Name” is what you’ll need to use if you’re programming with Visio.</p>
<p><img style="display: inline" title="define_shape_data_dialog_properties" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/define-shape-data-dialog-properties.png" alt="define_shape_data_dialog_properties" width="460" height="468" /><br />
<strong>Fig. 3</strong> – The result after adding custom properties.</p>
<p><strong>This is how you can accomplish this:</strong></p>
<ol>
<li>Prefix each of the above fields with “str_”, e.g “str_id” or for “ID” use “UID”</li>
<li>Ensure that each of these items has a “Type” set to string. You can customize the format as you see fit by clicking on the button beside “Format”</li>
<li>Provide a default value in the “Value” field, e.g. “[Page Name]”</li>
<li>Provide a brief message in the “Prompt” field – remember, you’re the one that’ll be prompted, so I suggest that you not annoy yourself needlessly</li>
<li>The “Sort Key” will accept either a, b, c or 1, 2, 3 – the idea being that you set the properties in the order you’d prefer them to appear</li>
<li>Lastly, check the “Ask on drop” checkbox – this is what will force a prompt to be displayed when you add the shape to your sheet, duplicate, or when you copy/paste it</li>
<li>Hit “Okay” when you’re done</li>
</ol>
<p>That’s it for the adding custom Shape Data to your shape. Now the trickery comes in when we’re attempting to display the data on our shape. Enter Data Graphics.</p>
<h2>Step 3: Applying Data Graphics to a Shape</h2>
<p>Ok. This is the point where things get a little interesting as later steps will require a little manual labour to format the data and lay it out a little better that what Visio automatically creates for you.</p>
<p><strong>This is how you can accomplish this:</strong></p>
<p>1. Select your shape, and go to your main menu and select Data&gt;Display Data on Shapes&#8221;. Alternately you can right-click to bring up the context menu and select Data&gt;Edit Data Graphic…</p>
<p>2. And new panel should have appeared on the right hand side of your Visio working area (default). This is the Data Graphics panel where you’ll create the labels to be displayed on your shape</p>
<p>3. Select “New Data Graphic…” under “Create a new data graphic”</p>
<p>4. A new dialog window will appear</p>
<p><img style="display: inline" title="data_graphic_dialog" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/data-graphic-dialog.png" alt="data_graphic_dialog" width="542" height="367" /><br />
<strong>Fig. 1</strong> – the New Data Graphic dialog.</p>
<p>Now that you have the dialog up, you’ll notice that there’s nothing there. That’s what you want. Follow the instructions to “Click ‘new item’ to display data on shapes”. You’ll find that drop down menu on the top left of the dialog window.</p>
<p>When you display the menu, you’ll have several options that are available to you. For the purpose of what we’re creating, you’ll only want to select the first item. The rest, you can experiment with on your own.</p>
<p>The item will invoke a new prompt (Microsoft is obsessed with this).</p>
<p><strong>This is how you can accomplish this:</strong></p>
<ol>
<li>There are several fields that are available to you, the one you’ll start with first is the “Data field”</li>
<li>If you recall earlier when you were setting the key/value pairs in the Shape Data dialog, you should notice the same items available to you when you click on the drop down menu. Select “ID”</li>
<li>Turn your attention to the “Callout” field – this is where you can specify a style for the label. I suggest that you stick with a Text callout due to the nature of what we’re building. Experiment with the other types when you have a chance</li>
<li>Next, let’s look at the “Callout position”. You’ll notice that the two drop downs: “horizontal”, and “vertical” fields are greyed out. Uncheck “Use default position”</li>
<li>You should now have access to the two fields. Set the horizontal position to “center” and leave the vertical position where it is</li>
</ol>
<p><strong>This next part can be a bit confusing the first time around, but follow these steps:</strong></p>
<ol>
<li>Leave the “Show Value” property as “Yes”</li>
<li>Leave the “Value Format” property as blank, it will automatically use the format you set earlier in the Shape Data dialog</li>
<li>Leave the “Label Position” property with its default</li>
<li>Delete the “[Default]” value from the “Label” property</li>
<li>Set the “Border Property” value to “None”</li>
<li>Leave both “Fill Type” and “Callout Offset” at “None”</li>
<li>Click “OK” to set your changes</li>
</ol>
<p>You should be back to the “New Data Graphic” dialog. Now that you’ve done the first one, rinse and repeat for the other fields.</p>
<p><strong>Note:</strong> When you come to the “Type” field, set the “Show Value” property as “No”.</p>
<p>Click the “OK” button to apply the Data Graphic to your shape.</p>
<p><img style="display: inline" title="data_graphic_dialog_edit" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/data-graphic-dialog-edit.png" alt="data_graphic_dialog_edit" width="542" height="367" /><br />
<strong>Fig. 2</strong> – The result after the Data Graphic fields have been set.</p>
<h2>Step 4: Formatting Your New Labels</h2>
<p>We now have an opportunity to adjust the layout of our new Data Graphic’s labels. If you’ve followed the steps above, you’ll have accomplished something that approximates this:</p>
<p><img style="display: inline" title="formatting_data_fields" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/formatting-data-fields.png" alt="formatting_data_fields" width="337" height="141" /><br />
<strong>Fig. 3</strong> – The result after formatting the fields.</p>
<p>If you recall the alignment we left in Step 3, you’ll see that reflected in the orientation of the labels. It&#8217;s not pretty, but if you’re partial to that, feel free to keep the alignment and move on to the last step. If however, you are like me, you’ll want to make some minor tweaks.</p>
<p>Click on the object until you’re able to select the text field containing one of the fields. Once you’ve selected the field, you can format it as you wish (color, fonts, font size, etc.). It’s likely that you’ll want to adjust the alignment at the very least (centered).</p>
<p>Rinse and repeat for the the “Label” field.</p>
<p>You should now have a Visio shape that you can quickly set the properties for when you add it to your pages and diagrams.</p>
<p><strong>Note: </strong>There is one caveat though, and you’ll have to balance this with what you’re getting in return: you may find that having constant prompts will annoy you especially if you need to work quickly or you’re not the type of user to have your pinkie you the “esc” key. You can avoid this by not enabling an automatic prompt, I’ll leave that to you to decide.</p>
<h2>Step 5: Adjusting the Behaviour of the Shape</h2>
<p>This last (and final) step is the most crucial aspect of making a truly (re)usable Visio shape. It’s important because it will allow the author or designer to quickly make modifications to the Shape Data without having to manually click through the shape’s various objects.</p>
<p>We’re going to tackle this in two ways:</p>
<ol>
<li>Enable a custom double-click behaviour to the shape that will display the shape’s Shape Data dialog.</li>
<li>Restrict the default editing and formatting features of shape to preserve the Data Graphics we’ve attached to the shape.</li>
</ol>
<h3>Restricting Editing and Formatting</h3>
<p>All Visio shapes share common properties that you can customize in order to get the behaviour you want from it. If you recall from earlier in the article where we were first creating the shape, it was easy to simply double-click and start entering text. In this case, what we want to do is restrict some of the normal behaviour of the shape, and not allow the author to input text directly onto the shape. We also want to restrict the author from modifying the internal layout of the shape and the Data Graphics.</p>
<p><strong>Follow these quick steps to accomplish the desired behaviour:</strong></p>
<ol>
<li>Right-click on your shape to bring up the context menu, and select Format&gt;Behaviour</li>
<li>The “Behaviour” tab will contain all the common behaviour properties of the shape; turn your attention to the “Group Behaviour” options on the bottom right portion of the dialog.</li>
<li>Deselect “Edit text of group”</li>
<li>Under the “Selection” property, change the setting to “Group Only” – this will restrict the selection of nested shapes and make the overall shape appear as if it is the only selectable shape.</li>
<li>Click “OK”</li>
</ol>
<p><img style="display: inline" title="formatting_behaviour" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/formatting-behaviour.png" alt="formatting_behaviour" width="393" height="477" /><br />
<strong>Fig. 1</strong> – Accessing the “Behaviour” dialog through the context menu.</p>
<p><img style="display: inline" title="formatting_behaviour_dialog" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/formatting-behaviour-dialog.png" alt="formatting_behaviour_dialog" width="470" height="388" /><br />
<strong>Fig. 2</strong> – The “Behaviour” dialog after properties have been set.</p>
<h3>Enabling Custom Double-click Behaviour</h3>
<p>If you took some time in the to explore the behaviour dialog, you’ll have noticed the “Double-click” tab. That particular set of properties allows you to attach some typical behaviours to the shape, but you’ll also notice that the “Custom” option is greyed out. We want to be able to set this, but Visio will not allow us to do it through the dialog.</p>
<p><strong>Note:</strong> It took me about 3 days to figure this out, not having really delved too deeply into Visio’s Shape Sheet capabilities, so hopefully someone will read this post and save someone else like me a little grief.</p>
<p>The “Custom” option is greyed out for reason, and it appears that customization means delving into the murky depths of Visio’s “Shape Sheets”. It’s not as bad as I make it out (I’m still harbouring a little frustration), and it’s a relatively painless task to complete.</p>
<p><strong>Follow these quick instructions to accomplish this time-saving behaviour:</strong></p>
<ol>
<li>Right-click on your shape and select “Show Shape Sheet”. This will bring up a new window which you will find chock full various property sheets.</li>
<li>Scroll to the bottom of the list until you find one property sheet labelled “Events” – this is crucial.<br />
<strong>Note: </strong>If you cannot see an “Events” sheet, that means it’s hidden. To show the “Events” sheet, simply right-click somewhere in the grey area outside of the various property sheets, and select “View Sections” from the context menu. You’ll find a collection of checkboxes that indicate the different sheets. Find the “Event” sheet and enable it by selecting the checkbox. Hit “OK” to return back to the Shape Sheet window.</li>
<li>In the “Events” sheet, locate a property labelled “EventDblClick” – this is where we instruct the shape what to do when we double-click on it. Enter the following value (case sensitive): “=DOCMD(1312)” (replace <strong>everything</strong> in the field including the equal sign, but do not include the quotes). Hit the Enter button to accept the changes.</li>
<li>Close the Shape Sheet window as we no longer need it.</li>
</ol>
<p><img style="display: inline" title="double_click_event" src="http://www.farfromfearless.com/wp-content/uploads/2009/04/double-click-event.png" alt="double_click_event" width="550" height="44" /><br />
<strong>Fig. 3 </strong>– The &#8220;Events&#8221; property sheet.</p>
<p>If you’ve followed the instructions above, you should expect to see the Shape Data dialog window pop up. Test this behaviour on your customized shape by double-clicking.</p>
<p>That’s it. You now have a shape that you can make your diagram work a little more productive.</p>
<h2>Final Notes</h2>
<h3>Shape Data</h3>
<p>There are many other purposes for which Shape Data can be leveraged. If you recall one of the properties that I specified early on was “type”. I’ll save that for a later posting, but if you search Google for the term “Visio multi-shape”, you’ll get an idea of what I’ll be covering next.</p>
<h3>Data Graphics</h3>
<p>The one thing I likely did not articulate in this article was that Data Graphics can be reused and re-applied to other shapes that you might want to display similar Shape Data. The caveat being that you’ll have to re-format the fields for each one again. You can create new Data Graphics as you need them, but be sure to keep your document as clean as possible of unnecessary clutter. You can do this by going to File&gt;Remove Hidden Information. I’ll leave the rest for you to figure out.</p>
<h3>Events &amp; Behaviours</h3>
<p>There are many other behaviours that you can attach to shape events, and double-click is just one of those. For more information about Visio’s DOCMD() macro, check out the MSDN documentation <a title="DOCMD Function [Visio 2003 SDK Documentation]" href="http://msdn.microsoft.com/en-us/library/aa214156(office.11).aspx">here</a>.</p>
<h2>Conclusion</h2>
<p>This won’t make you a better UX designer by any means, but it can certainly help you save some time so you can focus on what’s important. Take some time to consider some of the other customization features you can apply to your shape, but remember: as is often the case, simplicity is the goal.</p>
<p>You can <a title="Visio Data Grahics for UxD/IxD Documents" href="http://www.farfromfearless.com/wp-content/uploads/2009/04/fff_custom_shape.zip">download the example for this tutorial here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2009/04/15/creating-a-reusable-shape-with-visio-shape-data-support/feed/</wfw:commentRss>
		<slash:comments>15</slash:comments>
		</item>
		<item>
		<title>WordPress Theme Design Part 4: Visual Texture</title>
		<link>http://www.farfromfearless.com/2009/02/25/wordpress-theme-design-part-4-visual-texture/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-theme-design-part-4-visual-texture</link>
		<comments>http://www.farfromfearless.com/2009/02/25/wordpress-theme-design-part-4-visual-texture/#comments</comments>
		<pubDate>Wed, 25 Feb 2009 22:08:43 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[Grunge]]></category>
		<category><![CDATA[Industrial]]></category>
		<category><![CDATA[Textiles]]></category>
		<category><![CDATA[Textures]]></category>
		<category><![CDATA[Theme Design]]></category>
		<category><![CDATA[Watercolor]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=237</guid>
		<description><![CDATA[It’s been some time since my last posting on my “WordPress Theme Design” series (a year and change), and so I thought it was well past time that I got on with the series. In previous installments, I’ve covered topics such as layout, typography, and color &#038; contrast. This time around, I’ll be covering “texture”.]]></description>
			<content:encoded><![CDATA[<p>Visual texture plays a large role in design: the lack of and the addition of texture are all part of visual communication. It is one of the ways a designer can appeal to the users’ senses through a medium that is not tactile by nature.</p>
<p>Strategic use of texture can help to shape the perception of a design; it can turn a simple website layout into something evocative; when delivered in context with the subject matter of the site (articles, information, etc), texture can help to communicate tone and attitude.</p>
<h3>Texture In Web Design</h3>
<p>Visual textures can be lumped into three relative categories:</p>
<ol>
<li>Patterns</li>
<li>Photographic</li>
<li>Illustrated</li>
</ol>
<h4>Patterns as Texture</h4>
<p>Patterns are the most common type of texture that you encounter on the web. In many cases they are tileable images that are rendered as background images in a page, or appear as textured design accents. Patterns can range from illustrated elements that can repeat endlessly, or as three dimensional (often photographic) textures that can evoke a sense of depth and dimension.</p>
<p><strong>Example:</strong></p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/2009/02/patterns.png"><img style="display: inline" title="patterns" src="http://www.farfromfearless.com/wp-content/uploads/2009/02/patterns-thumb.png" alt="patterns" width="414" height="138" /></a></p>
<p><strong>Fig. 1</strong> – Tileable Patterns.</p>
<p><strong>Resources:</strong></p>
<ul>
<li><a title="K10K Pixel Patterns" href="http://www.k10k.net/sections/pixelpatterns/">K10K Pixel Patterns</a></li>
<li><a title="SquidFingers Patterns" href="http://www.squidfingers.com/patterns/">SquidFingers Patterns</a></li>
<li><a title="BgPatterns.com Patterns" href="http://bgpatterns.com/">BgPatterns</a></li>
</ul>
<h4>Photographs as Texture</h4>
<p>It would be more appropriate to consider photographic texture as singular instances of texture applied to the design, rather than something that is explicitly tiled as in the case of patterns. Photographic textures tend to range in subject matter, but the most common example of photographic texture are images that can be used as backgrounds, such as walls (brick, cement, etc).</p>
<p><strong>Example:</strong></p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/2009/02/b19light-fx111.jpg"><img style="display: inline" title="b19light_fx111" src="http://www.farfromfearless.com/wp-content/uploads/2009/02/b19light-fx111-thumb.jpg" alt="b19light_fx111" width="176" height="132" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/2009/02/b17dario284.jpg"><img style="display: inline" title="b17dario284" src="http://www.farfromfearless.com/wp-content/uploads/2009/02/b17dario284-thumb.jpg" alt="b17dario284" width="176" height="132" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/2009/02/47d966867f354grungetexture.png"><img style="display: inline" title="47d966867f354,Grunge-Texture" src="http://www.farfromfearless.com/wp-content/uploads/2009/02/47d966867f354grungetexture-thumb.png" alt="47d966867f354,Grunge-Texture" width="176" height="132" /></a></p>
<p><strong>Fig. 2-4 – </strong>Light, textiles and other industrial textures.</p>
<p><strong>Resources:</strong></p>
<ul>
<li><a title="ImageAfter - The Raw Base for Your Creativity" href="http://www.imageafter.com/">ImageAfter</a></li>
<li><a title="iStockPhoto: Search Royalty Free Images &amp; Photos" href="http://www.istockphoto.com/index.php">iStockPhoto</a></li>
</ul>
<h4>Illustration as Texture</h4>
<p>Illustrated texture is something of a trend over the past few years, where artists and designers mix various sources such as photographs, tileable patterns, and light to create unique textures.</p>
<p><strong>Examples:</strong></p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/2009/02/ist2-2429487greenstreakwatercolorbackground.jpg"><img style="display: inline" title="ist2_2429487-green-streak-watercolor-background" src="http://www.farfromfearless.com/wp-content/uploads/2009/02/ist2-2429487greenstreakwatercolorbackground-thumb.jpg" alt="ist2_2429487-green-streak-watercolor-background" width="176" height="139" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/2009/02/ist2-1744256bluewatercolorwash2.jpg"><img style="display: inline" title="ist2_1744256-blue-watercolor-wash-2" src="http://www.farfromfearless.com/wp-content/uploads/2009/02/ist2-1744256bluewatercolorwash2-thumb.jpg" alt="ist2_1744256-blue-watercolor-wash-2" width="176" height="106" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/2009/02/ist2-1977280yellowandorangewatercolorbackground.jpg"><img style="display: inline" title="ist2_1977280-yellow-and-orange-watercolor-background" src="http://www.farfromfearless.com/wp-content/uploads/2009/02/ist2-1977280yellowandorangewatercolorbackground-thumb.jpg" alt="ist2_1977280-yellow-and-orange-watercolor-background" width="176" height="128" /></a></p>
<p><strong>Fig. 5-7</strong> – Mixed water color backgrounds.</p>
<p><strong>Resources:</strong></p>
<ul>
<li><a title="iStockPhoto: Search Royalty Free Images &amp; Photos" href="http://www.istockphoto.com/index.php">iStockPhoto</a></li>
<li><a title="Free Photoshop Brushes at Brusheezy!" href="http://www.brusheezy.com/">Brusheezy</a></li>
</ul>
<h3>Texture in WordPress Themes</h3>
<p>Texture as a design element contributes to the overall personality of the design. When it comes to WordPress Themes, authors tend to exhibit a need to communicate an aspect of their personality through the theme they choose to employ on their blog.</p>
<p>If you’re thinking about using texture as part of your design, consider the following:</p>
<ol>
<li><strong>Theme:</strong> What is the <em>theme</em> of your theme?</li>
<li><strong>Prominence:</strong> How prominent are the textures going to be in your design?</li>
<li><strong>Repetition:</strong> How often and how many repeatable textures are you planning to use in the design?</li>
</ol>
<h3>Bringing it Together</h3>
<p>Designing a successful WordPress theme is no different from designing a compelling website layout – both need to illustrate an artistic (and practical) balance of many design concept where texture may be one fundamental aspect of that balance.</p>
<p>When you’re considering the design of your WordPress theme, think about how your chosen texture(s) will work together with your other design elements to communicate the overall theme.</p>
<p>For example, if you’re out to create a theme that needs to communicate and “outdoors lifestyle” or “nature”, you may want to consider using textures that are organic. In a case like this could could mix various types of textures (tileable, photographic and illustrated).</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/2009/02/outdooritaliaofficialsite.png"><img style="display: inline" title="Outdoor Italia official site" src="http://www.farfromfearless.com/wp-content/uploads/2009/02/outdooritaliaofficialsite-thumb.png" alt="Outdoor Italia official site" width="540" height="369" /></a></p>
<p><strong>Fig. 8</strong> – <a title="Outdoor Italia" href="http://www.outdooritalia.it/">Outdoor Italia</a></p>
<p>The Outdoor Italia site is a great example of how various types of tileable and photographic texture can be used in a design to communicate a theme. The site makes great use of photographic textures in the form of leaves, paper, and the occasional physical item to deliver a sense of depth.</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/2009/02/wildaboutgardening.png"><img style="display: inline" title="Wild About Gardening" src="http://www.farfromfearless.com/wp-content/uploads/2009/02/wildaboutgardening-thumb.png" alt="Wild About Gardening" width="540" height="441" /></a></p>
<p><strong>Fig. 9</strong> – <a title="Canadian Wildlife Federation - Wild About Gardening" href="http://www.wildaboutgardening.org/">Wild About Gardening</a></p>
<p>The Wild About Gardening is one of my favourite sites for two reasons: the illustration work makes subtle use of &#8212; and reference to &#8212; watercolor art, and it blends well with photographic texture. This site is a great example of Photographic and Illustrated texture working naturally together to communicate a sense of unity in the design.</p>
<p>The above examples aren’t WordPress themes, but the leap from content to editorial layout isn’t difficult to make.</p>
<p>Remember that not every WordPress design you create has to have shiny buttons and glossy blocks. Take time to experiment with texture in your design, and discover how different textures can dramatically change the tone and style of your design.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2009/02/25/wordpress-theme-design-part-4-visual-texture/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>How To Style Your Most Recent WordPress Posting</title>
		<link>http://www.farfromfearless.com/2008/09/06/how-to-style-your-most-recent-wordpress-posting/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=how-to-style-your-most-recent-wordpress-posting</link>
		<comments>http://www.farfromfearless.com/2008/09/06/how-to-style-your-most-recent-wordpress-posting/#comments</comments>
		<pubDate>Sun, 07 Sep 2008 02:52:55 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Developement]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Techniques]]></category>
		<category><![CDATA[WordPress Posts]]></category>
		<category><![CDATA[WordPress Theme Design]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=167</guid>
		<description><![CDATA[One question that I'm asked most often is: "how do I get my most recent post to look different than my older posts?", and second to that is, "how do I show alternate colors in my posts?"]]></description>
			<content:encoded><![CDATA[<p>How you choose to style your blog postings is largely dependent on the theme you&#8217;ve selected to use on your blog, your writing style, as well as &#8212; perhaps &#8212; your skill at modifying the themes.</p>
<p>For the most part, you may be stuck with using the setup that the Theme Designer decided to adopt.</p>
<p>Blogs typically take one of three common approaches to displaying posts:</p>
<ol>
<li>Posts are displayed as excerpts with a &#8220;read more&#8221; link.</li>
<li>Posts are displayed with the full body of the posting.</li>
<li>Only one post is displayed with pagination available.</li>
</ol>
<p>The first approach &#8212; the most common of the three &#8212; is likely a result of the Theme Designer choosing to use the out-of-the-box functionality of the blogging software (and to be fair, it is likely the most efficient); however, not everyone wants a cookie cutter solution to displaying their posts.</p>
<p>The reality is such that you don&#8217;t actually need to do a lot of work to get your blog postings to appear the way you want them to. I can&#8217;t speak for other blogging software packages, but when it comes to WordPress, there are a many techniques you can apply to customize your postings.</p>
<h2>WordPress &#8211; The Loop</h2>
<p>The meat-and-potatoes of WordPress is &#8220;<a title="WordPress - The Loop" href="http://codex.wordpress.org/The_Loop">The Loop</a>&#8220;. If you&#8217;ve ever attempted to customize a WordPress theme, it&#8217;s likely you&#8217;ve encountered this The Loop (essentially a &#8220;while&#8221; loop). This is an example of a very simple loop (taken from the WordPress codex):</p>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> <span style="color: #0000ff;">if</span> (have_posts()) :</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span>    <span style="color: #0000ff;">while</span> (have_posts()) :</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   3:</span>       the_post();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   4:</span>       the_content();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   5:</span>    endwhile;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   6:</span> endif;</pre>
</div>
</div>
<p>This is a better explanation if you&#8217;re not too familiar with code:</p>
<blockquote><p><strong>The Loop</strong> is used by WordPress to display each of your posts. Using The Loop, WordPress processes each of the posts to be displayed on the current page and formats them according to how they match specified criteria within The Loop tags.</p></blockquote>
<p>If you examine one of the template files of your theme you may encounter a more complicated version of the above snippet.  The Loop is where we are going to start to customize the appearance of your postings.</p>
<h2>Postings</h2>
<p>A post in WordPress is comprised of a number of elements such as the Title of the post, the Content of the post, and assorted information like the Date/Time, etc. In the common approaches, all of the postings share the exact same format and display identical information.</p>
<p>Boring.</p>
<p>But it doesn&#8217;t have to be this way. The developers of WordPress were smart enough to realize that while the majority of theme designers don&#8217;t mind this type of homogenous approach, there are a few Theme Designers out there who prefer not to follow this pattern. As such, WordPress is built with with the ability to modify how The Loop is applied.</p>
<p>There are several approaches to modifying The Loop, but the two that I prefer are:</p>
<ol>
<li>Use <a title="WordPress - query_posts(...)" href="http://codex.wordpress.org/Template_Tags/query_posts">query_posts</a> with counter and offset.</li>
<li>Use The Loop with counter and conditions.</li>
</ol>
<h2>The Loop With query_posts(&#8230;)</h2>
<p>It took me a while to understand what this feature did; quite simply put, it adds additional parameters in the The Loop to instruct WordPress on what to output.</p>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> &lt;?php query_posts(<span style="color: #006080;">'showposts=1'</span>); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span> &lt;?php <span style="color: #0000ff;">if</span> (have_posts()) : <span style="color: #0000ff;">while</span> (have_posts()) : the_post(); ?&gt;</pre>
</div>
</div>
<p>The snippet above was taken from <a title="Lemon Twist v2.0 Updated WordPress Theme" href="http://www.farfromfearless.com/2008/01/11/lemon-twist-v20-updated-wordpress-theme/">one of my WordPress themes</a>. In the theme, I use the above approach to display ONLY my most recent posting in full. Here&#8217;s a simplified version of the markup I use:</p>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> &lt;!-- set main-entry --&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span> &lt;?php query_posts(<span style="color: #006080;">'showposts=1'</span>); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   3:</span> &lt;?php <span style="color: #0000ff;">if</span> (have_posts()) : <span style="color: #0000ff;">while</span> (have_posts()) : the_post(); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   4:</span> &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"main-entry"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   5:</span>     &lt;h2&gt;&lt;a href=<span style="color: #006080;">"&lt;?php the_permalink(); ?&gt;"</span> rel=<span style="color: #006080;">"bookmark"</span> title=<span style="color: #006080;">"Permanent Link to &lt;?php the_title(); ?&gt;"</span>&gt;&lt;?php the_title(); ?&gt;&lt;/a&gt;&lt;/h2&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   6:</span>     &lt;?php <span style="color: #008000;">//the post meta ?&gt;</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   7:</span>     &lt;ul <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"meta-top"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   8:</span>         &lt;li&gt;&lt;strong&gt;Posted:&lt;/strong&gt; &lt;?php the_time(<span style="color: #006080;">'F j, Y'</span>); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   9:</span>         &lt;li&gt;&lt;strong&gt;Author:&lt;/strong&gt;  &lt;?php the_author(); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  10:</span>         &lt;li&gt;&lt;strong&gt;Filed under:&lt;/strong&gt; &lt;?php the_category(<span style="color: #006080;">','</span>); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  11:</span>         &lt;li&gt;&lt;?php <span style="color: #0000ff;">if</span>( get_the_tags() != NULL ) { the_tags(<span style="color: #006080;">'&lt;strong&gt;Tags:&lt;/strong&gt; '</span>,<span style="color: #006080;">', '</span>); }<span style="color: #0000ff;">else</span>{ echo <span style="color: #006080;">"&lt;strong&gt;Tags:&lt;/strong&gt; No tags set for this entry."</span>; }?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  12:</span>     &lt;/ul&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  13:</span>     &lt;?php</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  14:</span>         the_content(<span style="color: #006080;">'Read more...'</span>);</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  15:</span>     ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  16:</span> &lt;/div&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  17:</span> &lt;?php endwhile; endif; ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  18:</span> &lt;!-- end main-entry --&gt;</pre>
</div>
</div>
<p>In this example, The Loop is executed only once and only once. The query_posts() function passes instructions to The Loop to show only one post (using query_posts(<strong>&#8216;showposts=1&#8242;</strong>)). While The Loop is executed, it will output all of the post&#8217;s information that I&#8217;ve specified using the appropriate Post tags.</p>
<p><strong>NOTE: </strong>I have set the container &lt;div&gt; class to &#8220;main-entry&#8221;. This references a rule in my CSS file that will style the output accordingly.</p>
<p>Unfortunately, you&#8217;re stuck with only one posting on your page. We need to display older postings as well, and ideally in a format that is different than the most recent.</p>
<p>As previously mentioned, The Loop was executed only once with the example above. This is a powerful feature of query_posts(), in that you have a tremendous amount of control over The Loop &#8212; in this case, how many times it is executed.</p>
<p>To render the older postings, you can do this:</p>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> &lt;!-- set past-entry --&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span> &lt;?php query_posts(<span style="color: #006080;">'showposts=9&amp;offset=1'</span>); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   3:</span> &lt;?php <span style="color: #0000ff;">if</span> (have_posts()) : <span style="color: #0000ff;">while</span> (have_posts()) : the_post(); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   4:</span> &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"past-entry"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   5:</span>     &lt;ul <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"dateblock left"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   6:</span>         &lt;li <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"top"</span>&gt;&lt;?php the_time(<span style="color: #006080;">'M Y'</span>); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   7:</span>         &lt;li <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"bottom"</span>&gt;&lt;?php the_time(<span style="color: #006080;">'j'</span>); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   8:</span>     &lt;/ul&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   9:</span>     &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"entry-content"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  10:</span>         &lt;h1&gt;&lt;a href=<span style="color: #006080;">"&lt;?php the_permalink() ?&gt;"</span> rel=<span style="color: #006080;">"bookmark"</span> title=<span style="color: #006080;">"Permanent Link to &lt;?php the_title(); ?&gt;"</span>&gt;&lt;?php the_title(); ?&gt;&lt;/a&gt;&lt;/h1&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  11:</span>         &lt;?php</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  12:</span>             the_excerpt();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  13:</span>         ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  14:</span>     &lt;/div&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  15:</span> &lt;/div&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  16:</span> &lt;?php endwhile; endif; ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  17:</span> &lt;!-- end past-entry --&gt;</pre>
</div>
</div>
<p>Aside from the simpler markup, the core difference between this second snippet and the first are the instructions/parameters in query_posts(), and the CSS class which is referenced.</p>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> &lt;?php query_posts(<span style="color: #006080;">'showposts=9&amp;offset=1'</span>); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span> &lt;?php <span style="color: #0000ff;">if</span> (have_posts()) : <span style="color: #0000ff;">while</span> (have_posts()) : the_post(); ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   3:</span> &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"past-entry"</span>&gt;</pre>
</div>
</div>
<p>If you combine both of the examples above, what you&#8217;ll find is that you&#8217;re actually running The Loop twice &#8212; in the first instance, The Loop only outputs the most recent post. In the second instance, it skips over the most recent  post completely, and outputs as many older posts as you defined in query_posts().</p>
<p><strong>NOTE:</strong> if you examine the parameters in the second query_posts() instance, you should see &#8220;<strong>showposts=9&amp;offset=1</strong>&#8221; &#8212; this will output <strong>10</strong> posts in total on your page, where <strong>9</strong> such posts are older.</p>
<h3>Styling The Posts</h3>
<p>What you need now are two CSS rules which define:</p>
<ol>
<li>&#8220;main-entry&#8221;</li>
<li>&#8220;past-entry&#8221;</li>
</ol>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> <span style="color: #008000;">/* CSS Snippet */</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span> #post-container div.main-entry {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   3:</span>     background-color: #CCCCCC;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   4:</span>     color: #000000;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   5:</span>     font-size: 1em;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   6:</span> }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   7:</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   8:</span> #post-container div.past-entry {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   9:</span>     background-color: #ffffff;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  10:</span>     color:#333333;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  11:</span>     font-size: .92em;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  12:</span> }</pre>
</div>
</div>
<p>The XHTML markup does not have to be different between these posts, and as you can see in the CSS snippet above, you can get away with as little as displaying a different background color, font color or a larger font size.</p>
<h3>The Caveat</h3>
<p>Yes, there is a downside to using query_posts(). Programmatically speaking, you should try to optimize the number of queries you execute against your database. Since WordPress is largely database driven, you can expect a high volume of requests on any given page. Using query_posts() should be done sparingly (I limit it&#8217;s use to the homepage of my blog).</p>
<p>Also, if you are wanting to support pagination, you will need to do a little more work to setup the query properly &#8212; you can <a title="WordPress - query_posts()" href="http://codex.wordpress.org/Template_Tags/query_posts">read more about it here</a>.</p>
<h2>The Loop With Counter &amp; Conditions</h2>
<p>The simplest method to determine and style your most recent post in contrast to your older postings is a pure implementation of &#8220;The Loop&#8221;. This implementation also relies on using a counter to keep track of how many posts you&#8217;re outputting (as determined by your WordPress settings), as well as a condition to determine which class to reference when styling the output.</p>
<p>Here is an example of this in action:</p>
<div style="border: 1px solid gray; margin: 20px 0px 10px; padding: 4px; overflow: auto; font-size: 8pt; width: 97.5%; cursor: text; max-height: 200px; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<div style="border-style: none; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;">
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   1:</span> &lt;?php</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   2:</span>     <span style="color: #0000ff;">if</span> (have_posts()) {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   3:</span>         <span style="color: #008000;">// the counter (initialized to 0 );</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   4:</span>         $n = 0;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   5:</span>         <span style="color: #008000;">// the while loop</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   6:</span>         <span style="color: #0000ff;">while</span> (have_posts()) {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   7:</span>             <span style="color: #008000;">// the CSS class to apply</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   8:</span>             $<span style="color: #0000ff;">class</span> = ( $n == 0 ) ? <span style="color: #006080;">"main-entry"</span> : <span style="color: #006080;">"past-entry"</span>;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">   9:</span> ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  10:</span>             &lt;!-- set post --&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  11:</span>             &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"&lt;?php echo $class; ?&gt;"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  12:</span>                 &lt;ul <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"dateblock"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  13:</span>                     &lt;li <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"top"</span>&gt;&lt;?php the_time(<span style="color: #006080;">'M Y'</span>); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  14:</span>                     &lt;li <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"bottom"</span>&gt;&lt;?php the_time(<span style="color: #006080;">'j'</span>); ?&gt;&lt;/li&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  15:</span>                 &lt;/ul&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  16:</span>                 &lt;div <span style="color: #0000ff;">class</span>=<span style="color: #006080;">"entry-content"</span>&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  17:</span>                     &lt;h1&gt;&lt;a href=<span style="color: #006080;">"&lt;?php the_permalink() ?&gt;"</span> rel=<span style="color: #006080;">"bookmark"</span> title=<span style="color: #006080;">"Permanent Link to &lt;?php the_title(); ?&gt;"</span>&gt;&lt;?php the_title(); ?&gt;&lt;/a&gt;&lt;/h1&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  18:</span>                     &lt;?php</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  19:</span>                         <span style="color: #0000ff;">if</span>( $n == 0 ) {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  20:</span>                             the_content();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  21:</span>                         }<span style="color: #0000ff;">else</span> {</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  22:</span>                             the_excerpt();</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  23:</span>                         }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  24:</span>                     ?&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  25:</span>                 &lt;/div&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  26:</span>             &lt;/div&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  27:</span>             &lt;!-- set post --&gt;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  28:</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  29:</span> &lt;?php</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  30:</span>             <span style="color: #008000;">// incriment the counter</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  31:</span>             $n .= 1;</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  32:</span>         }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  33:</span></pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  34:</span>     }</pre>
<pre style="border-style: none; margin: 0em; padding: 0px; overflow: visible; font-size: 8pt; width: 100%; color: black; line-height: 12pt; font-family: consolas,'Courier New',courier,monospace; background-color: #f4f4f4;"><span style="color: #606060;">  35:</span> ?&gt;</pre>
</div>
</div>
<p>As you can see from the example above, we&#8217;ve taken a basic instance of The Loop and added in two variables:</p>
<ol>
<li><strong>$n</strong> &#8212; this is the counter used to determine which which is the most recent (starting at &#8220;0&#8243; &#8212; the first).</li>
<li><strong>$class</strong> &#8212; this is the CSS class that we want to reference (&#8220;main-entry&#8221; or &#8220;past-entry&#8221;).</li>
</ol>
<p>The method and approach to styling the post is the same as the examples in query_posts(). The XHTML markup can be re-used between new and older postings, but this is not required. With a little work you can supply The Loop with two different sets of markup to render.</p>
<h3>The Caveat</h3>
<p>While this implementation is rather straight forward, it can get complicated quickly if you want to include more and more variations between postings. Each variation requires a little more forethought, and the appropriate conditions to determine what to do and what to render. What you may end up with is a lot of messy markup that is difficult to read.</p>
<h2>Conclusion</h2>
<p>It doesn&#8217;t take a lot of work to modify your WordPress template to render your most recent posting in a unique fashion. In some cases, you can download plugins to help you style your postings; for me, having to rely on additional plugins seems more overhead than is necessary. The techniques outlined in this article are only two of many such approaches (and certainly a manual approach).</p>
<p>Don&#8217;t feel as if you have to select one over the other. In fact, your writing style and your choice of template play a large part in determining which method is most appropriate.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/09/06/how-to-style-your-most-recent-wordpress-posting/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>How To Quote Comments In A WordPress Comment List</title>
		<link>http://www.farfromfearless.com/2008/08/29/how-to-quote-comments-in-wordpress-comment-list/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=how-to-quote-comments-in-wordpress-comment-list</link>
		<comments>http://www.farfromfearless.com/2008/08/29/how-to-quote-comments-in-wordpress-comment-list/#comments</comments>
		<pubDate>Fri, 29 Aug 2008 21:17:31 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Developement]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[Code Snippet]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[Quotes]]></category>
		<category><![CDATA[WordPress Commenting]]></category>
		<category><![CDATA[WordPress Comments]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/?p=161</guid>
		<description><![CDATA[Sometimes it's the little details that make WordPress themes really shine, other times it's the little features you can add that make working with a WordPress theme a nice experience for readers.]]></description>
			<content:encoded><![CDATA[<p>I received an email from a reader this afternoon, asking about one of the commenting features that I built into the <a title="Download Lemon Twist 2.0.x" href="http://www.farfromfearless.com/2008/01/11/lemon-twist-v20-updated-wordpress-theme/">Lemon Twist</a> theme: quote comments.</p>
<blockquote><p>Hi Chris,</p>
<p>I’m really curious on how you got that quote feature on your comment section. Do you mind sharing your code?</p>
<p>Cheers,<br />
[<span style="text-decoration: line-through;">author name omitted</span>]</p></blockquote>
<p>While this is not a new feature by and large, it is one that I thought would bring a sense of discussion to the linear WordPress comment format much like how forums work. I&#8217;ve attempted to use threaded commenting plugins, but they are ugly and overly complicated for something that should be fairly straight forward.</p>
<p>In any case, this is the JavaScript snippet that I wrote (you need <a title="jQuery" href="http://jquery.com/">jQuery</a>, but comes with the theme)</p>
<pre>// attach a function to the quote comment link
  $('a.quote-comment').click( function() {
      var tb = $('#comment');
      var strQuote = $(this).attr('title');
      // assign the value
      tb.val('&lt;blockquote&gt;' + strQuote + '&lt;/blockquote&gt;');
      return false;
   });</pre>
<p>This is the result:</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/HowtoQuoteCommentsinWordPressCommentList_ECB9/quote.jpg"><img src="http://www.farfromfearless.com/wp-content/uploads/HowtoQuoteCommentsinWordPressCommentList_ECB9/quote_thumb.jpg" alt="quote" width="540" height="173" /></a></p>
<p>There are a couple caveats to this feature</p>
<ol>
<li>You can only quote one comment at a time, as I didn&#8217;t build in concatenation.</li>
<li>It is not parameterized so you&#8217;ll have to customize it for your own theme.</li>
<li>Requires some additional styling (no big deal).</li>
</ol>
<p>If anyone wants to improve on this, feel free to share!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/08/29/how-to-quote-comments-in-wordpress-comment-list/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>WordPress Theme Design Part 3: Color and Contrast</title>
		<link>http://www.farfromfearless.com/2008/01/24/wordpress-theme-design-part-3-color-and-contrast/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-theme-design-part-3-color-and-contrast</link>
		<comments>http://www.farfromfearless.com/2008/01/24/wordpress-theme-design-part-3-color-and-contrast/#comments</comments>
		<pubDate>Thu, 24 Jan 2008 20:18:02 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Developement]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[Color]]></category>
		<category><![CDATA[Color Schemes]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/2008/01/24/wordpress-theme-design-part-3-color-and-contrast/</guid>
		<description><![CDATA[In previous articles, I have written about colour and its importance when it comes to design. Since we're discussing design as it applies to WordPress themes, I thought it appropriate to revist the topic.]]></description>
			<content:encoded><![CDATA[<p>Color selection can be troublesome especially when it comes to designing for yourself. WordPress themes are no exception, and the exercise itself is possibly one of the more challenging aspects of creating a new theme. When it comes to design in general, there are some basic guidelines that you can follow to make things a little easier.</p>
<p>In my previous article &#8220;<a href="http://www.farfromfearless.com/2006/11/16/getting-emo-with-color/" title="Getting emo with color" target="_blank">Getting emo with color</a>&#8221; I discussed the benefits of understanding the emotional impact of color.</p>
<blockquote><p>&#8230;think about how certain colors can provoke a response. A combination of responses creates an experience. So when we design with color, what we’re really doing is designing an experience. So before you start mashing pixels together in your next design, ask yourself this one question: “What kind of experience do I want to create?” <a href="http://www.farfromfearless.com/2006/11/16/getting-emo-with-color/" title="Getting emo with color" target="_blank">Source: &#8220;Getting emo with color&#8221;</a></p></blockquote>
<p>When you&#8217;re designing your WordPress theme, consider what kind of experience you want your readers to have. This goes back to <a href="http://www.farfromfearless.com/2008/01/18/wordpress-theme-design-part-2-typography/" title="WordPress Theme Design Part 2: Web Typography" target="_blank">Part 2</a> of this series where I suggested asking yourself which type of blogger/writer you considered yourself. Knowing that is part of understanding how to develop an experience for your readers. If your articles are verbose then you may want to consider a color scheme that allows better readability over a longer period of time, or if you are brief, then a more flexible color scheme may be considered.</p>
<h4>A emotional user experience</h4>
<p>Color influences the User Experience in ways you might not immediately consider, and while color affects people in various ways, there are some generally accepted understandings:</p>
<ul>
<li>High-energy colors &#8212; colors that fall in the warmer part of the spectrum &#8212; tend to make readers feel restless. Certain combinations of colors can make readers feel agitated and that reflects in the amount of time they are willing to spent on a given page.</li>
<li>Low-energy colors &#8212; colors which fall in the cooler part of the spectrum &#8212; tend to leave readers feeling passive. Again, this is not necessarily a good thing as you are not engaging the reader (let&#8217;s hope your content is engaging).</li>
<li>Neutral colors &#8212; colors which are neither warm nor cool &#8212; make for a bland experience.</li>
</ul>
<p>Here are some examples of color schemes to illustrate color temperature. Keep in mind that not all of these sample pallets translate well for a design, but they are a good foundation to build on.</p>
<p><strong>Warm Colors:</strong></p>
<p><a href="http://www.colourlovers.com/palette/262435/affectionately"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/affectionately.png" alt="affectionately" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/257681/Alienor"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Alienor.png" alt="Alienor" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/213494/Hot_spice"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Hot_spice.png" alt="Hot_spice" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/260803/Mr._Camo_Pants"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Mr._Camo_Pants.png" alt="Mr._Camo_Pants" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/262466/S%C3%A6vik"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Svik.png" alt="Sævik" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/261965/Sphinx"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Sphinx.png" alt="Sphinx" height="124" width="175" /></a></p>
<p><strong>Cool Colors:</strong></p>
<p><a href="http://www.colourlovers.com/palette/262429/The_Lonely_Palm_Tree"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/The_Lonely_Palm_Tree.png" alt="The_Lonely_Palm_Tree" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/261046/from_pink_to_blue"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/from_pink_to_blue1.png" alt="from_pink_to_blue-1" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/213487/You_were_saying"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/You_were_saying.png" alt="You_were_saying" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/235767/Blow_Away"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Blow_Away1.png" alt="Blow_Away-1" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/255052/market_pepper"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/market_pepper.png" alt="market_pepper" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/3330/TrendyRobe"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/TrendyRobe.png" alt="TrendyRobe" height="124" width="175" /></a></p>
<p><strong>Neutral Colors:</strong></p>
<p><a href="http://www.colourlovers.com/palette/262452/Bad_News"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Bad_News.png" alt="Bad_News" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/213483/Blind_man_dream"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Blind_man_dream.png" alt="Blind_man_dream" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/262467/Dream_Home"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Dream_Home.png" alt="Dream_Home" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/246892/Green_Envy"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Green_Envy.png" alt="Green_Envy" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/257623/in_the_earth"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/in_the_earth.png" alt="in_the_earth" height="124" width="175" /></a> <a href="http://www.colourlovers.com/palette/234744/Missed"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart3_ABD6/Missed.png" alt="Missed" height="124" width="175" /></a></p>
<p><strong>Note:</strong> All samples were taken from <a href="http://www.colourlovers.com/" title="COLORLovers" target="_blank">COLOURLovers</a>.</p>
<h4>Contrast is key</h4>
<p>Take a look through <a href="http://www.smashingmagazine.com/2008/01/08/100-excellent-free-high-quality-wordpress-themes/" title="100 Excellent Free WordPress Themes" target="_blank">SmashingMagazine.com&#8217;s collection of WordPress themes</a>. What you&#8217;ll notice is that the color palettes fall equally on both sides of the spectrum (with a bare handful that are monochromatic). But what you may not immediately recognize is that each of them employs contrast to a high degree.</p>
<p>Contrast is a tool that works well to deliver focus add tension in a design. Developing contrast is not always as straightforward as designating a big block of white space (literally) as the content area. In order to develop a good balance between your color scheme and necessary contrast for your readers, you need to figure out a few things:</p>
<ul>
<li>On average, how long are your articles? The longer the article, the longer it takes for your readers to consume it. In a case like this, low contrast makes it quite difficult for a reader to maintain their attention and adds undue physiological strain.</li>
<li>Is there functionality or features in your sidebar that are absolutely integral to the reading experience. I&#8217;m not only talking about ad space here, I&#8217;m also talking about search features, or a list of recent or related articles, links, etc. If the sidebar features are not integral to the reading experience, you may want to make sure they recede into the background through lower contrast.</li>
<li>What is relevant in terms of content? Do you want your latest article to stand out from the rest? Consider that readers interested in your blog will be visiting through varying methods(RSS, Organic Search, Track-backs, etc.), which means you may want to ensure they get what they are looking for quickly.</li>
</ul>
<h4>Tools of the trade</h4>
<p>In my previous article, &#8220;<a href="http://www.farfromfearless.com/2006/11/16/getting-emo-with-color/" title="Getting emo with color" target="_blank">Getting emo with color</a>&#8220;, I mentioned a few tools that can help you in developing color schemes. Here is a site that I personally love: <a href="http://www.colourlovers.com/" title="COLORLovers" target="_blank">COLOURLovers</a>.</p>
<p>The samples generated by the community are great to experiment with and it also helps to see what others are doing as well. But be careful, these are color schemes and do not necessarily reflect a real-world application, just an aesthetic.</p>
<p>Fortunately, there are tools out there that can help you in terms of gauging contrast. Take a look at Jon Snook&#8217;s &#8220;<a href="http://snook.ca/archives/accessibility_and_usability/colour_color_co/" title="Color (color) contrast check" target="_blank">Colour (color) contrast check</a>&#8221; article. Jon provides a nifty little utility for evaluating the contrast of your color selections. The example page lists two other utilities which you can play around with as well. <a href="http://www.456bereastreet.com/archive/200709/10_colour_contrast_checking_tools_to_improve_the_accessibility_of_your_design/" title="10 colour contrast checking tools to improve the accessibility of your design" target="_blank">456Bereastreet.com complied a list of additional utilities</a> which are both desktop and web applications.</p>
<p>I can&#8217;t tell you which color schemes work best &#8212; that is for you to decide; however, I can tell you that regardless of the color scheme you end up with, it is wise to ensure that you provide contrast in the right places for the right reason. Understand your goals and design accordingly.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/01/24/wordpress-theme-design-part-3-color-and-contrast/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>WordPress Theme Design Part 2: Web Typography</title>
		<link>http://www.farfromfearless.com/2008/01/18/wordpress-theme-design-part-2-typography/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-theme-design-part-2-typography</link>
		<comments>http://www.farfromfearless.com/2008/01/18/wordpress-theme-design-part-2-typography/#comments</comments>
		<pubDate>Fri, 18 Jan 2008 22:13:49 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Developement]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[Layout]]></category>
		<category><![CDATA[Theme Design]]></category>
		<category><![CDATA[Typographic Color]]></category>
		<category><![CDATA[Typography]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/2008/01/18/wordpress-theme-design-part-2-typography/</guid>
		<description><![CDATA[WordPress theme design -- like most disciplines in web design -- bridges many fields of contemporary graphic design. I say that lightly since web design as a discipline involves many other aspects uncommon to traditional graphic design. However, that does not immediately exempt web designers from certain priciples such as those which govern good typography.]]></description>
			<content:encoded><![CDATA[<p>In the previous installment of this series, I covered how we can harmonize and control the layout of our design by making consistent use of a strong column measure. In turn, the column measure gave us the foundation for our visual grid. With that invisible grid in mind, a designer can ideally lay out the components of their WordPress theme and ensure that we meet some basic requirements such as good readability, and a clutter-free visual experience.</p>
<p>For this installment, I&#8217;m going to focus on another issue that tends to plague web designers &#8212; typography.</p>
<p>Before we get started, it&#8217;s best that we get a few misconceptions out of the way:</p>
<ol>
<li>Typographic principles for Print Design cannot be applied to Web Design;</li>
<li>Good typography requires images;</li>
<li>Users only care about content;</li>
</ol>
<p>For the most part, point three is correct; however, let&#8217;s put this into a little more context. Users care about your content &#8212; or at least you hope they do if they&#8217;re browsing your site &#8212; but that does not preclude you from developing a better reading experience for them by applying some straight-forward approaches to typography. I personally hate going to a site only to find that fonts are so tiny on my screen that I have to crank up my font settings in my browser to read it. It is equally annoying if I really want to read the content and am forced to resort to that. It doesn&#8217;t hurt to make things a little easier for your readers.</p>
<p>As for the second point, my response to that is typically &#8220;know your audience&#8221;. I say that because every site is different. Content on one site might require that images be used in place of text, whereas on another site, it is far more important to the audience that content be easily accessible (select, copy, paste, etc). Arguably, it is easier to share text-based content, than it is to share graphical content. Understand who your audience is, and cater to them as appropriate.</p>
<p>Finally, most typographic principles used in print translate beautifully to screen. We have far more advanced tools to develop a better reading experience with CSS-based layouts, which control everything from positioning to formatting. While I don&#8217;t want this to turn into an in-depth discussion about usability and web standards, I will say that applying good typographic practices enhances both web usability and accessibility efforts.</p>
<p>Let&#8217;s get started.</p>
<h2>Issue: Poor reading experience for users</h2>
<blockquote><p>For too long typographic style and its accompanying attention to detail have been overlooked by website designers, particularly in body copy. In years gone by this could have been put down to the technology, but now the web has caught up. The advent of much improved browsers, text rendering and high resolution screens, combine to negate technology as an excuse. <a href="http://webtypography.net/intro/" title="Web Typography" target="_blank">Source: webtypography.net</a></p></blockquote>
<p>I could not have said it any better.</p>
<p>When it comes to developing a good reading experience for your users, typography is an important aspect that needs as much consideration as colour and layout. A good reading experience should leave your users free to do one thing: read. If you can present your content in a way that makes it both easy to read, and requires less from the user than scrolling, you&#8217;ve accomplished what many websites fail to do.</p>
<p>Good typography in your design opens up your layout and makes a normally &#8220;grey&#8221; page appear friendly and light.</p>
<p><strong>Something to think about:</strong></p>
<p>It is inevitable that you will come across older sites &#8212; and even new websites &#8212; which still seek to compact as much copywriting into a given area as possible. It is not uncommon to hear feedback along the lines of &#8220;keep the content above the fold&#8221;; every time someone must say this, a kitten dies somewhere. <a href="http://www.boxesandarrows.com/view/blasting-the-myth-of" title="Blasting the Myth of the Fold" target="_blank">I counter that kind of feedback with this.</a> With current web standards, there is no harm in scrolling a page. It is a natural browsing behaviour; again, this is a good case where it pays to know your audience.</p>
<h4>Density or &#8220;Typographic Colour&#8221;</h4>
<p>First off, you need to ask yourself what kind of blogger you are. Are you the type of blogger that publishes short paragraphs with a smattering of links? Are you the type of blogger that prefers to drop lots of images and media with brief explanations? Or are you a copious writer given to generous use of copy, media and links?</p>
<p>If you can identify what kind of writer you are, then you&#8217;re half way to understanding your audience. People visit your blog for any number of reasons, but the foremost amongst those reasons is your content. They like what you have to say, what you have to show them, and the information you can point them to.</p>
<p>For the purposes of this article, let&#8217;s assume you&#8217;re like me &#8212; a copious writer. You love your words and your blog is the perfect place to share them.</p>
<p><strong>Given the assumption, here are a few considerations:</strong></p>
<ol>
<li>Large amounts of copy on a screen or piece of paper turn your normal white space in a big grey mass. In traditional typography we call this &#8220;typographic colour&#8221;. More specifically this is the density of your paragraphs in relation to the space you have given the paragraphs. You can lighten things up by adjusting the &#8220;leading&#8221; (<a href="http://www.w3schools.com/css/pr_dim_line-height.asp" title="CSS line-height property" target="_blank">line-height</a> in CSS), and the &#8220;Kerning&#8221; (<a href="http://www.w3schools.com/css/pr_text_letter-spacing.asp" title="CSS letter-spacing property" target="_blank">letter-spacing</a> in CSS).</li>
<li>Colour as a tool plays a much more important (though subtle) role in good typographic design. You have many colours to choose from, but when it comes to presenting content that is intended to be read, contrast between the background and the type is essential. The better the contrast, the less work is required of the reader to focus and interpret what is on screen. Pick colours that are harmonious with your overall design, but also have a high-degree of contrast. This does not mean you have to stick to black and white; as long as the colour has enough contrast to it, you should be fine. &#8220;Cooler&#8221; colours (colour temperature, not &#8220;cool factor&#8221;) for type work best across most screens.</li>
<li>The typeface, its size, its leading and kerning all affect the readability of your content. Choose a typeface and set its properties to ensure that it is legible. I cannot stress this aspect enough. I have had one too many debates with designers who transition from Print to Web, arguing that 9pt to 10pt type is more than sufficient for on-screen legibility (this is one of those exceptions where print and web typographic principles do not marry so well). I end these long-winded debates with this consideration: in contemporary graphic design, a designer must design for the medium. The same holds true for web designers. We have to design for the medium, and in our case the medium is the screen. <a href="http://webtypography.net/Rhythm_and_Proportion/Vertical_Motion/2.2.1/" title="The Elements of Typographic Style Applied to the Web" target="_blank">Here is an article that also talks about adjusting typography for the web</a>. It also covers parts of the previous discussion in relation to the column measure.</li>
</ol>
<p>Here are some examples of density, and how typographic control can affect the legibility of your body copy:</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_01.png"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_01_thumb.png" alt="typography_01" height="146" width="256" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_02.png"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_02_thumb.png" alt="typography_02" height="146" width="256" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_03.png"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_03_thumb.png" alt="typography_03" height="146" width="256" /></a> <a href="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_04.png"><img src="http://www.farfromfearless.com/wp-content/uploads/WordPressThemeDesignPart2ContentDensity_CD22/typography_04_thumb.png" alt="typography_04" height="146" width="256" /></a></p>
<p>You can see from the thumbnails how the leading affects the density of copy on the page. The tighter the leading (and other type properties) the more dense a single paragraph appears to a reader.</p>
<h4>Putting it into practice</h4>
<p>Spend the time and go through the motions of playing around with typographic colour in your design application, or if you prefer to deal with your typography in CSS you can use tools like <a href="http://www.fonttester.com/" title="Font Tester" target="_blank">Font Tester</a> or <a href="http://typetester.maratz.com/" title="TypeTester.com" target="_blank">TypeTester</a>. The benefit of these online tools is that you are very quickly able to see the results of your tests as they appear on screen &#8212; in a browsing environment. The more time you spend on determining your typographic styles in the design phase of creating a WordPress theme, the better off you will be later in the development process.</p>
<h4>Design for the medium</h4>
<p>Keep in mind that for web, it is easier to scale back than it is to scale up. We don&#8217;t have the restrictions of paper or other physical media &#8212; we do have to contend with other issues (we&#8217;ll cover that later), but for the most part you&#8217;re better off starting larger at first and scaling back if you have to.</p>
<p>Here are some sites that are some examples of web typography that illustrate the design principles I have been talking about in this article:</p>
<ul>
<li><a href="http://www.clearleft.com/about/" title="http://www.clearleft.com/about/">http://www.clearleft.com/about/</a></li>
<li><a href="http://www.simplebits.com/" title="http://www.simplebits.com/">http://www.simplebits.com/</a></li>
<li><a href="http://www.whatdoiknow.org/" title="http://www.whatdoiknow.org/">http://www.whatdoiknow.org/</a></li>
<li><a href="http://slideshowpro.net/" title="http://slideshowpro.net/">http://slideshowpro.net/</a></li>
</ul>
<h4>Some Considerations:</h4>
<p>Feedback is always nice to have. If possible, solicit some of your readers about their thoughts on your typographic choices, but remember to put your questions into the proper context:</p>
<ul>
<li>&#8220;Is it easier to read my articles if I do this or that?&#8221;</li>
<li>&#8220;Does the page feel lighter to you if I chose this colour or that colour?&#8221;</li>
<li>&#8220;Can you scan the page quickly and find what you need?&#8221;</li>
</ul>
<h4>Further Reading:</h4>
<p><a href="http://webtypography.net/toc/" target="_blank">&#8220;The Elements of Typographic Style Applied to the Web&#8221;</a> is a site that I have found infinitely useful as a reference and as a sounding board for decisions I make in terms of my typographic design. I encourage anyone who has an interest in web typography to read it &#8212; it&#8217;s not a long read &#8212; quite brief in fact. Keep in mind that as a designer, you the final call on decisions &#8212; don&#8217;t get caught up in the stress of &#8220;I have to adhere strictly to the rules or my design sucks&#8221;. Instead, think about your audience. Put yourself in their shoes and consider what works best for them in regards to your content.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/01/18/wordpress-theme-design-part-2-typography/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>WordPress Theme Design Part 1: Best practices when designing a new theme</title>
		<link>http://www.farfromfearless.com/2008/01/14/wordpress-theme-design-part-1-best-practices-when-designing-a-new-theme/?utm_source=rss&amp;utm_medium=rss&amp;utm_campaign=wordpress-theme-design-part-1-best-practices-when-designing-a-new-theme</link>
		<comments>http://www.farfromfearless.com/2008/01/14/wordpress-theme-design-part-1-best-practices-when-designing-a-new-theme/#comments</comments>
		<pubDate>Mon, 14 Jan 2008 21:05:57 +0000</pubDate>
		<dc:creator>Chris Murphy</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Developement]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress Themes]]></category>
		<category><![CDATA[Columns]]></category>
		<category><![CDATA[Grids]]></category>
		<category><![CDATA[Layout]]></category>
		<category><![CDATA[Theme Design]]></category>

		<guid isPermaLink="false">http://www.farfromfearless.com/2008/01/14/wordpress-theme-design-part-1-best-practices-when-designing-a-new-theme/</guid>
		<description><![CDATA[Designing themes for WordPress is something that I've fumbled through in the past year. It is a fun and engaging exercise that challenged me in terms of how I look at usable design and how it's implemented. My blog is and will always be a sort of playground and proof of concept for my learning experiences; as such, I thought I would share a series of lessons that I learned over the course of the past year that may help others develop better WordPress themes.]]></description>
			<content:encoded><![CDATA[<p>An issue facing developers currently is compatibility. Older WordPress themes are becoming less and less popular, which is not necessarily due to design so much as the lack of support for newer features such as &quot;Widgets&quot;, emerging &quot;Plug-ins&quot;, and the big one: deprecated/unsupported template tags.</p>
<p>The reality is that most older WordPress themes (older than v2.x) can be upgraded to be compatible with newer versions of the WordPress software, but it does take a little effort to figure out what works and what doesn&#8217;t &#8212; sometimes creating a new theme is far more attractive than having to parse through old code. I hate having to revisit old code &#8212; yes, I am one of those people &#8212; but since I&#8217;m developing a theme that I want to share with people, I want to ensure they get the best out of what I can develop. In order to do that I needed to make sure my WordPress themes are as future proof and flexible as I can make them.</p>
<p>For the first part in this series, I&#8217;m going to focus on <a title="Wikipedia - K.I.S.S" href="http://simple.wikipedia.org/wiki/K.I.S.S." target="_blank">the &quot;K.I.S.S&quot; principle</a>.</p>
<p>Now, I know there are articles galore which expound on this principle, but when it comes to WordPress or most weblog systems, designers tend to throw it right out the window. Complexity does not always equate to good visual design.</p>
<p>To kick off this series, I&#8217;m going to focus on a fundamental design problem, which ultimately compounds other issues later on in the development process.</p>
<h2>Issue: Inconsistent &quot;Column Measure&quot; and the visual &quot;Grid&quot;:</h2>
<p>This is a design issue which plagues the majority of designers. Column measures form the foundation for your design &quot;grid&quot;. The implied &quot;grid&quot; lends harmony to your layout and an invisible structure &#8212; a framework &#8212; you can use to communicate visual priorities of content and components on a page. There is no hard and fast rule that says you should always use one, two, three or four column layouts. It really comes down to what you need to illustrate the content and functionality on your pages without pushing it to the point of clutter.</p>
<h4>Understanding the column measure</h4>
<p>In short, a column measure refers to the width of &quot;continuous text&quot;. This is most evident in magazine and newspapers where the ability to flow text into multiple columns is possible. With current development standards and web-technology this is not such an easy thing to do (it&#8217;s possible with a lot of hacking). However this does not preclude you as a designer from developing a rough column measure to aid in your layout.</p>
<p><strong>Note: </strong>What is also handy (and we&#8217;ll talk about this in later articles), is the typographic settings derived from this measure. <a title="The Typehead Chronicles - Measure for Measure" href="http://www.rightreading.com/typehead/measure.htm" target="_blank">Here is a good article explaining &quot;column measure&quot;</a>.</p>
<h4>Designing your &quot;Column Measure&quot;</h4>
<p>The old carpenter&#8217;s adage &quot;Measure twice. Cut once&quot; holds true for design on so many different levels. In the case of WordPress theme design &#8212; determine your column measures first.</p>
<p>When you first run Photoshop (or whichever program you prefer), fight the urge to start throwing pixels onto your canvas. Instead, focus on setting out your guides. Here is a sample of the column guides I typically start with all my web-layouts:</p>
<p><a href="http://www.farfromfearless.com/wp-content/uploads/DesigningWordPressthemeslessonslearneda_8C47/1024_column_measure.png"><img height="202" alt="1024_column_measure" src="http://www.farfromfearless.com/wp-content/uploads/DesigningWordPressthemeslessonslearneda_8C47/1024_column_measure_thumb.png" width="540" /></a></p>
<p>The darker grey areas indicate where content would flow and the lighter grey areas indicate margins or padding you may wish to apply. I stick to a 20px padding practice (10px on the left and right side). The space remaining provides your gutters. The pink rules between columns indicate possible borders.</p>
<p>In terms of designing the column measure, I tend vary my widths anywhere between 250px to 300px &#8212; this typically lends a fair amount of space for design elements and copy, as well as enough room for extra white-space where possible.</p>
<p><strong>A few things you may notice about the column sample:</strong></p>
<ul>
<li>Between all three columns, I allot for a 1px border (the pink rules). I do this because it is a pain to have to factor in borders in the design after you&#8217;ve committed to your column widths. This may seem odd at first because the combined column widths end up being 601px and 902px respectively &#8212; naturally these aren&#8217;t numbers you expect to see, but these numbers end up giving you better control when you want to divide the columns. </li>
<li>The columns loosely follow the CSS box model. This is vitally important if you&#8217;re designing for web standards. Being able to foresee ahead of time, how the box model affects a layout is a handy tool, not to mention that it takes the guess-work out determining margins and padding for your divs. The remaining space after any margins or padding is 280px &#8212; that&#8217;s a pretty decent amount of space to put towards content or blocks of functionality like categories, bookmarks, search boxes, etc. </li>
<li>I allot a minimum of 10px outside of the layout for effects like drop shadows and such. My &quot;Lemon Twist&quot; theme is a good example of where that extra little space comes in handy. </li>
</ul>
<p>Your columns are just vertical spaces which you can use to flow your content into. You can bridge or merge those columns, thereby creating interesting design elements; however, don&#8217;t let the columns restrict you &#8212; the grid that is derived from this is a very helpful tool which allows you to create designs such as what you might see with the following sites:</p>
<ul>
<li><a title="http://www.ndesign-studio.com/" href="http://www.ndesign-studio.com/">http://www.ndesign-studio.com/</a> </li>
<li><a title="http://www.snook.ca/jonathan/" href="http://www.snook.ca/jonathan/">http://www.snook.ca/jonathan/</a> </li>
<li><a title="http://archgfx.net/blog/2007/geek/blogging/bus-full-of-hippies-for-wordpress" href="http://archgfx.net/blog/2007/geek/blogging/bus-full-of-hippies-for-wordpress">http://archgfx.net/blog/2007/geek/blogging/bus-full-of-hippies-for-wordpress</a> (see screenshot) </li>
<li><a title="http://www.lifespy.com/2007/illacrimo-theme-release/" href="http://www.lifespy.com/2007/illacrimo-theme-release/">http://www.lifespy.com/2007/illacrimo-theme-release/</a> (see screenshot) </li>
</ul>
<h4>Putting it into practice:</h4>
<p>Once you have your columns roughed out, start playing with blocks rather than fully fleshed out designs. With building blocks you alleviate the complications of the aesthetic, giving you much better focus on of proportion, balance, flow and tension.</p>
<p>Bridge your columns &#8212; which design elements might benefit from doing this? What happens when you swap the position of your sidebar and your reading area. If advertising is a feature of your weblog, where is it most effective to generate clicks and views? Does your navigation work best in a sidebar or at the top?</p>
<p>Play around with the layouts. When you get to a point where you&#8217;ve blocked out your layout, them dive into design.</p>
<h4>Things to consider:</h4>
<p>Remember, the primary purpose of a weblog is for people to read &#8212; I know there are some folks out there who may feel otherwise; however, the majority of people visiting your weblog are there to find content, read it, and move on (or share it, but I&#8217;ll save that for later). Whatever you can do in your design to accommodate that most basic of requirements, the better.</p>
<p><strong>Here are some questions that may help you:</strong></p>
<ol>
<li>Think about how many columns you really need to layout your content &#8212; can you simplify? </li>
<li>What are you columns being used for &#8212; articles, advertising, photos, etc.? </li>
<li>Are there going to be exceptions to the layout that might affect your column structure, such as banners, forms, long headlines, embedded media, etc.? </li>
<li>As a reader, do you prefer to have a wide reading column, or a narrow one? </li>
</ol>
<p>Try to answer as many of those questions before hand and avoid some of the design pitfalls later.</p>
<p>Ultimately the content and the functionality are up to you. By keeping most of these things in mind you will make it far easier to maintain the integrity of your design as well as work to make it future-proof.</p>
<h4>Further Reading:</h4>
<ul>
<li><a title="http://www.wpdesigner.com/2007/06/19/web-typography-column-widths/" href="http://www.wpdesigner.com/2007/06/19/web-typography-column-widths/">http://www.wpdesigner.com/2007/06/19/web-typography-column-widths/</a> </li>
<li><a title="http://webtypography.net/Rhythm_and_Proportion/Horizontal_Motion/2.1.2/" href="http://webtypography.net/Rhythm_and_Proportion/Horizontal_Motion/2.1.2/">http://webtypography.net/Rhythm_and_Proportion/Horizontal_Motion/2.1.2/</a> </li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.farfromfearless.com/2008/01/14/wordpress-theme-design-part-1-best-practices-when-designing-a-new-theme/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
