<?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>Programming Thematic 4 You &#187; Layout</title>
	<atom:link href="http://programming.thematic4you.com/category/layout/feed/" rel="self" type="application/rss+xml" />
	<link>http://programming.thematic4you.com</link>
	<description>Code Snippets and more ...</description>
	<lastBuildDate>Wed, 20 Oct 2010 10:24:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>How to display all widget areas for a test?</title>
		<link>http://programming.thematic4you.com/2010/02/how-to-display-all-widget-areas-for-a-test/</link>
		<comments>http://programming.thematic4you.com/2010/02/how-to-display-all-widget-areas-for-a-test/#comments</comments>
		<pubDate>Sun, 28 Feb 2010 14:36:06 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Layout]]></category>
		<category><![CDATA[Widget Area]]></category>
		<category><![CDATA[0.9.6.x]]></category>
		<category><![CDATA[Sidebar]]></category>

		<guid isPermaLink="false">http://programming.thematic4you.com/?p=31</guid>
		<description><![CDATA[If you work with Thematic for the first time, the most asked question will be, where are all these widget areas located?

You could go to the Widgets section in WP Admin and assign at least one widget to the 13 widget areas.]]></description>
			<content:encoded><![CDATA[<p>If you work with Thematic for the first time, the most asked question will be, where are all these widget areas located?</p>
<p>You could go to the Widgets section in WP Admin and assign at least one widget to the 13 widget areas. I&#8217;m too lazy for this. So I spend some time to create something that eases my life.<span id="more-31"></span></p>
<p>Go to WP Admin / Appearance / Thematic Options and hit the &#8216;Reset Widgets&#8217; button. Then add the following code to your child theme&#8217;s functions.php:</p>
<pre class="brush: php; title: ; notranslate">function widget_args()
{
	return array (
	'before_widget' =&gt; thematic_before_widget(),
	'after_widget'  =&gt; thematic_after_widget(),
	'before_title'  =&gt; thematic_before_title(),
	'after_title'   =&gt; thematic_after_title()
	);
}

function wa_primary_aside()
{
	echo thematic_before_widget_area('primary-aside');
	the_widget('WP_Widget_Text', array('title' =&gt; 'Primary Aside', 'text' =&gt; 'This is the Primary Aside', 'filter' =&gt; ''), widget_args());
	echo thematic_after_widget_area('primary-aside');
}

function wa_secondary_aside()
{
	echo thematic_before_widget_area('secondary-aside');
	the_widget('WP_Widget_Text', array('title' =&gt; 'Secondary Aside', 'text' =&gt; 'This is the Secondary Aside', 'filter' =&gt; ''), widget_args());
	echo thematic_after_widget_area('secondary-aside');
}

function wa_subsidiary_open()
{
	echo '&lt;div id=&quot;subsidiary&quot;&gt;';
} 

function wa_1st_subsidiary()
{
	echo thematic_before_widget_area('1st-subsidiary-aside');
	the_widget('WP_Widget_Text', array('title' =&gt; '1st Subsidiary Aside', 'text' =&gt; 'This is the 1st Subsidiary Aside', 'filter' =&gt; ''), widget_args());
	echo thematic_after_widget_area('1st-subsidiary-aside');
}

function wa_2nd_subsidiary()
{
	echo thematic_before_widget_area('2nd-subsidiary-aside');
	the_widget('WP_Widget_Text', array('title' =&gt; '2nd Subsidiary Aside', 'text' =&gt; 'This is the 2nd Subsidiary Aside', 'filter' =&gt; ''), widget_args());
	echo thematic_after_widget_area('2nd-subsidiary-aside');
}

function wa_3rd_subsidiary()
{
	echo thematic_before_widget_area('3rd-subsidiary-aside');
	the_widget('WP_Widget_Text', array('title' =&gt; '3rd Subsidiary Aside', 'text' =&gt; 'This is the 3rd Subsidiary Aside', 'filter' =&gt; ''), widget_args());
	echo thematic_after_widget_area('3rd-subsidiary-aside');
}

function wa_subsidiary_close()
{
	echo '&lt;/div&gt;';
} 

function wa_index_top()
{
	echo thematic_before_widget_area('index-top');
	the_widget('WP_Widget_Text', array('title' =&gt; 'Index Top', 'text' =&gt; 'This is the Index Top', 'filter' =&gt; ''), widget_args());
	echo thematic_after_widget_area('index-top');
	}

function wa_index_insert()
{
	echo thematic_before_widget_area('index-insert');
	the_widget('WP_Widget_Text', array('title' =&gt; 'Index Insert', 'text' =&gt; 'This is the Index Insert', 'filter' =&gt; ''), widget_args());
	echo thematic_after_widget_area('index-insert');
}

function wa_index_bottom()
{
	echo thematic_before_widget_area('index-bottom');
	the_widget('WP_Widget_Text', array('title' =&gt; 'Index Bottom', 'text' =&gt; 'This is the Index Bottom', 'filter' =&gt; ''), widget_args());
	echo thematic_after_widget_area('index-bottom');
}

function wa_single_top()
{
	echo thematic_before_widget_area('single-top');
	the_widget('WP_Widget_Text', array('title' =&gt; 'Single Top', 'text' =&gt; 'This is the Single Top', 'filter' =&gt; ''), widget_args());
	echo thematic_after_widget_area('single-top');
}

function wa_single_insert()
{
	echo thematic_before_widget_area('single-insert');
	the_widget('WP_Widget_Text', array('title' =&gt; 'Single Insert', 'text' =&gt; 'This is the Single Insert', 'filter' =&gt; ''), widget_args());
	echo thematic_after_widget_area('single-insert');
}

function wa_single_bottom()
{
	echo thematic_before_widget_area('single-bottom');
	the_widget('WP_Widget_Text', array('title' =&gt; 'Single Bottom', 'text' =&gt; 'This is the Single Bottom', 'filter' =&gt; ''), widget_args());
	echo thematic_after_widget_area('single-bottom');
}

function wa_page_top()
{
	echo thematic_before_widget_area('page-top');
	the_widget('WP_Widget_Text', array('title' =&gt; 'Page Top', 'text' =&gt; 'This is the Page Top', 'filter' =&gt; ''), widget_args());
	echo thematic_after_widget_area('page-top');
}

function wa_page_bottom()
{
	echo thematic_before_widget_area('page-bottom');
	the_widget('WP_Widget_Text', array('title' =&gt; 'Page Bottom', 'text' =&gt; 'This is the Page Bottom', 'filter' =&gt; ''), widget_args());
	echo thematic_after_widget_area('page-bottom');
}

add_action('widget_area_primary_aside', 'wa_primary_aside', 10);
add_action('widget_area_secondary_aside', 'wa_secondary_aside', 10);
add_action('widget_area_subsidiaries', 'wa_subsidiary_open', 10);
add_action('widget_area_subsidiaries', 'wa_1st_subsidiary', 30);
add_action('widget_area_subsidiaries', 'wa_2nd_subsidiary', 50);
add_action('widget_area_subsidiaries', 'wa_3rd_subsidiary', 70);
add_action('widget_area_subsidiaries', 'wa_subsidiary_close', 90);
add_action('widget_area_index_top', 'wa_index_top', 10);
add_action('widget_area_index_insert', 'wa_index_insert', 10);
add_action('widget_area_index_bottom', 'wa_index_bottom', 10);
add_action('widget_area_single_top', 'wa_single_top', 10);
add_action('widget_area_single_insert', 'wa_single_insert', 10);
add_action('widget_area_single_bottom', 'wa_single_bottom', 10);
add_action('widget_area_page_top', 'wa_page_top', 10);
add_action('widget_area_page_bottom', 'wa_page_bottom', 10);
</pre>
<p>This code will not assign any widget to the widget areas. So it&#8217;s nothing to test any logic behind the widgets or widget areas. It&#8217;ll simulate the process using <code>the_widget()</code>.</p>
<p>The link id and the class are not working properly. I could make both items static and fix this issue, but I left this part as it is, if you want to filter <code>thematic_before_widget()</code>, <code>thematic_after_widget()</code>, <code>thematic_before_title()</code> and <code>thematic_after_title</code>.</p>
<p>This should be good enough to get a feeling for the locations of the several widget areas and to test the design / layout of your child theme.</p>
]]></content:encoded>
			<wfw:commentRss>http://programming.thematic4you.com/2010/02/how-to-display-all-widget-areas-for-a-test/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>How to use a different layout for a certain page?</title>
		<link>http://programming.thematic4you.com/2010/01/how-to-use-a-different-layout-for-a-certain-page/</link>
		<comments>http://programming.thematic4you.com/2010/01/how-to-use-a-different-layout-for-a-certain-page/#comments</comments>
		<pubDate>Mon, 11 Jan 2010 14:17:07 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Layout]]></category>
		<category><![CDATA[0.9.5.x]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[different layouts]]></category>

		<guid isPermaLink="false">http://programming.thematic4you.com/?p=6</guid>
		<description><![CDATA[Today I'll show you how to setup your home / frontpage to use a 3 columns fixed layout and all other pages using a 2 colums, sidebar on the right fixed layout.

The major requirement for this and all other code snippets: You have to use a child theme!]]></description>
			<content:encoded><![CDATA[<p>Today I&#8217;ll show you how to setup your home / frontpage to use a 3 columns fixed layout and all other pages using a 2 colums, sidebar on the right fixed layout.</p>
<p>The major requirement for this and all other code snippets: You have to use a child theme!<span id="more-6"></span></p>
<p>We start with our style.css, responsible for the 2c-r-fixed layout. It should contain the following code:</p>
<pre class="brush: css; title: ; notranslate">/* Reset browser defaults */
@import url('../thematic/library/styles/reset.css');

/* Apply basic typography styles */
@import url('../thematic/library/styles/typography.css');

/* Apply a basic layout */
@import url('../thematic/library/layouts/2c-r-fixed.css');

/* Apply basic image styles */
@import url('../thematic/library/styles/images.css');

/* Apply default theme styles and colors */
/* It's better to actually copy over default.css into this file (or link to a copy in your child theme) if you're going to do anything outrageous */
@import url('../thematic/library/styles/default.css');

/* Prepare theme for plugins */
@import url('../thematic/library/styles/plugins.css');</pre>
<p>Please make sure that you don&#8217;t import the original thematic/style.css.</p>
<p>Now we need to create your style-home.css. Copy style.css to style-home.css. Once the file is created you need to change the line responsible for the layout. Change it from 2c-r-fixed to 3c-fixed.  Your style-home.css should now contain the following code:</p>
<pre class="brush: css; title: ; notranslate">/* Reset browser defaults */
@import url('../thematic/library/styles/reset.css');

/* Apply basic typography styles */
@import url('../thematic/library/styles/typography.css');

/* Apply a basic layout */
@import url('../thematic/library/layouts/3c-fixed.css');

/* Apply basic image styles */
@import url('../thematic/library/styles/images.css');

/* Apply default theme styles and colors */
/* It's better to actually copy over default.css into this file (or link to a copy in your child theme) if you're going to do anything outrageous */
@import url('../thematic/library/styles/default.css');

/* Prepare theme for plugins */
@import url('../thematic/library/styles/plugins.css');</pre>
<p>Now that we have defined two different layouts, we need to define where the different styles should be used. For this we edit the functions.php in your child theme&#8217;s directory and add the following code:</p>
<pre class="brush: php; title: ; notranslate">// filter thematic_create_stylesheet to implement your own stylesheets
function my_stylesheet($content) {
	// We test if we're on home or on your frontpage
  if (is_home() || is_front_page()) {
  	// yes, we are .. now let's load the 3c-fixed layout
		$content = &quot;\t&quot;;
		$content .= &quot;&lt;link rel=\&quot;stylesheet\&quot; type=\&quot;text/css\&quot; href=\&quot;&quot;;
		$content .= get_bloginfo('stylesheet_directory') . &quot;/style-home.css&quot;;
		$content .= &quot;\&quot; /&gt;&quot;;
		$content .= &quot;\n\n&quot;;
  } else {
  	// we are not .. let's load the 2c-r-fixed layout
		$content = &quot;\t&quot;;
		$content .= &quot;&lt;link rel=\&quot;stylesheet\&quot; type=\&quot;text/css\&quot; href=\&quot;&quot;;
		$content .= get_bloginfo('stylesheet_directory') . &quot;/style.css&quot;;
		$content .= &quot;\&quot; /&gt;&quot;;
		$content .= &quot;\n\n&quot;;
	}
		// $content will be handed back to thematic_create_stylesheet
    return $content;
}
// connect the filter to thematic_create_stylesheet
add_filter ('thematic_create_stylesheet', 'my_stylesheet');</pre>
<p>That&#8217;s it. Now your blog is using two different layouts.</p>
<p>One last note about further modifications of your stylesheets. Modifications that are related to the 2c-r-fixed layout or the 3c-fixed layout need to be done either in style.css or style-home.css. Do not modify the original files in the Thematic directory. Modifications that are related to both layouts need to be done in style.css <strong>and</strong> in style-home.css.</p>
<p>You can modify the conditions in my_stylesheet() to your needs &#8230; more details about <a title="WordPress - Conditional Tags" href="http://codex.wordpress.org/Conditional_Tags" target="_self">Conditional Tags</a>.</p>
<p>Tested with<a title="Thematic, A WordPress Theme Framework" href="http://themeshaper.com/thematic/"> Thematic 0.9</a> and a basic child theme.</p>
<p>Please use the <a title="ThemeShaper Forums" href="http://themeshaper.com/forums/">ThemeShaper Forums</a> for any further questions.</p>
]]></content:encoded>
			<wfw:commentRss>http://programming.thematic4you.com/2010/01/how-to-use-a-different-layout-for-a-certain-page/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>

