<?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>Thesis Tutor</title> <atom:link href="http://thesistutor.com/feed/" rel="self" type="application/rss+xml" /><link>http://thesistutor.com</link> <description>Written &#38; Video Tutorials for the Thesis Theme for WordPress</description> <lastBuildDate>Mon, 06 Jun 2011 18:49:01 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.2.1</generator> <item><title>An Update, Info and Recommended Tutorials</title><link>http://thesistutor.com/update-info-recommended-tutorials/</link> <comments>http://thesistutor.com/update-info-recommended-tutorials/#comments</comments> <pubDate>Mon, 06 Jun 2011 18:48:15 +0000</pubDate> <dc:creator>Matt</dc:creator> <category><![CDATA[Miscellaneous Tutorials]]></category><guid
isPermaLink="false">http://thesistutor.com/?p=1222</guid> <description><![CDATA[Wow, have I been busy. With all the development work I&#8217;ve been doing, I simply haven&#8217;t had time to write any tutorials. So, I&#8217;m going to share a few tutorials that I have used lately. I&#8217;d also like to share a couple of must reads for all of the newbies out there. I know a [...]]]></description> <content:encoded><![CDATA[<p></p><p>Wow, have I been busy. With all the development work I&#8217;ve been doing, I simply haven&#8217;t had time to write any tutorials. So, I&#8217;m going to share a few tutorials that I have used lately. I&#8217;d also like to share a couple of must reads for all of the newbies out there. I know a lot of you guys and gals are scratching your head wondering what WordPress and Thesis are all about. So, I decided to include a couple of important links that will help newbs understand Thesis, WordPress, hosting and the lot.</p><p>A couple of the biggest questions I receive from beginners and less code savvy users are:</p><ol><li>What is <strong><a
title="Thesis Theme for WordPress" href="http://thesistutor.com/diythemes">Thesis</a></strong>?</li><li>What is a <strong><a
title="Theme Frameworks Explained" href="http://diythemes.com/thesis/why-premium-theme-frameworks-rock/">theme framework</a></strong>?</li></ol><p>When somebody asks me &#8220;What is the Thesis Theme?&#8221; my response is &#8220;It is a theme framework.&#8221; Of course, I know that the next question will be &#8220;What is a theme framework?&#8221; Honestly, the answer is simple. A theme framework provides an underlying system that makes designing on WordPress easier, more scaleable and (generally) allows for easy modifications to design without compromising your HTML markup. Additionally, all worthwhile companies who sell frameworks have excellent support staff. I know support isn&#8217;t directly related to theme frameworks, but believe me: in my early days I relied HEAVILY on the support forums and moderators for help and you will, too.</p><p>Often, I get users who are new to websites in general. They have heard of HTML and CSS but they can&#8217;t write either. They have heard of hosting and WordPress but they don&#8217;t know where to get either and they certainly don&#8217;t know how to set it all up. Sometimes I run into the user who is really dedicated to learning about HTML, CSS, PHP, etc. But frankly, most people are looking for answers and not endless amounts of studying. My recommendation to them is <strong><a
title="Managed WordPress Hosting" href="http://diythemes.com/thesis/rtfm/managed-wordpress-hosting/">managed WordPress hosting</a></strong>.</p><p>What? Huh? Managed hosting removes essentially 99% of the work it takes to get a site up and going. It keeps your software up to date, provides much tighter security, backs up your database (where all your posts and options are saved) and typically has many other excellent features. Managed hosting is best for people who DO NOT want to fiddle with their server. It is also great for newbies who want to learn WordPress and may someday handle their own server, but aren&#8217;t presently capable of doing so. Is it more expensive than traditional shared servers? Yes. Is it about ten thousand times better? Yes.</p><h2>A couple of tutorials, as promised!</h2><p>Unless you don&#8217;t work on the internet, are a luddite or are in a coma you have definitely heard of the Google +1 button. DIYthemes has made putting the <a
title="How to add Google +1 to your website" href="http://diythemes.com/thesis/rtfm/add-google-plus-1-share-button/">Google +1 code</a> on your site is easy as pie. I highly recommend that tutorial.</p><p>I don&#8217;t personally use Fascistbook…oops I mean Facebook, but if you do and want other Facebook users to be able to recommend your site, I suggest you check out the DIYthemes tutorial on <a
title="How to add a facebook share button" href="http://diythemes.com/thesis/rtfm/facebook-share-button/">adding a facebook share button</a>.</p><h2>A quick final note</h2><p>I know that it is a little cheap to post and not write an actual tutorial (though you can&#8217;t be mad, I still hooked it up). I do intend to release a few freebie plugins fairly soon, so watch out for those. If you really want to help me move along with them, check out my <a
title="Mattonomics on GitHub" href="https://github.com/mattonomics">github page</a> and ask to participate. Also, be sure to visit <a
title="Mattonomics on Twitter" href="http://twitter.com/mattonomics">@mattonomics</a> (me) on Twitter. If you are truly a glutton for randomness and weird stuff, you can always visit <a
title="Mattonomics" href="http://mattonomics.com">Mattonomics.com</a>.</p> ]]></content:encoded> <wfw:commentRss>http://thesistutor.com/update-info-recommended-tutorials/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>How to Exclude Posts with a Certain Tag in Thesis</title><link>http://thesistutor.com/how-to-exclude-posts-with-a-certain-tag-in-thesis/</link> <comments>http://thesistutor.com/how-to-exclude-posts-with-a-certain-tag-in-thesis/#comments</comments> <pubDate>Mon, 28 Jun 2010 13:00:46 +0000</pubDate> <dc:creator>Matt</dc:creator> <category><![CDATA[Content]]></category><guid
isPermaLink="false">http://thesistutor.com/?p=1047</guid> <description><![CDATA[Many of you have found the post on excluding categories from you blog very helpful. However, what happens when you want to exclude posts with a certain tag from appearing on the blog? Well, thankfully that is an extremely simple operation. The first thing you have to do is figure what the tag id is. [...]]]></description> <content:encoded><![CDATA[<p></p><p>Many of you have found the <a
href="http://thesistutor.com/how-to-exclude-posts-of-a-certain-category-in-thesis/">post on excluding categories</a> from you blog very helpful. However, what happens when you want to exclude posts with a <em>certain tag</em> from appearing on the blog? Well, thankfully that is an extremely simple operation.</p><p>The first thing you have to do is figure what the <em>tag id</em> is. Simply go to Posts->Post Tags and hover over the name of the tag. Look at the bottom of the browser window (in the status bar) and look at the number on the end.</p><p><img
src="http://thesistutor.com/wp-content/uploads/2010/06/id-location.jpg" alt="ID location" /></p><p>If you are confused, <a
href="http://thesistutor.com/how-to-exclude-posts-of-a-certain-category-in-thesis/">watch this video</a>.</p><p>Next, open up <code>custom_functions.php</code> and enter the following (yes, that is two underscores between tag__not ):</p><pre>
function exclude_tag($query) {
if ( $query->is_home) {
	$query-> set('tag__not_in',array(<strong>ID</strong>));
	}
return $query;
}
add_filter('pre_get_posts','exclude_tag');
</pre><p>Where I have <code>ID</code>, you should have the number for the tag you want to exclude. For instance, <code>24</code> or <code>1</code>. It is very important that you do not put apostrophes around the number. Also, if you want more than one tag, you would do the following:</p><pre>
function exclude_tag($query) {
if ( $query->is_home) {
	$query-> set('tag__not_in',array(<strong>ID, ID, ID, ID</strong>));
	}
return $query;
}
add_filter('pre_get_posts','exclude_tag');
</pre><p>That is pretty much all there is to it!</p><p>Remember, if you don&#8217;t have the <a
href="http://thesistutor.com/diythemes">Thesis Developer&#8217;s License</a>, you are really missing out!</p> ]]></content:encoded> <wfw:commentRss>http://thesistutor.com/how-to-exclude-posts-with-a-certain-tag-in-thesis/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>Add WordPress 3 Custom Background to Thesis</title><link>http://thesistutor.com/add-wordpress-3-custom-background-to-thesis/</link> <comments>http://thesistutor.com/add-wordpress-3-custom-background-to-thesis/#comments</comments> <pubDate>Fri, 25 Jun 2010 13:30:36 +0000</pubDate> <dc:creator>Matt</dc:creator> <category><![CDATA[Background]]></category><guid
isPermaLink="false">http://thesistutor.com/?p=1064</guid> <description><![CDATA[Did you know that Thesis has supported adding custom background colors (but not images) to the &#60;body&#62; for a few versions now? Well, it has WordPress has decided to catch up and add in a CSS background generator. Basically, WordPress adds &#60;style&#62; body { background: blah blah; } &#60;/style&#62; to your &#60;head&#62;. Remember, this is [...]]]></description> <content:encoded><![CDATA[<p></p><p>Did you know that <a
href="http://thesistutor.com/diythemes">Thesis</a> has supported adding custom background colors (but not images) to the <code>&lt;body&gt;</code> for a few versions now? Well, it has <img
src='http://thesistutor.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> WordPress has decided to catch up and add in a CSS background generator. Basically, WordPress adds <code>&lt;style&gt; body { background: blah blah; } &lt;/style&gt;</code> to your <code>&lt;head&gt;</code>.</p><p>Remember, this is <em>completely unnecessary</em> if you just want a background color. <a
href="http://thesistutor.com/diythemes">Thesis</a> already provides this functionality. This tutorial is aimed towards the very lazy user [ahem...] who wants to put a background image on their <code>&lt;body&gt;</code>.</p><p>Here&#8217;s what you do: open <code>custom_functions.php</code> and enter the following:</p><pre>
add_custom_background();
</pre><p>Embarrassingly simple <img
src='http://thesistutor.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p><p>Get <a
href="http://thesistutor.com/diythemes">Thesis</a> now!</p> ]]></content:encoded> <wfw:commentRss>http://thesistutor.com/add-wordpress-3-custom-background-to-thesis/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>How to Register Multiple WordPress Menu Locations in Thesis</title><link>http://thesistutor.com/how-to-register-multiple-wordpress-menu-locations-in-thesis/</link> <comments>http://thesistutor.com/how-to-register-multiple-wordpress-menu-locations-in-thesis/#comments</comments> <pubDate>Thu, 24 Jun 2010 13:00:11 +0000</pubDate> <dc:creator>Matt</dc:creator> <category><![CDATA[Nav Menu]]></category><guid
isPermaLink="false">http://thesistutor.com/?p=1036</guid> <description><![CDATA[Before you can start this tutorial, you&#8217;ll need to follow the tutorial on how to add the WordPress 3 menu to Thesis. Once you finish that tutorial, you will have the following in your custom_functions.php: add_action('init','register_menu'); remove_action('thesis_hook_before_header','thesis_nav_menu'); add_action('thesis_hook_before_header','wordpress_menu_support'); function register_menu() { register_nav_menus( array( 'primary'=>'Primary Menu' )); } function wordpress_menu_support() { if (function_exists('wp_nav_menu')) wp_nav_menu('theme_location=primary&#038;fallback_cb=thesis_nav_menu'); else thesis_nav_menu(); [...]]]></description> <content:encoded><![CDATA[<p></p><p>Before you can start this tutorial, you&#8217;ll need to follow the tutorial on <a
href="http://thesistutor.com/how-to-add-wordpress-3-menu-to-thesis/">how to add the WordPress 3 menu to Thesis</a>.</p><p>Once you finish that tutorial, you will have the following in your <code>custom_functions.php</code>:</p><pre>
add_action('init','register_menu');
remove_action('thesis_hook_before_header','thesis_nav_menu');
add_action('thesis_hook_before_header','wordpress_menu_support');

