<?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>Matt Hodder &#187; Thesis Customization</title>
	<atom:link href="http://www.matthodder.com/category/thesis-customization/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.matthodder.com</link>
	<description>Freelance Web Design from Prince Edward Island. Thesis Skins, Wordpress Design, &#38; Thesis Design</description>
	<lastBuildDate>Tue, 15 Nov 2011 13:51:36 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Add the Masonry Effect to Thesis Teasers</title>
		<link>http://www.matthodder.com/add-the-masonry-effect-to-thesis-teasers/</link>
		<comments>http://www.matthodder.com/add-the-masonry-effect-to-thesis-teasers/#comments</comments>
		<pubDate>Tue, 19 Oct 2010 13:02:00 +0000</pubDate>
		<dc:creator>Matt Hodder</dc:creator>
				<category><![CDATA[Thesis Customization]]></category>
		<category><![CDATA[Masonry]]></category>
		<category><![CDATA[thesis]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.matthodder.com/?p=630</guid>
		<description><![CDATA[The Masonry effect has become popular among different web sites to achieve a unique layout. Using the jQuery Masonry code, I&#8217;ll show you how to get this effect with Thesis teasers. What is jQuery Masonry? Taken straight from the site: Masonry is a layout plugin for jQuery. Think of it as the flip side of CSS floats. Whereas [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>The Masonry effect has become popular among different web sites to achieve a unique layout. Using the <a href="http://desandro.com/resources/jquery-masonry/">jQuery Masonry</a> code, I&#8217;ll show you how to get this effect with Thesis teasers.</p>
<h3>What is jQuery Masonry?</h3>
<p>Taken straight from <a href="http://desandro.com/resources/jquery-masonry/">the site</a>:</p>
<blockquote><p>Masonry is a layout plugin for jQuery. Think of it as the flip side of CSS floats. Whereas floating arranges  elements horizontally then vertically, Masonry arranges elements  vertically then horizontally according to a grid. The result minimizes  vertical gaps between elements of varying height, just like a mason  fitting stones in a wall.</p></blockquote>
<p>To give you an even better idea, check out these sites:</p>
<ul>
<li><a href="http://veerle.duoh.com/inspiration">The Inspiration Stream | Veerle&#8217;s blog 3.0</a></li>
<li><a href="http://chromeography.com/">Chromeography</a></li>
<li><a href="http://scaffold.tumblr.com/">Scaffold Theme</a></li>
</ul>
<h3>Download the Code</h3>
<p><img class="alignleft size-full wp-image-632 frame" title="masonry-structure" src="http://www.matthodder.com/wp-content/uploads/2010/10/masonry-structure.png" alt="" width="203" height="154" />First, you&#8217;ll need to download the jQuery code and move it to your site.</p>
<p><a href="http://github.com/desandro/masonry/raw/master/jquery.masonry.min.js">Download it here</a> and move it to a new folder in your Thesis custom folder, called <strong>scripts</strong>. Make sure the file has the <strong>.js</strong> extension and not a .txt or .htm extension.</p>
<h3 style="clear:left;">Use Teasers and Enable jQuery</h3>
<p><img class="alignright size-full wp-image-638" title="masonry-options" src="http://www.matthodder.com/wp-content/uploads/2010/10/masonry-options.png" alt="" width="300" height="133" />In order for this to work you&#8217;ll  have to disable featured posts and use teasers. Go to your WP Dashboard and to your Thesis Design Options. Find Featured &amp; Teasers and change the value to 0.</p>
<p>We&#8217;ll also have to enable jQuery for the homepage, so under that option find JavaScript and enable jQuery library.</p>
<h3>Design Options</h3>
<p>You&#8217;ll probably also want to make a few other changes in Thesis Options (if you haven&#8217;t already have it set this way). Under Site Layout, change the HTML Framework to Full-width framework and drop down Body (and Content Area) and uncheck Show interior layout borders.</p>
<h3>Write the Function</h3>
<p>Now you&#8217;ll need to open up <strong>custom_functions.php</strong> found in your custom folder and add the code below somewhere in that file:</p>
<pre>add_action( 'thesis_hook_after_html', 'scripts' );
function scripts() { ?&gt;
  &lt;script type="text/javascript" src="&lt;?php echo get_bloginfo(template_directory); ?&gt;/custom/scripts/jquery.masonry.min.js"&gt;&lt;/script&gt;
  &lt;script type="text/javascript"&gt;
    $('#content').masonry({
      singleMode: true,
      itemSelector: '.teaser'
    });
  &lt;/script&gt;
&lt;?php }</pre>
<p>At this point the code is in place and your teasers will be Masonry-ed, however they probably don&#8217;t look the best so we&#8217;ll look at styling them.</p>
<h3>Style the Teasers</h3>
<p>Finally, open up your <strong>custom.css</strong> file, again found in the custom folder. Add the code below to get a better set of teasers:</p>
<pre>.prev_next { position: absolute; bottom: -25px; width: 100%; }
#content { padding-bottom: 30px; position: relative; }
.teaser { padding: 5px; margin: 6px; background: #eee; }</pre>
<div id="attachment_644" class="wp-caption alignleft" style="width: 187px">
	<a href="http://www.matthodder.com/wp-content/uploads/2010/10/masonry-site.png"><img class="size-medium wp-image-644 " title="masonry-site" src="http://www.matthodder.com/wp-content/uploads/2010/10/masonry-site-187x300.png" alt="" width="187" height="300" /></a>
	<p class="wp-caption-text">Click above for a larger shot.</p>
</div>
<p>What this CSS code does is simply adds some spacing background around each teaser and fixes the previous/next post navigation. Now you should see the final product, similar to the attached screenshot.</p>
<p>It doesn&#8217;t end here though- the Masonry plugin is very powerful and can do much, much more then just stylishly line up your teasers. Check out the <a href="http://desandro.com/demo/masonry/docs/">documents and demos</a> to see the full effect of Masonry and try something new with your Thesis site.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthodder.com/add-the-masonry-effect-to-thesis-teasers/feed/</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Events Calendar Pro for Thesis</title>
		<link>http://www.matthodder.com/events-calendar-pro-for-thesis/</link>
		<comments>http://www.matthodder.com/events-calendar-pro-for-thesis/#comments</comments>
		<pubDate>Wed, 04 Aug 2010 12:28:46 +0000</pubDate>
		<dc:creator>Matt Hodder</dc:creator>
				<category><![CDATA[Thesis Customization]]></category>
		<category><![CDATA[calendar for thesis]]></category>
		<category><![CDATA[events calendar pro]]></category>
		<category><![CDATA[events calendar pro fix]]></category>
		<category><![CDATA[thesis]]></category>

		<guid isPermaLink="false">http://www.matthodder.com/?p=590</guid>
		<description><![CDATA[Throughout my time with WordPress, I have not found a good calendar/events plugin, but Events Calendar Pro (available here) changes that. It&#8217;s been the only solution I&#8217;ve found that covered everything you&#8217;d expect in a full calendar and events list. In the plugin creator&#8217;s own words: The Events Calendar Premium plugin for WordPress enables you to [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Throughout my time with WordPress, I have not found a good calendar/events plugin, but <strong>Events Calendar Pro</strong> (<a href="http://codecanyon.net/item/events-calendar-pro-wordpress-premium-plugin/109301?ref=xkey">available here</a>) changes that. It&#8217;s been the only solution I&#8217;ve found that covered everything you&#8217;d expect in a full calendar and events list. In the plugin creator&#8217;s own words:</p>
<blockquote><p>The Events Calendar Premium plugin for WordPress enables you to rapidly create and manage events using the post editor. Features include Google Maps integration as well as default templates such as a calendar grid and event list for streamlined one click installation. Check out the <a href="http://screenr.com/0PK">full screencast here</a>.</p></blockquote>
<p>I purchased and rolled out the plugin onto a new site only to find out that Events Calendar Pro doesn&#8217;t work well with Thesis. However, Events Calendar Pro provides an easy way to template the plugin without touching any core files. So after some hacking and messing around, I&#8217;ve came up with a working template for Thesis.</p>
<p>Download the fix below and move the downloaded folder into your installed Thesis folder. Obviously you will need to already have <a href="http://codecanyon.net/item/events-calendar-pro-wordpress-premium-plugin/109301?ref=xkey">Events Calendar Pro</a> installed in order for the template files to do anything.</p>
<p class="note"><strong>Note:</strong> I&#8217;ve tested the files with both Thesis 1.7 and Thesis 1.8b2 so far. Let me know if anyone sees any issues.</p>
<p style="text-align: center;"><a href="http://www.matthodder.com/wp-content/plugins/download-monitor/download.php?id=Events+Calendar+Pro+Templates+for+Thesis"><img class="aligncenter size-full wp-image-329" title="Download!" src="http://www.matthodder.com/wp-content/uploads/2010/02/download-button.png" alt="" width="322" height="62" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthodder.com/events-calendar-pro-for-thesis/feed/</wfw:commentRss>
		<slash:comments>55</slash:comments>
		</item>
		<item>
		<title>Enable WordPress 3.0 Features for the Thesis Theme</title>
		<link>http://www.matthodder.com/enable-wordpress-3-0-features-for-the-thesis-theme/</link>
		<comments>http://www.matthodder.com/enable-wordpress-3-0-features-for-the-thesis-theme/#comments</comments>
		<pubDate>Mon, 21 Jun 2010 12:46:28 +0000</pubDate>
		<dc:creator>Matt Hodder</dc:creator>
				<category><![CDATA[Thesis Customization]]></category>
		<category><![CDATA[thesis theme]]></category>
		<category><![CDATA[web design]]></category>
		<category><![CDATA[Wordpress 3.0]]></category>

		<guid isPermaLink="false">http://www.matthodder.com/?p=423</guid>
		<description><![CDATA[If you haven&#8217;t heard, Wordpress 3.0 dropped the other day with a bunch of new features. Although there&#8217;s no news on a Thesis update, Thesis 1.7 seems to work fine with WordPress 3.0 but unfortunately doesn&#8217;t cash in on any of the new features. I&#8217;ve decided to tackle a few of those features to make them available right [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>If you haven&#8217;t heard, Wordpress 3.0 dropped the other day with a <a href="http://wordpress.org/development/2010/06/thelonious/">bunch of new features</a>.</p>
<p>Although there&#8217;s no news on a Thesis update, Thesis 1.7 seems to work fine with WordPress 3.0 but unfortunately doesn&#8217;t cash in on any of the new features. I&#8217;ve decided to tackle a few of those features to make them available right away:</p>
<ul>
<li><a href="#custom-background">Custom Background Option</a></li>
<li><a href="#custom-menu">WP 3.0 Navigation Menus</a></li>
<li><a href="#custom-header">Custom Header Image</a></li>
</ul>
<h2 id="custom-background">Use the WordPress 3.0 Custom Background Option with Thesis</h2>
<p>Let&#8217;s start small. Open up your <em>custom_functions.php</em> file (found in the custom folder) and add the following code at the end of the file:</p>
<pre style="font: normal normal normal 12px/18px Consolas, Monaco, 'Courier New', Courier, monospace;">add_custom_background();</pre>
<p><img class="alignleft size-full wp-image-420" title="Wordpress 3.0 Custom Background with Thesis" src="http://174.121.151.58/~mthodder/wp-content/uploads/2010/06/background-thesis1.png" alt="Wordpress 3.0 Custom Background with Thesis" width="154" height="149" />Now if you pop in your Dashboard, drop down the <strong>Appearance</strong> tab you should see a <strong>Background</strong> option where you can set a background colour or image. I&#8217;ve heard plenty of people looking for this sort of customization so hopefully it helps!</p>
<h2 id="custom-menu" style="clear: both;">Use WordPress 3.0 Navigation Menus with the Thesis Theme</h2>
<p>I&#8217;ve seen a few tutorials on this already out in the wild- however they don&#8217;t provide full functionality like I had expected, so I worked in my own. Again, open up <em>custom_functions.php</em> and paste this code there:</p>
<pre>add_theme_support('menus');
register_nav_menu('primary', 'Primary Navigation');
remove_action('thesis_hook_before_header', 'thesis_nav_menu');
add_action('thesis_hook_before_header', 'new_menu');
function new_menu() {
   	wp_nav_menu( array( 'container_class' =&gt; 'menu-header', 'theme_location' =&gt; 'primary' ) );
}</pre>
<p><img class="alignright size-full wp-image-428" title="WordPress 3.0 Navigation Menus with Thesis" src="http://174.121.151.58/~mthodder/wp-content/uploads/2010/06/menus-thesis1.png" alt="WordPress 3.0 Navigation Menus with Thesis" width="289" height="198" />This will allow you to use the <strong>Menus </strong>option found under the <strong>Appearance</strong> tab in your Dashboard. Also (and this is where other solutions fell flat) you can create different sets of menus and switch them out as you please. Check the screen shot to see what I mean. Furthermore, you can see how you can use the code above to create different menus in different areas (say a menu in the footer area).</p>
<h2 id="custom-header">Use WordPress 3.0 Custom Header Images with Thesis</h2>
<p>I&#8217;ll finish this round of WP 3.0 tricks off with a long set of code that gives functionality to change out the header background image for Thesis. This one is a bit &#8220;hacky&#8221; but I&#8217;ve tested it out with a bunch of different options and it seems to work fine.</p>
<p>So like usual, fire up your code editor and open <em>custom_functions.php</em>. Add this set of code to it:</p>
<pre>global $thesis_design;
$layout = $thesis_design-&gt;layout;
$width_one = $layout['widths']['content'];
$width_two = $layout['widths']['sidebar_1'];
$width_three = $layout['widths']['sidebar_2'];

if ($layout['columns'] == 3) { $width_full = $width_one+$width_two+$width_three+79; }
elseif ($layout['columns'] == 2) { $width_full = $width_one+$width_two+57; }
elseif ($layout['columns'] == 1) { $width_full = $width_one+22; }

define( 'NO_HEADER_TEXT', true );
define('HEADER_IMAGE_WIDTH', $width_full); // Width will change automatically (depending on your Thesis options)
define('HEADER_IMAGE_HEIGHT', 110); // If you need a taller header image change this value

function header_style() { // Gets included in the site header
	?&gt;&lt;style type="text/css"&gt;
    	#header { background: url(&lt;?php header_image(); ?&gt;); }
    &lt;/style&gt;
&lt;?php }

function admin_header_style() { // Gets included in the admin header
    ?&gt;&lt;style type="text/css"&gt;
        #headimg { width: &lt;?php echo HEADER_IMAGE_WIDTH; ?&gt;px; height: &lt;?php echo HEADER_IMAGE_HEIGHT; ?&gt;px; }
    &lt;/style&gt;
&lt;?php }

add_custom_image_header('header_style', 'admin_header_style');</pre>
<p><a href="http://174.121.151.58/~mthodder/wp-content/uploads/2010/06/header-thesis.png"><img class="alignleft size-thumbnail wp-image-477" title="Wordpress 3.0 Custom Header Images with Thesis" src="http://www.matthodder.com/wp-content/uploads/header-thesis-150x150.png" alt="Wordpress 3.0 Custom Header Images with Thesis" width="99" height="99" /></a></p>
<p>What this does is allow you to set a background for the Header element (which contains your Site Heading and Tagline). You can use the WP 3.0 crop tool as well. Check out the screenshot to see a (small) header that was easily uploaded and changed with this procedure.</p>
<h2>Source File</h2>
<p><img class="size-full wp-image-476 alignright" title="menu-thesis" src="http://174.121.151.58/~mthodder/wp-content/uploads/2010/06/menu-thesis.png" alt="" width="148" height="164" /></p>
<p>I&#8217;ve packaged all three bits of code and have it available for <a href="http://www.matthodder.com/wp-content/plugins/download-monitor/download.php?id=Thesis+WP3">download here</a>. If you copy all of these functions over you should see three new options when you drop down your <strong>Appearance</strong> menu in your WP dashboard. If you don&#8217;t, make sure you have the latest version of both Thesis and WordPress and that you copied everything over correctly.</p>
<p>Let me know if you find any issues or anything wrong with my code!</p>
<h2>Bonus: Even More WP 3.0 and Thesis Tutorials</h2>
<ul>
<li>Looking to work in new WP 3.0 Custom Post Types and Taxonomies? Check out <a href="http://www.kristarella.com/2010/06/wordpress-3-0-custom-post-types-taxonomies-thesis/">Kristarella&#8217;s post here</a>.</li>
<li>Problem with the custom file editor when updating to WordPress 3.0? Find the <a href="http://sproutnewmedia.com/how-to-fix-thesis-custom-editor-wordpress-3-0">fix here</a>.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.matthodder.com/enable-wordpress-3-0-features-for-the-thesis-theme/feed/</wfw:commentRss>
		<slash:comments>44</slash:comments>
		</item>
		<item>
		<title>Change Your Thesis Site to a Fluid Layout</title>
		<link>http://www.matthodder.com/change-thesis-to-a-fluid-layout/</link>
		<comments>http://www.matthodder.com/change-thesis-to-a-fluid-layout/#comments</comments>
		<pubDate>Fri, 11 Jun 2010 01:11:17 +0000</pubDate>
		<dc:creator>Matt Hodder</dc:creator>
				<category><![CDATA[Thesis Customization]]></category>
		<category><![CDATA[fluid layout]]></category>
		<category><![CDATA[thesis]]></category>
		<category><![CDATA[thesis tutorial]]></category>
		<category><![CDATA[web design]]></category>

		<guid isPermaLink="false">http://www.matthodder.com/?p=389</guid>
		<description><![CDATA[Thesis comes packed with plenty of configuration options, but I&#8217;m going to show you how to create a fluid layout for your site by only editing custom.css. Not sure what a fluid layout even is? Basically it&#8217;s just means the site width is determined by the size of the users browser window. If you resize, [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Thesis comes packed with plenty of configuration options, but I&#8217;m going to show you how to create a fluid layout for your site by only editing custom.css.</p>
<p class="alert">Not sure what a <strong>fluid layout</strong> even is? Basically it&#8217;s just means the site width is determined by the size of the users browser window. If you resize, the content resizes as well. <a href="http://www.w3.org/">W3C&#8217;s site</a> is a good example of a fluid/liquid layout. Google &#8220;Fluid Layout&#8221; and you&#8217;ll find plenty of info on it!</p>
<p>Making this change is actually pretty easy, but it should also be noted that you&#8217;ll lose the functionality inside Thesis to define column sizes. Also, with the code provided you can only use the 2 columns option (without making extra changes on your own).</p>
<p>Anyways, lets get to it- open up the <strong>custom.css</strong> file found inside the Thesis custom folder and add the code below:</p>
<pre>#container { width: 100%; }
	#content_box { background-position: 70% 0; }
		#content { width: 70%; }
			.teasers_box { width: auto; }
				.teaser { width: 48%; }
		#sidebars { width: 30%; }
			#image_box { text-align: center; overflow: hidden; }
				#image_box img { display: inline-block; border: none; background: none; }</pre>
<p>That&#8217;s going to give you your fluid design with no other steps and you should have something that looks like the site in the image below:</p>
<p><img class="aligncenter size-full wp-image-391" title="thesis-fluid" src="http://174.121.151.58/~mthodder/wp-content/uploads/2010/06/thesis-fluid.png" alt="Thesis Fluid Screenshot" width="540" height="399" /></p>
<p>Of course you can take things into your own hands and edit the different % values to come up with different sidebar / content ratios (make sure it equals 100%). If you&#8217;re using interior lines (the default) make sure the background the <em>#content_box</em> and <em>#content</em> values match up. If you want to use your sidebar on the left column, have the <em>#content_box</em> value equal your <em>#sidebars</em> value.</p>
<p>Need more padding on the sides? Thesis has an option found in <strong>Design Options</strong> called <strong>Outer Page Padding</strong>, which you can tweak to your fancy.</p>
<p>I didn&#8217;t do extensive testing, but from the looks of things it works in IE6+ and all major browsers. Let me know any different.</p>
<p><strong>Leave your questions, comments, and issues after the break!</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthodder.com/change-thesis-to-a-fluid-layout/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Thesis Starter PSD and Custom Files</title>
		<link>http://www.matthodder.com/thesis-starter-psd-and-custom-files/</link>
		<comments>http://www.matthodder.com/thesis-starter-psd-and-custom-files/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 15:28:55 +0000</pubDate>
		<dc:creator>Matt Hodder</dc:creator>
				<category><![CDATA[Free Downloads]]></category>
		<category><![CDATA[Thesis Customization]]></category>
		<category><![CDATA[thesis]]></category>
		<category><![CDATA[thesis psd]]></category>
		<category><![CDATA[thesis skin]]></category>

		<guid isPermaLink="false">http://www.matthodder.com/?p=325</guid>
		<description><![CDATA[I&#8217;m still kicking it in the Thesis world. For those of you who still don&#8217;t know what Thesis is, check it out here. Anyways, as I&#8217;m sure most of you do know, Thesis is a leading WordPress framework that provides SEO, stability, and plenty of ways to customize your site. The customization scene has been [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>I&#8217;m still kicking it in the Thesis world. For those of you who <strong>still </strong>don&#8217;t know what Thesis is, <a href="http://www.matthodder.com/get-thesis">check it out here</a>.</p>
<p>Anyways, as I&#8217;m sure most of you do know, Thesis is a leading WordPress framework that provides SEO, stability, and plenty of ways to customize your site. The customization scene has been picking up lately, with <a href="http://www.artofblog.com/thesis-design-customizations/">hundreds of great examples</a>. Seeing all of those great customizations and skins that people are hammering out, I figured I&#8217;d try to make things easier for some people by providing a sort of starter pack to the public.</p>
<p>The files included in the pack are exactly what I use when I start a new site or skin. Included in the download are:</p>
<ul>
<li>Default Thesis PSD for a 2 column (600&#215;300) site. Includes extra layers to visualize the blog page, normal page, comments and dropdowns. Also has default folders to keep things organized.</li>
</ul>
<ul>
<li>Custom files, custom.css and custom-functions.php already commented out. Custom.css also includes some default styling for forms (as I&#8217;m not a fan of the default styling).</li>
</ul>
<ul>
<li>Two import files that gives you a de-lined, full-width page with my preferred options (just try it out). <strong>NOTE:</strong> You need the <a href="http://wordpress.org/extend/plugins/thesis-settings-export/">Thesis import/export plugin</a> in order to use these two files.</li>
</ul>
<p style="text-align: center;"><a href="http://www.matthodder.com/wp-content/plugins/download-monitor/download.php?id=Thesis+Starter+Pack"><img class="size-full wp-image-329 aligncenter" title="download-button" src="http://www.matthodder.com/wp-content/uploads/2010/02/download-button.png" alt="" width="322" height="62" /></a></p>
<p><span style="font-weight: normal;"><em>For those of you who don&#8217;t want to spend any time customizing stuff, why don&#8217;t you download my new Thesis skin: </em></span><a href="http://thesisthemes.com/premium-skins/thesisplay"><span style="font-weight: normal;"><em>ThesisPlay</em></span></a><span style="font-weight: normal;"><em>. It&#8217;s awesome- in fact, it&#8217;s the skin running this very site! </em></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthodder.com/thesis-starter-psd-and-custom-files/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Add Built-in Widgets to Thesis / WordPress Theme</title>
		<link>http://www.matthodder.com/build-widgets-in-thesis-wordpress-theme/</link>
		<comments>http://www.matthodder.com/build-widgets-in-thesis-wordpress-theme/#comments</comments>
		<pubDate>Fri, 20 Nov 2009 14:32:46 +0000</pubDate>
		<dc:creator>Matt Hodder</dc:creator>
				<category><![CDATA[Thesis Customization]]></category>
		<category><![CDATA[thesis]]></category>
		<category><![CDATA[thesis skin]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.matthodder.com/?p=248</guid>
		<description><![CDATA[Almost anything that can be done with a normal theme can, in almost the same way, be done with Thesis. The main custom functions file (custom_functions.php) is just an extension of Functions.php, the main function file for WordPress themes. So is it possible to add built in widgets with a Thesis skin or customization? Of [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Almost anything that can be done with a normal theme can, in almost the same way, be done with Thesis. The main custom functions file (<strong>custom_functions.php</strong>) is just an extension of <strong>Functions.php</strong>, the main function file for WordPress themes. So is it possible to add built in widgets with a Thesis skin or customization? Of course!</p>
<p class="note">Note: For Thesis 1.5+ / WordPress 2.8.x</p>
<p class="note">Double Note: If you came here looking how to build a widget into a non-thesis wordpress theme, almost the same tutorial applies. The only difference is you would contain everything in Functions.php.</p>
<p>In this example we&#8217;re going to build a simple rss/twitter widget, which will allow the user to input a twitter username and RSS link and have it show up wherever they place said widget.</p>
<h2>To begin</h2>
<p>First, open up <strong>custom_functions.php</strong> (found in your thesis install folder/custom). Anywhere after the code already in the file, paste the following:</p>
<div>
<pre class="brush: php;">class my_subscribe_widget extends WP_Widget {

	function my_subscribe_widget() {
		// Construct our widget
	}

	function widget($args, $instance) {
		// Our front end
	}

	function update($new_instance, $old_instance) {
		// Updates our widget
	}

	function form($instance) {
		// Our back end
	}
}

register_widget('my_subscribe_widget');</pre>
<p>This is a widget function, bare-bones. Our class name is <strong>my_subscribe_widget</strong>, which is extending the <strong>WP_Widget class</strong> to allow us to use its functions and properties. We can now build upon our frame and create a widget that actually has some use.</p>
<pre class="brush: css;">&lt;?php
class my_subscribe_widget extends WP_Widget {
 function my_subscribe_widget() {
 $widget_ops = array('classname' =&gt; 'widget_bu_subscribe', 'description' =&gt; 'Add an RSS and twitter link' );
 $this-&gt;WP_Widget('my_subscribe_widget', 'RSS/Twitter Links', $widget_ops);
 }

 function widget($args, $instance) {
 extract($args, EXTR_SKIP);

 echo $before_widget;
 $title = empty($instance['title']) ? '&amp;nbsp;' : apply_filters('widget_title', $instance['title']);
 $rss_link = empty($instance['rss_link']) ? '&amp;nbsp;' : apply_filters('widget_rss_link', $instance['rss_link']);
 $twitter_link = empty($instance['twitter_link']) ? '&amp;nbsp;' : apply_filters('widget_twitter_link', $instance['twitter_link']);

 if ( !empty( $title ) ) { echo $before_title . $title . $after_title; }; ?&gt;
 &lt;ul&gt;
 &lt;li&gt;&lt;a title="Subscribe to the RSS Feed" href="&lt;?php echo $rss_link; ?&gt;"&gt;Subscribe to the RSS Feed&lt;/a&gt;&lt;/li&gt;
 &lt;li&gt;&lt;a title="Follow on Twitter" href="http://www.twitter.com/&lt;?php echo $twitter_link; ?&gt;"&gt;Follow us on Twitter&lt;/a&gt;&lt;/li&gt;
 &lt;/ul&gt;

 &lt;?php echo $after_widget;
 }

 function update($new_instance, $old_instance) {
 $instance = $old_instance;
 $instance['title'] = strip_tags($new_instance['title']);
 $instance['rss_link'] = strip_tags($new_instance['rss_link']);
 $instance['twitter_link'] = strip_tags($new_instance['twitter_link']);
 return $instance;
 }

 function form($instance) {
 $rss_default = get_bloginfo('rss2_url');
 $instance = wp_parse_args( (array) $instance, array( 'title' =&gt; '', 'rss_link' =&gt; $rss_default, 'twitter_link' =&gt; '') );
 $title = strip_tags($instance['title']);
 $rss_link = strip_tags($instance['rss_link']);
 $twitter_link = strip_tags($instance['twitter_link']);
?&gt;
&lt;p&gt;&lt;label for="&lt;?php echo $this-&gt;get_field_id('title'); ?&gt;"&gt;Title: &lt;input id="&lt;?php echo $this-&gt;get_field_id('title'); ?&gt;" name="&lt;?php echo $this-&gt;get_field_name('title'); ?&gt;" type="text" value="&lt;?php echo attribute_escape($title); ?&gt;" /&gt;&lt;/label&gt;&lt;/p&gt;
&lt;p&gt;&lt;label for="&lt;?php echo $this-&gt;get_field_id('rss_link'); ?&gt;"&gt;RSS Feed Link: &lt;input id="&lt;?php echo $this-&gt;get_field_id('rss_link'); ?&gt;" name="&lt;?php echo $this-&gt;get_field_name('rss_link'); ?&gt;" type="text" value="&lt;?php echo attribute_escape($rss_link); ?&gt;" /&gt;&lt;/label&gt;&lt;/p&gt;
&lt;p&gt;&lt;label for="&lt;?php echo $this-&gt;get_field_id('twitter_link'); ?&gt;"&gt;Twitter Username: &lt;input id="&lt;?php echo $this-&gt;get_field_id('twitter_link'); ?&gt;" name="&lt;?php echo $this-&gt;get_field_name('twitter_link'); ?&gt;" type="text" value="&lt;?php echo attribute_escape($twitter_link); ?&gt;" /&gt;&lt;/label&gt;&lt;/p&gt;

&lt;?php
 }
}

register_widget('my_subscribe_widget');</pre>
<p>That seems like a lot of code but if you sift through it, it should start to make sense. With this code, you now have a fully functional RSS/Twitter widget. You will still need to style it to match your current theme however.</p>
<h2>Breaking it Down</h2>
<p>If playing with and deciphering code isn&#8217;t your thing, lets go ahead and break the code down.</p>
<pre> function my_subscribe_widget() {
 $widget_ops = array('classname' =&gt; 'widget_bu_subscribe', 'description' =&gt; 'Add an RSS and twitter link' );
 $this-&gt;WP_Widget('my_subscribe_widget', 'RSS/Twitter Links', $widget_ops);
 }</pre>
<p>Above we are basically naming and describing our widget, while setting its class name. The widget will be named <em>RSS/Twitter Links</em> and will have a short description under it of  <em>Add an RSS and twitter link</em>.</p>
<pre>function widget($args, $instance) {
 extract($args, EXTR_SKIP);

 echo $before_widget;
 $title = empty($instance['title']) ? '&amp;nbsp;' : apply_filters('widget_title', $instance['title']);
 $rss_link = empty($instance['rss_link']) ? '&amp;nbsp;' : apply_filters('widget_rss_link', $instance['rss_link']);
 $twitter_link = empty($instance['twitter_link']) ? '&amp;nbsp;' : apply_filters('widget_twitter_link', $instance['twitter_link']);

 if ( !empty( $title ) ) { echo $before_title . $title . $after_title; }; ?&gt;
 &lt;ul&gt;
 &lt;li&gt;&lt;a title="Subscribe to the RSS Feed" href="&lt;?php echo $rss_link; ?&gt;"&gt;Subscribe to the RSS Feed&lt;/a&gt;&lt;/li&gt;
 &lt;li&gt;&lt;a title="Follow on Twitter" href="http://www.twitter.com/&lt;?php echo $twitter_link; ?&gt;"&gt;Follow us on Twitter&lt;/a&gt;&lt;/li&gt;
 &lt;/ul&gt;

 &lt;?php echo $after_widget;
 }</pre>
<p><a href="http://174.121.151.58/~mthodder/wp-content/uploads/2009/11/frontend.jpg"><img class="alignleft size-full wp-image-272" style="border: 1px solid #DDDDDD;" title="frontend" src="http://174.121.151.58/~mthodder/wp-content/uploads/2009/11/frontend.jpg" alt="frontend" width="242" height="242" /></a>The actual widget function will be what is displayed on the front end. In this occasion, we are first grabbing our instances from what the user set on the back end. We pull the title, RSS link, and Twitter link into respected variables. We create a title (if there is one) and then proceed with our RSS / Twitter list. We echo (print) out our variables in their correct locations to create our links. Since we only want the user to input a Twitter username, we only echo that variable out after http://www.twitter.com/ .</p>
<pre>function update($new_instance, $old_instance) {
 $instance = $old_instance;
 $instance['title'] = strip_tags($new_instance['title']);
 $instance['rss_link'] = strip_tags($new_instance['rss_link']);
 $instance['twitter_link'] = strip_tags($new_instance['twitter_link']);
 return $instance;
 }</pre>
<p>In this function we are updating our data from the back end. Just make sure all option entries match up in titles.</p>
<pre> function form($instance) {
 $rss_default = get_bloginfo('rss2_url');
 $instance = wp_parse_args( (array) $instance, array( 'title' =&gt; '', 'rss_link' =&gt; $rss_default, 'twitter_link' =&gt; '') );
 $title = strip_tags($instance['title']);
 $rss_link = strip_tags($instance['rss_link']);
 $twitter_link = strip_tags($instance['twitter_link']);
?&gt;
&lt;p&gt;&lt;label for="&lt;?php echo $this-&gt;get_field_id('title'); ?&gt;"&gt;Title: &lt;input id="&lt;?php echo $this-&gt;get_field_id('title'); ?&gt;" name="&lt;?php echo $this-&gt;get_field_name('title'); ?&gt;" type="text" value="&lt;?php echo attribute_escape($title); ?&gt;" /&gt;&lt;/label&gt;&lt;/p&gt;
&lt;p&gt;&lt;label for="&lt;?php echo $this-&gt;get_field_id('rss_link'); ?&gt;"&gt;RSS Feed Link: &lt;input id="&lt;?php echo $this-&gt;get_field_id('rss_link'); ?&gt;" name="&lt;?php echo $this-&gt;get_field_name('rss_link'); ?&gt;" type="text" value="&lt;?php echo attribute_escape($rss_link); ?&gt;" /&gt;&lt;/label&gt;&lt;/p&gt;
&lt;p&gt;&lt;label for="&lt;?php echo $this-&gt;get_field_id('twitter_link'); ?&gt;"&gt;Twitter Username: &lt;input id="&lt;?php echo $this-&gt;get_field_id('twitter_link'); ?&gt;" name="&lt;?php echo $this-&gt;get_field_name('twitter_link'); ?&gt;" type="text" value="&lt;?php echo attribute_escape($twitter_link); ?&gt;" /&gt;&lt;/label&gt;&lt;/p&gt;

&lt;?php
}</pre>
<p><a href="http://174.121.151.58/~mthodder/wp-content/uploads/2009/11/rss-twitter.jpg"><img class="size-full wp-image-254 alignleft" title="rss-twitter" src="http://174.121.151.58/~mthodder/wp-content/uploads/2009/11/rss-twitter.jpg" alt="rss-twitter" width="269" height="238" /></a>Finally we are creating our back end form. This is what the user sees on the widget section of their dashboard after they add it to a sidebar (see image). First we create a variable called<strong> $rss_default</strong>, which grabs in the current RSS feed. This saves the user time and enters that value as the default RSS link value once the widget is added. Of course they are free to change it afterwords We put our default values into <strong>$instance</strong> (where you can see <strong>$rss_default</strong> being used, and everything else blank). We pull our instances into separate variables to use in the form.</p>
<p>Then we build our actual user input form. We label and title our fields for usability, and echo any values that might be in the fields. We are only using input fields here but if you need different types of input, there are plenty more. Check other widgets to see what you can or cannot do easily.</p>
<h2>Hope everyone kept up! If you have any questions or comments, leave them below.</h2>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.matthodder.com/build-widgets-in-thesis-wordpress-theme/feed/</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>Remove all borders in Thesis 1.5</title>
		<link>http://www.matthodder.com/remove-all-borders-in-thesis-15/</link>
		<comments>http://www.matthodder.com/remove-all-borders-in-thesis-15/#comments</comments>
		<pubDate>Wed, 27 May 2009 16:11:24 +0000</pubDate>
		<dc:creator>Matt Hodder</dc:creator>
				<category><![CDATA[Thesis Customization]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[thesis]]></category>
		<category><![CDATA[Thesis Skins]]></category>

		<guid isPermaLink="false">http://www.matthodder.com/?p=142</guid>
		<description><![CDATA[Re-working the Thesis framework to your own liking? Well, if your doing a huge overhaul, you might want to get rid of the separator lines the default styling has included. This includes the sidebar lines, the teaser box lines, the comment lines.etc. To get rid of these lines, while editing the css (you should be [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Re-working the Thesis framework to your own liking?</p>
<p>Well, if your doing a huge overhaul, you might want to get rid of the separator lines the default styling has included. This includes the sidebar lines, the teaser box lines, the comment lines.etc.</p>
<p>To get rid of these lines, while editing the css (you should be using the custom.css located in the custom folder of Thesis) input this code at the top:</p>
<pre class="brush: css;">.custom #header, .custom .post, .custom .teasers_box, .custom #footer, .custom #footer a, .custom #footer a:active, .custom #archive_info, .custom .prev_next, .custom #comment_list, .custom #comment_list dd, .custom #commentform, .custom #sidebar_1, .custom #sidebar_2, .custom #comment_list dt.comment, .custom #comment_list dd.comment, .custom #comment_list dl .bypostauthor .format_text, .custom #trackback_list {
        border-bottom: 0px;
        border-top: 0px;
        border-right: 0px;
        border-left: 0px;
}
.custom #content_box, .custom #column_wrap {
        background: none;
}</pre>
<p>This will effectively get rid of all separators, no matter the framework (page or full-width) or column amount / justification. Also, since you placed this code at the very top of the document, any border you might want to add in later will over-rule the top declarations. Good luck!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthodder.com/remove-all-borders-in-thesis-15/feed/</wfw:commentRss>
		<slash:comments>38</slash:comments>
		</item>
		<item>
		<title>New look via Thesis</title>
		<link>http://www.matthodder.com/new-look-via-thesis/</link>
		<comments>http://www.matthodder.com/new-look-via-thesis/#comments</comments>
		<pubDate>Thu, 21 May 2009 07:36:22 +0000</pubDate>
		<dc:creator>Matt Hodder</dc:creator>
				<category><![CDATA[Matthodder.com]]></category>
		<category><![CDATA[Thesis Customization]]></category>
		<category><![CDATA[thesis]]></category>
		<category><![CDATA[thesis child theme]]></category>
		<category><![CDATA[thesis skin]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.matthodder.com/?p=115</guid>
		<description><![CDATA[Yep, I&#8217;m using Thesis. For the last couple of weeks I have been working with the latest Thesis framework (and WordPress of course) to create a variety of different Thesis &#8220;skins.&#8221; These skins will be released completely free sometime next month. The skin I currently have enabled is one of the simpler, toned down skins [...]]]></description>
			<content:encoded><![CDATA[<p></p><p>Yep, I&#8217;m using Thesis.</p>
<p>For the last couple of weeks I have been working with the latest Thesis framework (and WordPress of course) to create a variety of different Thesis &#8220;skins.&#8221; These skins will be released completely <strong>free</strong> sometime next month. The skin I currently have enabled is one of the simpler, toned down skins that are planned to be released to the public.</p>
<p>Now, I&#8217;m sure some of you proud Thesis owners might be thinking &#8220;Its pretty and all, but do I really want to go through all of the work to get it up and operational- and how much &#8216;out of the box&#8217; work did you do to get it to look like this?&#8221; Well I won&#8217;t speak for the rest of the themes just yet- but this theme itself honestly took about 5 minutes to install. You do not need to enter in any hooks, or change any functions. There are a few steps to get the design &#8220;just right&#8221;, which can all be achieved using Thesis&#8217; built in options. Upload, point, click, click, click save. Done.</p>
<p>Anyways- I won&#8217;t go into detail right now- but if you are a Thesis fan and happened to stumble across this post, bookmark the site, add me to twitter, drop a comment, or grab the RSS. I promise you won&#8217;t be disappointed.</p>
<p>Original Photo Credit: <a href="http://www.flickr.com/photos/aheram/3531514902/">Flickr</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.matthodder.com/new-look-via-thesis/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

<!-- Dynamic Page Served (once) in 0.471 seconds -->

