<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
    <title>James Smith</title>
    <link>http://www.jamessmith.co.uk/JS/notes/</link>
    <description></description>
    <dc:language>en</dc:language>
    <dc:creator>thisisjamessmith@gmail.com</dc:creator>
    <dc:rights>Copyright 2011</dc:rights>
    <pubDate>Fri, 04 Mar 2011 23:06:09 GMT</pubDate>
    <atom:link href="http://www.jamessmith.co.uk/articles/" rel="self" type="application/rss+xml" />   

    <item>
      <title>ExpressionEngine URL Schematic</title>
      <link>http://www.jamessmith.co.uk/articles/expressionengine_url_schematic/?utm_source=rss</link>
      <guid isPermaLink="false">http://www.jamessmith.co.uk/articles/expressionengine_url_schematic/#id:12#date:00:06</guid>
      <description><![CDATA[<p>The flexibility of ExpressionEngine allows you to create just about any crazy URL structure you like for your site or app. Once you get a taste of that power it&#8217;s tempting to scamper off with your new toy and plunge into schemes of pure lunacy. Before you do, it might be an idea to make sure you&#8217;re not missing out on all the powerful URL interpreting that you get for free.
</p><p>The flexibility of ExpressionEngine allows you to create <a href="http://fortysevenmedia.com/blog/archives/setting_up_custom_category_url_structures_in_expressionengine/">just about</a> any <a href="http://eeinsider.com/tips/view/use-conditionals-to-design-your-own-url-structure/">crazy</a> URL structure you like for your site or app. Once you get a taste of that power it&#8217;s tempting to scamper off with your new toy and plunge into schemes of pure lunacy.</p>

<p><a href="/images/ExpressionEngine_url_schematic.png"><img class="floatR" src="/images/ExpressionEngine_url_schematic_preview.jpg" alt="ExpressionEngine URL structure" /></a></p>

<p>Before you do, it might be an idea to make sure you&#8217;re not missing out on some of the powerful URL interpreting that you get for free, or worse, painting yourself into a proverbial corner and having to use inefficient &#8220;advanced&#8221; conditionals to get yourself out.</p>

<h2>Why bother?</h2>

<p>The rather super <a href="http://expressionengine.com/index.php?affiliate=thisisjamessmith&amp;page=/user_guide/">ExpressionEngine documentation</a> is replete with references to how URLs are interpreted, but let&#8217;s face it: (despite having a <a href="http://expressionengine.com/index.php?affiliate=thisisjamessmith&amp;page=/user_guide/general/urls.html">section</a> dedicated to the subject) those references are sprinkled all over the place like some kind of just-out-of-reach clove-studded honey-roast ham.</p>

<p>Here&#8217;s my attempt at visually pulling together that information:</p>

<p class="alignCenter" style="margin-top:24px"><a class="button" href="/images/ExpressionEngine_url_schematic.png">The ExpressionEngine URL schematic &raquo;</a></p>

<h2>Sometimes it&#8217;s fun to be a lunatic.</h2>

<p>But please: be so on purpose.</p>

<p>Hopefully it&#8217;ll make you pause before wasting an afternoon coding a brilliant and impenetrable set of templates that do exactly what <em>related_categories_mode=&#8220;on&#8221;</em> does, or make you think twice before blindly installing third party add-ons to create old fashioned <a href="http://www.train-ee.com/courseware/free-tutorials/category/static-content/">static pages</a> and then coming up with <a href="http://www.3roadsmedia.com/blog/expressionengine-with-structure-and-categories/">ingenious workarounds</a> to regain bits of what you&#8217;ve lost.</p>

<h2>Beginners&#8217; luck?</h2>

<p>If you&#8217;re new to ExpressionEngine and haven&#8217;t yet been caught out by the <em>dynamic=&#8220;no&#8221;</em> parameter, or have <a href="http://www.train-ee.com/courseware/free-tutorials/comments/dynamic-off-explained">no idea what it does</a>, the URL schematic should also help you get your head around it. At the very least it should become clear that ExpressionEngine attempts to decipher 2 things from your URL:</p>

<ul>
<li>A template</li>
<li>A set of entries from which to pull data, filtered to your whims (categories, dates and pagination)</li>
</ul>

<p>Combined with some of these other <a rel="nofollow" href="http://ee-spotlight.com/resources">ExpressionEngine resources</a> you could be halfway to EE superstar status already&#8230;</p>

<h2>War stories?</h2>

<p>What URL approach do you usually adopt? The &#8216;official&#8217; line from Ellislab&#8212;that you should be using template_group/template&#8212;makes for some pretty long urls and is not technically necessary. Take the shortcuts though, and you might regret it later.
</p>]]></description>
      <category>ExpressionEngine</category>
      <pubDate>Sat, 05 Mar 2011 00:06 GMT</pubDate>
    </item>

    </channel>
</rss>