function register_menu() {
register_nav_menus(
    array(
        'primary'=>'Primary Menu'
    ));
}

function wordpress_menu_support() {
if (function_exists('wp_nav_menu'))
	wp_nav_menu('theme_location=primary&#038;fallback_cb=thesis_nav_menu');
else
	thesis_nav_menu();
}
</pre><p>Now we need to do two things:</p><ol><li>Register the menu area.</li><li>Hook the menu area into place. In this example I&#8217;ll be putting a menu above the footer.</li></ol><p>To accomplish this, we will add the following to our code from above:</p><pre>
add_action('init','register_menu');
remove_action('thesis_hook_before_header','thesis_nav_menu');
add_action('thesis_hook_before_header','wordpress_menu_support');
<strong>add_action('thesis_hook_before_footer','footer_menu');</strong>

function register_menu() {
register_nav_menus(
    array(
        'primary'=>'Primary Menu'<strong>,
        'footer'=>'Footer Menu'</strong>
    ));
}

<strong>function footer_menu() {
wp_nav_menu('theme_location=footer');
}</strong>

function wordpress_menu_support() {
if (function_exists('wp_nav_menu'))
	wp_nav_menu('theme_location=primary&#038;fallback_cb=thesis_nav_menu');
else
	thesis_nav_menu();
}
</pre><p>For the register part, I simply added a comma then <code>'footer'=>'Footer Menu'</code>. The first part, <code>'footer'</code> is the menu slug. The second part, <code>'Footer Menu'</code> is what will be displayed in the WordPress admin. So, if you were going to add a menu above the content, you may do something like this <code>'content-menu'=>'Content Menu'</code>.</p><p>The second thing I did was add a function that contains my menu.</p><pre>function footer_menu() {
wp_nav_menu('theme_location=footer');
}</pre><p>If I wanted to add the menu above the content, I would do something like this:</p><pre>
function content_menu() {
wp_nav_menu('theme_location=content-menu');
}
</pre><p>Lastly, I hooked my function into place with</p><pre>add_action('thesis_hook_before_footer','footer_menu');</pre><p> If I were putting a menu area above the content, I may do something like this:<pre>add_action('thesis_hook_before_content','content_menu');</pre>]]></content:encoded> <wfw:commentRss>http://thesistutor.com/how-to-register-multiple-wordpress-menu-locations-in-thesis/feed/</wfw:commentRss> <slash:comments>7</slash:comments> </item> <item><title>How To Add WordPress 3.0 Menu To Thesis</title><link>http://thesistutor.com/how-to-add-wordpress-3-menu-to-thesis/</link> <comments>http://thesistutor.com/how-to-add-wordpress-3-menu-to-thesis/#comments</comments> <pubDate>Tue, 22 Jun 2010 20:25:55 +0000</pubDate> <dc:creator>Matt</dc:creator> <category><![CDATA[Nav Menu]]></category><guid
isPermaLink="false">http://thesistutor.com/?p=1023</guid> <description><![CDATA[I have seen a few ways to add WordPress 3.0 menu support to Thesis and they do &#8220;work&#8221;, but they really aren&#8217;t optimal. So, I have written a fix for this issue until Thesis can get updated. First, let&#8217;s identify exactly what we need to get accomplished. This tutorial will only cover replacing the current [...]]]></description> <content:encoded><![CDATA[<p></p><p><span
class="drop_cap">I</span> have seen a few ways to add WordPress 3.0 menu support to <a
href="http://thesistutor.com/diythemes">Thesis</a> and they do &#8220;work&#8221;, but they really aren&#8217;t optimal. So, I have written a fix for this issue until <a
href="http://thesistutor.com/diythemes\">Thesis</a> can get updated.</p><p>First, let&#8217;s identify exactly what we need to get accomplished. This tutorial will only cover replacing the current navigation menu, called by the function <code>thesis_nav_menu();</code>, if and only if a replacement has been assigned by the WordPress functionality. It is important to remember that you lose some, but not all, of the CSS native to the Thesis navigation.</p><p>Let&#8217;s get started by opening <code>custom_functions.php</code> and entering the following function:</p><pre>function register_menu() {
register_nav_menus(
    array(
        'primary'=> 'Primary Menu'
    ));
}</pre><p>Basically, this allows us to register the area where we want a navigation bar to appear. Since we are using an array, this will allow us to go back at any point and register another area.</p><p>Next, we need set up the following 3 scenarios:</p><ol><li>No WordPress menu is detected, so the Thesis menu is shown.</li><li>At least one WordPress menu exists, but none are selected for the nav bar, so the Thesis navigation is shown.</li><li>At least one WordPress menu exists and one is selected for the area.</li></ol><p>It is important to remember that this next function must be repeated to register other areas. Unlike <code>register_nav_menus();</code>, each area where you want a navigation bar to appear must have its own code to register. For the primary navigation, we will use the following code:</p><pre>
function wordpress_menu_support() {
if (function_exists('wp_nav_menu'))
	wp_nav_menu('theme_location=primary&#038;fallback_cb=thesis_nav_menu');
else
	thesis_nav_menu();
}
</pre><p>Now, let&#8217;s register the menus and areas and take the default <a
href="http://thesistutor.com/diythemes">Thesis</a> nav menu out.</p><pre>
add_action( 'init' , 'register_menu' );
remove_action('thesis_hook_before_header','thesis_nav_menu');
add_action('thesis_hook_before_header','wordpress_menu_support');
</pre><p>Now, Let me show you what all the code looks like together:</p><pre>
add_action('init','register_menu');
remove_action('thesis_hook_before_header','thesis_nav_menu');
add_action('thesis_hook_before_header','wordpress_menu_support');

function register_menu() {
register_nav_menus(
    array(
        'primary'=>'Primary Menu'
    ));
}

function wordpress_menu_support() {
if (function_exists('wp_nav_menu'))
	wp_nav_menu('theme_location=primary&#038;fallback_cb=thesis_nav_menu');
else
	thesis_nav_menu();
}
</pre><p>Remember that the WordPress menu system is not as clean and robust as <a
href="http://thesistutor.com/diythemes">Thesis</a>, so you will have to make some CSS changes. Some of the things that the WordPress menu does not contain are the home, current and current-parent classes. Why? Because <a
href="http://thesistutor.com/diythemes">Thesis</a>&#8216; nav menu has a specific purpose and the WordPress menu system is for generic menu creation.</p> ]]></content:encoded> <wfw:commentRss>http://thesistutor.com/how-to-add-wordpress-3-menu-to-thesis/feed/</wfw:commentRss> <slash:comments>18</slash:comments> </item> <item><title>How To Add A Filter To The Homepage H1</title><link>http://thesistutor.com/how-to-add-a-filter-to-the-homepage-h1/</link> <comments>http://thesistutor.com/how-to-add-a-filter-to-the-homepage-h1/#comments</comments> <pubDate>Thu, 22 Apr 2010 05:18:53 +0000</pubDate> <dc:creator>Matt</dc:creator> <category><![CDATA[Header]]></category><guid
isPermaLink="false">http://thesistutor.com/?p=1002</guid> <description><![CDATA[In a recent job I was doing, I needed to change the &#60;h1&#62; tag on the homepage of my client&#8217;s site. In Thesis, the homepage &#60;h1&#62; is set as the tagline, and I not only needed to change that, but have a simple solution for all my sites from here on out. My setup was [...]]]></description> <content:encoded><![CDATA[<p></p><p><span
class="drop_cap">I</span>n a recent job I was doing, I needed to change the <code>&lt;h1&gt;</code> tag on the homepage of my client&#8217;s site. In <a
href="http://thesistutor.com/diythemes">Thesis</a>, the homepage <code>&lt;h1&gt;</code> is set as the tagline, and I not only needed to change that, but have a simple solution for all my sites from here on out.</p><p>My setup was as follows: I had a static homepage that I had done a bunch of custom work on.</p><h2>Editing Core Files</h2><p>Go to the <code>thesis_1x</code> folder. Click on <code>lib</code> then <code>functions</code>, then open <code>document.php</code>.</p><ul><li>Go to line 95, which says the following:<pre>
echo "\t\t&lt;h1 id=\"tagline\"&gt;" . <span class="red">get_bloginfo('description')</span> . "&lt;/h1&gt;\n";
else
echo "\t\t&lt;p id=\"tagline\"&gt;" . <span class="red">get_bloginfo('description')</span> . "&lt;/p&gt;\n";
</pre></li><li>Replace lines 95-97 with this:<pre>
echo "\t\t&lt;h1 id=\"tagline\"&gt;" . <span class="green">apply_filters('homepage_h1', get_bloginfo('description'))</span> . "&lt;/h1&gt;\n";
else
echo "\t\t&lt;p id=\"tagline\"&gt;" . <span class="green">apply_filters('homepage_h1', get_bloginfo('description'))</span> . "&lt;/p&gt;\n";
</pre></li></ul><h2>Using the H1 Filter</h2><p>To make use of this new filter, simply add the following to <code>custom_functions.php</code>:</p><pre>
function h1_replace() {
return "<em>New H1 Text Goes Here</em>";
}
add_filter('homepage_h1','h1_replace');
</pre><p>Be sure to change the text to what you want the new H1 to be.</p><p><a
href="http://thesistutor.com/diythemes">Thesis</a> is just that easy! <img
src='http://thesistutor.com/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /></p> ]]></content:encoded> <wfw:commentRss>http://thesistutor.com/how-to-add-a-filter-to-the-homepage-h1/feed/</wfw:commentRss> <slash:comments>13</slash:comments> </item> <item><title>How To Make A Rotating Header Image In Thesis</title><link>http://thesistutor.com/how-to-make-a-rotating-header-image-in-thesis/</link> <comments>http://thesistutor.com/how-to-make-a-rotating-header-image-in-thesis/#comments</comments> <pubDate>Fri, 05 Mar 2010 23:36:46 +0000</pubDate> <dc:creator>Matt</dc:creator> <category><![CDATA[Header]]></category><guid
isPermaLink="false">http://thesistutor.com/?p=942</guid> <description><![CDATA[When Chris Pearson, the creator of Thesis, recently redesigned Pearsonified.com on Thesis, he did something amazingly cool: he put rotating images in his header area. Well, I was so inspired by his design that I wanted to figure out how he did it. It turns out that putting rotating images in your header is extremely [...]]]></description> <content:encoded><![CDATA[<p></p><p><embed
src="http://blip.tv/play/AYHK%2BSQA" type="application/x-shockwave-flash" width="720" height="480" allowscriptaccess="always" allowfullscreen="true"></embed></p><p>When Chris Pearson, the creator of <a
href="http://thesistutor.com/diythemes">Thesis</a>, recently redesigned <a
href="http://pearsonified.com">Pearsonified.com</a> on Thesis, he did something amazingly cool: he put rotating images in his header area.</p><p>Well, I was so inspired by his design that I wanted to figure out how he did it. It turns out that putting rotating images in your header is extremely easy.</p><h2>On the backside.</h2><p>Well, let&#8217;s get started. From the WordPress Dashboard, go to Thesis Options -> Design Options -> Feature Box.</p><p>In this tutorial, I am setting the Feature Box to &#8220;Full Width Above Content And Sidebars.&#8221; It is completely up to you whether you chose to show the rotator on every page or just the home page.</p><h2>The Code</h2><p>Let&#8217;s start with the Custom.CSS. I just want to warn you right now: <strong>THIS IS SUPER EASY!</strong></p><p>Copy and paste the following into your Custom.CSS:</p><pre>
.custom #feature_box { padding: 0; border: none; }
	.custom #feature_box img { display: block; }
</pre><p>Wow! That&#8217;s it, folks. Ok, now let&#8217;s knock out the Custom_Functions.PHP part of this. Again, don&#8217;t be shocked when you see how <em>unbelievably simple</em> this is.</p><pre>
function header_rotator() {
echo thesis_image_rotator();
}
add_action('thesis_hook_feature_box','header_rotator');
</pre><p>Seriously, that is all. Unreal how simple that is, isn&#8217;t it?</p><p><a
href="http://thesistutor.com/developer" class="callout">Purchase or Upgrade to the <strong>Thesis Developer&#8217;s Option</strong> Today!</a></p><h2 id="anchor-tag">Add an Anchor Tag</h2><p>Let&#8217;s say that you want to add an anchor tag, <code>&lt;a&gt;</code>, around the rotating image. Simply put this in your <code>custom_functions.php</code> file <em>instead</em> of what&#8217;s above:</p><pre>
function header_rotator() {
?&gt;&lt;a href="http://addressgoeshere.com"&gt;&lt;?php
echo thesis_image_rotator();
?&gt;&lt;/a&gt;&lt;?php
}
add_action('thesis_hook_feature_box','header_rotator');
</pre><p>Just add the address you want to link to, and call it a day <img
src='http://thesistutor.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p><h2>What about the images?</h2><p>To get the images to line up perfectly you need to know the width of your site. If you use the <a
href="http://getfirebug.com/">Firebug</a> plugin for <a
href="http://mozilla.com">Firefox</a> or <a
href="http://www.google.com/chrome">Google Chrome</a>, you&#8217;ll have no problem finding out the width. Just remember that if you have page padding (as in the &lt;div class=&#8221;page&#8221;&gt;), you need to exclude that from the width calculation.</p><p>Also, I recommend making the images the same height so that the layout doesn&#8217;t shift on refreshes.</p><p>Oh, yeah. Don&#8217;t forget to <a
href="http://thesistutor.com/developer"><strong>Upgrade to the Developer Option</strong></a>! You will never regret it!</p> ]]></content:encoded> <wfw:commentRss>http://thesistutor.com/how-to-make-a-rotating-header-image-in-thesis/feed/</wfw:commentRss> <slash:comments>50</slash:comments> </item> <item><title>Mindlessly Simple Web Hosting</title><link>http://thesistutor.com/mindlessly-simple-web-hosting/</link> <comments>http://thesistutor.com/mindlessly-simple-web-hosting/#comments</comments> <pubDate>Mon, 01 Mar 2010 20:26:11 +0000</pubDate> <dc:creator>Matt</dc:creator> <category><![CDATA[Thesis Development]]></category><guid
isPermaLink="false">http://thesistutor.com/?p=906</guid> <description><![CDATA[Web hosting confused the hell out of me when I first started working on the web. What is hosting? What kinds of options did I have? What&#8217;s the deal with their advertised prices? What service does Thesis Tutor recommend? These are questions that I am going to stamp out once and for all. With this [...]]]></description> <content:encoded><![CDATA[<p></p><p>Web hosting confused the hell out of me when I first started working on the web. What is hosting? What kinds of options did I have? What&#8217;s the deal with <em>their advertised prices</em>? What service does Thesis Tutor recommend? These are questions that I am going to stamp out once and for all. With this post, I bestow unto you the knowledge of website hosting.</p><h2>What is Web Hosting?</h2><p>Web hosting is a simple concept: it is a virtual storage unit. That&#8217;s it. No mystery, no surprises. It stores and holds your website content, pictures, videos, comments [ahem], etc on a server. The only difference between web hosting and real storage units is that much of the contents of your server are available for public viewing.</p><p>Now, when I first started, I wanted to know why I couldn&#8217;t just host a website at my home computer. I thought I had a good internet connection and enough storage. So why not?</p><p>The first problem is your <a
href="http://en.wikipedia.org/wiki/Internet_service_provider">ISP</a>. They simply cannot allow residential customers to use the amount of bandwidth required by website hosting. More simply, it&#8217;s just too slow.</p><p>Second is security. Chances are, if you are reading this you don&#8217;t know jack about security. I bet simple PHP encoding would totally stump you. Don&#8217;t worry though, you are not alone.</p><p>Third is management. Servers require constant attention. There are always patches and upgrades and this-es and thats. You don&#8217;t have time to fool with that junk, trust me.</p><p><a
href="http://thesistutor.com/hosting" class="callout">Head over to <strong>MidPhase</strong> and pick up hosting. Or, read on!</a></p><h2>Hosting Options</h2><p>There are essentially <em>three primary hosting options</em>:</p><ol><li><h4>Shared Hosting:</h4><p>Shared hosting is exactly what it says: you share a server with multiple other users. This is the simplest form of hosting and is absolutely the cheapest route.</p><p>There are certainly some drawbacks, however. If one of the sites you share resources with suddenly gets a million visitors, <em>your site</em> will slow to a crawl. Also, advanced modifications to ports are hard/impossible to make. But, if you&#8217;re a newbie, you won&#8217;t be doing that anyway <img
src='http://thesistutor.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></li><li><h4>VPS: Virtual Private Server</h4><p>VPS is the obvious way of the future. Basically, VPS divides a server into distinct sections that act as their own server. It is many sub-servers within a server.</p><p>Lemme break it down for ya:</p><p>Imagine an apartment building where everyone shared the same air conditioning unit. This would be like shared hosting. One greedy neighbor decides to turn his house into an icebox and sets his thermostat to 33°F. Suddenly, everyone else in the building is having problems because greedy, creepy icebox guy is overloading the A/C. Such is the failure of shared hosting.</p><p>Now, imagine the same apartment building. Instead of one huge A/C unit, each apartment has it&#8217;s own. Suddenly, creepy ice man&#8217;s insane usage has little to no effect on your comfort. You win. heh.</p><p>The one drawback with VPS configurations is that they require a slightly higher level of technical knowledge. So, if you are completely ignorant, this may not be for you.</li><li><h4>Dedicated and Managed Hosting</h4><p>Quite simply, dedicated hosting is your own server that you manage yourself. Managed hosting is your own server that the hosting company manages for you. Both options are considerably more expensive that either shared or VPS and should only be used by people who have fairly hefty traffic and a relatively high level of expertise.</li></ol><h2>Pricing</h2><p>What if I told you that you could have a brand new, 52 inch Samsung LCD Series 6 HDTV for only $55 per month?! Yeah, you totally can. Except for instead of $55 per month you pay me $2000 right now!</p><p><strong>Wtf kind of logic is that?</strong></p><p>This is exactly how hosting companies advertise.</p><p>I&#8217;m tired of that junk advertising method so I&#8217;m going to lay it out straight.</p><p>Here are the rates for <a
href="http://thesistutor.com/hosting">MidPhase</a> shared hosting and <a
href="http://thesistutor.com/vps">VPS.net</a> vps services, the companies (both owned by UK2) I exclusively love. I&#8217;ll tell you more about why I have a monogamous hosting relationship after I tell you the prices.</p><p>For a full list of all the features for each class, <a
href="http://www.midphase.com/website-hosting/">click here.</a></p><h2>Shared Hosting Prices</h2><ul><li><h4>Basic Plan &#8211; for ONE website.</h4><ul><li>24 Months &#8211; $70.80</li><li>12 Months &#8211; $71.40</li><li>3 Months &#8211; $26.85 + $49.00 Set Up Fee</li></ul></li><li><h4>Unlimited Plan &#8211; Unlimited Sites and Databases</h4><ul><li>24 Months &#8211; $166.80</li><li>12 Months &#8211; $107.40</li><li>3 Months &#8211; $10.95 + $49.00 Set Up Fee</li></ul><li><h4>Business Plan &#8211; Dedicated Secure Certificate &#038; Static Ip [among many]</h4><ul><li>24 Months &#8211; $214.80</li><li>12 Months &#8211; $143.40</li><li>3 Months &#8211; $38.85 + $49.00 Set Up Fee</li></ul></ul><p><a
href="http://thesistutor.com/hosting" class="callout">Dude! Get over to <strong>MidPhase</strong> and pick up hosting. You&#8217;ll love it!</a></p><h2>VPS Hosting Prices</h2><p>VPS pricing is based on &#8216;nodes&#8217; which are basically resource measures. The more resources you want, the more it costs. For small sites the nodes start at <strong>$20/month</strong>. For extremely large sites, prices will hit $234/month. And yes, they really charge by the month!</p><p>Most regular old sites will only need one or two nodes. But wait! What happens if you suddenly start getting massive traffic one day? Easy answer: pay for one day&#8217;s worth of extra space. Done.</p><p><em>Say what?</em></p><p>VPS allows for one day expansion nodes. You can add one node for $1/day or 18 for $18/day. Done, done and done.</p><h2>Why I use MidPhase and am Switching to VPS.net</h2><p>Right now, I run a shared server on the unlimited plan. Why? Honestly, I just haven&#8217;t gotten around to switching to VPS&#8217; cloud hosted servers. I should, but I have sites to build and content to make <img
src='http://thesistutor.com/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' /> By the end of the year I hope to have it all switched over, however.</p><p>But, why do <strong>I</strong> like MidPhase?</p><p>There are two reasons, really. The first is that they are just easy to use. When you sign up you get all the information within seconds and you can start adding domains and databases right away. I love that.</p><p>Second, they have great customer support. You can always chat with a live rep or call them if you are feeling particularly frisky. Every hosting problem I have had [even ones only kind of related to hosting like an .htaccess question I had] have been answered by their customer support. Once, in my early days, I was too stupid to go into my server and make a change in WordPress. The MidPhase customer support <em>did it for me</em>.</p><p>Am I saying MidPhase will totally hold you hand and wipe your tush? No. But they are friendly as hell and willing to help. What is that worth to you? To me it is worth <em>infinity dollars</em>. No, seriously!</p><p>I hope that this little article will help you find the right hosting to fit your needs. Good luck!</p><p><a
href="http://thesistutor.com/hosting" class="callout">You know it ALL now! Secure your hosting <strong>today</strong>!</a></p> ]]></content:encoded> <wfw:commentRss>http://thesistutor.com/mindlessly-simple-web-hosting/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>The Comprehensive List of Thesis Hooks and Thesis Filters</title><link>http://thesistutor.com/comprehensive-list-of-thesis-hooks-and-thesis-filters/</link> <comments>http://thesistutor.com/comprehensive-list-of-thesis-hooks-and-thesis-filters/#comments</comments> <pubDate>Mon, 01 Mar 2010 15:35:11 +0000</pubDate> <dc:creator>Matt</dc:creator> <category><![CDATA[Thesis Development]]></category><guid
isPermaLink="false">http://thesistutor.com/?p=859</guid> <description><![CDATA[When it comes to being a Thesis developer, there is one thing I have been unable to live without: Thesis Hooks. Good ol&#8217; Chris Pearson has hooked us devs up with&#8230;well, a ton of hooks. The Thesis hooks list below tells you all 54 hooks in the order they appear in hooks.php. Before the list [...]]]></description> <content:encoded><![CDATA[<p></p><p>When it comes to being a <a
href="http://thesistutor.com/diythemes"><em>Thesis</em></a> developer, there is one thing I have been unable to live without: <strong>Thesis Hooks</strong>. Good ol&#8217; <a
href="http://www.pearsonified.com">Chris Pearson</a> has hooked us devs up with&#8230;well, a ton of hooks. The <em><a
href="http://thesistutor.com/diythemes">Thesis</a> hooks list</em> below tells you all 54 hooks in the order they appear in <code>hooks.php</code>. Before the list of hooks is the filters list with the corresponding file name.</p><h2 >Thesis Filters List</h2><ol><li><h4><strong>Comments.PHP</strong></h4><ul><li><code>thesis_comments_link</code></li><li><code>thesis_comments_intro</code></li><li><code>thesis_avatar</code></li><li><code>thesis_comments_navigation</code></li></ul></li><li><h4><strong>Compatibility.PHP</strong></h4><ul><li><code>thesis_custom_field_keys</code></li></ul></li><li><h4><strong>Content.PHP</strong></h4><ul><li><code>thesis_content_classes</code></li><li><code>thesis_image_caption_shortcode</code></li></ul></li><li><h4><strong>Document.PHP</strong></h4><ul><li><code>thesis_body_classes</code></li></ul></li><li><h4><strong>Widgets.PHP</strong></h4><ul><li><code>thesis_search_form_value</code></li></ul></li></ol><h2>Thesis Hooks List</h2><ol
class="hook-list"><li><code>thesis_hook_before_html</code> &#8211; right after body.custom</li><li><code>thesis_hook_after_html</code> &#8211; after #container and before /body</li><li><code>thesis_hook_before_header</code> &#8211; between .menu and #header</li><li><code>thesis_hook_after_header</code> &#8211; between #header and #content_box, before thesis_hook_before_content_box</li><li><code>thesis_hook_header</code> &#8211; within #header, after #tagline, after thesis_hook_after_title</li><li><code>thesis_hook_before_title</code> &#8211; within #header before #logo</li><li><code>thesis_hook_after_title</code> &#8211; within #header, after #tagline, before thesis_hook_header</li><li><code>thesis_hook_first_nav_item</code> &#8211; right after .menu, before the first li</li><li><code>thesis_hook_last_nav_item</code> &#8211; within .menu, right after last li</li><li><code>thesis_hook_before_content_box</code> &#8211; between #header and #content_box, after thesis_hook_after_header</li><li><code>thesis_hook_after_content_box</code> &#8211; between #content_box and #footer</li><li><code>thesis_hook_content_box_top</code> &#8211;</li><li><code>thesis_hook_content_box_bottom</code> &#8211;</li><li><code>thesis_hook_before_content</code> &#8211; right after #content</li><li><code>thesis_hook_after_content</code> &#8211; at the end of #content, after .prev_next</li><li><code>thesis_hook_before_content_area</code> &#8211; before #content_area, only in full width framework</li><li><code>thesis_hook_after_content_area</code> &#8211; after #content_area, only in full width framework</li><li><code>thesis_hook_feature_box</code> &#8211; within #feature_box, either the first item within #content, between #header and #content_box, or between .menu and #header</li><li><code>thesis_hook_before_post_box</code> &#8211; after #content, before first post</li><li><code>thesis_hook_after_post_box</code> &#8211; within each .post, at the very end</li><li><code>thesis_hook_before_teasers_box</code> &#8211; within and at the beginning of .teasers_box</li><li><code>thesis_hook_after_teasers_box</code> &#8211; after each .teasers_box div</li><li><code>thesis_hook_before_post</code> &#8211; within and at the very beginning of .format_text</li><li><code>thesis_hook_after_post</code> &#8211; at the end of .format_text, after .to_comments</li><li><code>thesis_hook_before_teaser_box</code> &#8211; before each .teaser</li><li><code>thesis_hook_after_teaser_box</code> &#8211; after each .teaser [this one is a little tricky]</li><li><code>thesis_hook_before_teaser</code> &#8211; first thing within .format_teaser</li><li><code>thesis_hook_after_teaser</code> &#8211; last thing within .format_teaser</li><li><code>thesis_hook_before_headline</code> &#8211; first thing within headline_area</li><li><code>thesis_hook_after_headline</code> &#8211; right after .entry-title</li><li><code>thesis_hook_before_teaser_headline</code> &#8211; before each .teaser&#8217;s .entry-title</li><li><code>thesis_hook_after_teaser_headline</code> &#8211; right below each .teaser&#8217;s .entry-title</li><li><code>thesis_hook_byline_item</code> &#8211; right after .headline_meta</li><li><code>thesis_hook_before_comment_meta</code> &#8211; first thing within each dt.comment</li><li><code>thesis_hook_after_comment_meta</code> &#8211; last thing within each dt.comment</li><li><code>thesis_hook_after_comment</code> &#8211; last thing within each dd.comment .comment-body-n</li><li><code>thesis_hook_after_comments</code> &#8211; right after dl#comment_list</li><li><code>thesis_hook_comment_form_top</code> &#8211;</li><li><code>thesis_hook_comment_field</code> &#8211; right after #comment_form p</li><li><code>thesis_hook_after_comment_box</code> &#8211;</li><li><code>thesis_hook_comment_form_bottom</code> &#8211;</li><li><code>thesis_hook_comment_form</code> &#8211; right after .comment_box, before the submit button</li><li><code>thesis_hook_archives_template</code> &#8211; Used to customize the appearance of the Archives Template (archives.php). This hook calls the thesis_archives_template function by default. //from <a
href="http://thesistutor.com/diythemes/hooks">DIYthemes</a></li><li><code>thesis_hook_custom_template</code> &#8211; your very own custom page custom template replacing #content_box</li><li><code>thesis_hook_faux_admin</code> &#8211; within div#content_box (and also div#column_wrap if a sidebars-first three-column layout is in use) //from <a
href="http://thesistutor.com/diythemes/hooks">DIYthemes</a></li><li><code>thesis_hook_archive_info</code> &#8211; Above the first post only on archive views. //from <a
href="http://thesistutor.com/diythemes/hooks">DIYthemes</a></li><li><code>thesis_hook_404_title</code> &#8211; within a 404 page&#8217;s .headline_meta h1</li><li><code>thesis_hook_404_content</code> &#8211; last thing within a 404 page&#8217;s .format_text</li><li><code>thesis_hook_before_sidebars</code> &#8211; first thing within #sidebars</li><li><code>thesis_hook_after_sidebars</code> &#8211; last thing within #sidebars</li><li><code>thesis_hook_multimedia_box</code> &#8211; contents of #multimedia_box #custom_box</li><li><code>thesis_hook_after_multimedia_box</code> &#8211; after #multimedia_box, before #sidebar_1 and/or #sidebar_2</li><li><code>thesis_hook_before_sidebar_1</code> &#8211; first thing within #sidebar_1 .sidebar_list, before the first li</li><li><code>thesis_hook_after_sidebar_1</code> &#8211; last thing within #sidebar_1 .sidebar_list, after the last li</li><li><code>thesis_hook_before_sidebar_2</code> &#8211; first thing within #sidebar_2 .sidebar_list, before the first li</li><li><code>thesis_hook_after_sidebar_2</code> &#8211; last thing within #sidebar_2 .sidebar_list, after the last li</li><li><code>thesis_hook_before_footer</code> &#8211; right before #footer and after #content_box</li><li><code>thesis_hook_after_footer</code> &#8211; after #footer, but still within #page</li><li><code>thesis_hook_footer</code> &#8211; between attribution link and WP Admin link in #footer</li></ol><p>Well, there you have it folks. A list of every single <a
href="http://thesistutor.com/diythemes">Thesis</a> Hook available as of Thesis 1.6.</p><p>If you are interested in developing sites on <em>Thesis</em>, be sure to <a
href="http://thesistutor.com/diythemes/developer" id="link_breakdown">upgrade to the developer&#8217;s option.</a> If you don&#8217;t have <em>Thesis</em>, you had better <a
href="http://thesistutor.com/diythemes/plans">pick it up now!</a></p> ]]></content:encoded> <wfw:commentRss>http://thesistutor.com/comprehensive-list-of-thesis-hooks-and-thesis-filters/feed/</wfw:commentRss> <slash:comments>8</slash:comments> </item> <item><title>How To Make a jQuery Image Slideshow in Thesis</title><link>http://thesistutor.com/how-to-make-a-jquery-image-slideshow-in-thesis/</link> <comments>http://thesistutor.com/how-to-make-a-jquery-image-slideshow-in-thesis/#comments</comments> <pubDate>Mon, 15 Feb 2010 18:16:27 +0000</pubDate> <dc:creator>Matt</dc:creator> <category><![CDATA[Content]]></category><guid
isPermaLink="false">http://thesistutor.com/?p=750</guid> <description><![CDATA[Updated! 03/23/10 Well I can&#8217;t spell apparently. I had misspelled &#8216;slideshow&#8217; in the code below. The issue is fixed and my wife is now administering me weekly spelling tests. Thanks, Scott and Willie. Slideshow Made Simple Making a jQuery image slideshow in Thesis is actually very easy. There are four basic steps: Insert a few [...]]]></description> <content:encoded><![CDATA[<p></p><h2>Updated! 03/23/10</h2><p><span
class="drop_cap">W</span>ell I can&#8217;t spell apparently. I had misspelled &#8216;slideshow&#8217; in the code below. The issue is fixed and my wife is now administering me weekly spelling tests. Thanks, <a
href="http://scottwyden.com/">Scott</a> and <a
href="http://www.williejackson.com">Willie.</a></p><h2>Slideshow Made Simple</h2><p>Making a <a
href="http://jquery.com/">jQuery</a> image slideshow in <a
href="http://www.shareasale.com/r.cfm?b=198392&#038;u=403159&#038;m=24570&#038;urllink=&#038;afftrack="><em>Thesis</em></a> is actually very easy. There are four basic steps:</p><ul><li>Insert a few lines of code into the header.</li><li>Make a slideshow <code>&lt;div id="slideshow"&gt;</code>.</li><li>Put some images into your <code>images</code> folder.</li><li>Write a little <code>custom.css</code> code magic.</li></ul><p>To begin, I want to outline a few assumptions. I am going to assume that you have images of the same size (height and width). Also, although you <em>can</em> put any HTML into a &#8220;slide&#8221; I will only be using images. Lastly, I will be using a default transition effect called &#8220;fade&#8221; and I will not be adjusting all of the variables. In fact, if you read the <a
href="http://malsup.com/jquery/cycle/options.html">Cycle Plugin documentation</a>, you will see that there are about a million tweaks possible.</p><h4>Update 2/18/09</h4><p>For the sake of this tutorial, I am going to assume that you only want the slideshow to appear on your home page. If you want the slideshow on every page simply remove <code>if (is_front_page()){...........}</code>. Also, never be embarrassed to ask me for help! I am <em>the</em> <strong>Thesis Tutor</strong>, after all. <img
src='http://thesistutor.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p><p>Now, onto the juicy parts!</p><p>First, copy and paste the following into your <code>custom_functions.php</code>:</p><pre>
function slideshow() {
if (is_front_page()) {
?>&lt;div class="slideshow">
    &lt;a id="slide1" class="slide" href="http://yourblog.com/link">&lt;/a>
    &lt;a id="slide2" class="slide" href="http://yourblog.com/link2">&lt;/a>
  &lt;/div>
&lt;?php
}}
add_action('thesis_hook_after_header','slideshow');

function slide_script() {
echo "\n\n";
?>
&lt;script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js">&lt;/script>
&lt;script type="text/javascript" src="http://cloud.github.com/downloads/malsup/cycle/jquery.cycle.all.2.72.js">&lt;/script>
&lt;script type="text/javascript">
$(document).ready(function() {
    $('.slideshow').cycle({
	fx: 'fade' //You can change transition effects here.
	});
});
&lt;/script>
&lt;?php
}
add_action('wp_head','slide_script');
</pre><p><em>It is important to note that you can add as many images as you please, just be sure to give them each a unique id so you can target them later in the CSS.</em></p><p>Next, drop the images you want to use in the slideshow in your <code>images</code> folder.</p><p>Last, we need to add some CSS to whip this little slideshow into shape. So, open up your <code>custom.css</code> and paste this little bit of code in there:</p><pre>
.custom .slideshow .slide { display: block; height: ---em; width: ---em; outline: none; }
.custom .slideshow #slide1 { background: url('images/image-1.jpg') no-repeat; }
.custom .slideshow #slide2 { background: url('images/image-2.jpg') no-repeat; }
</pre><p>Be sure to insert your images names and height/width. By default, the <code>font-size</code> is 10px. Therefore, to convert to ems, simply divide pixels by 10. Yes, it is THAT easy.</p><p>That should cover it, folks. Happy coding!</p> ]]></content:encoded> <wfw:commentRss>http://thesistutor.com/how-to-make-a-jquery-image-slideshow-in-thesis/feed/</wfw:commentRss> <slash:comments>141</slash:comments> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk
Page Caching using disk (enhanced) (User agent is rejected)
Database Caching 6/13 queries in 0.006 seconds using disk

Served from: thesistutor.com @ 2012-02-04 18:46:18 -->
