<?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 Danner &#124; Night Photography, WordPress, Community</title>
	<atom:link href="http://mattdanner.net/feed/" rel="self" type="application/rss+xml" />
	<link>http://mattdanner.net</link>
	<description></description>
	<lastBuildDate>Wed, 10 Mar 2010 22:19:37 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Tale of a SXSW Rookie</title>
		<link>http://mattdanner.net/tale-of-a-sxsw-rookie/</link>
		<comments>http://mattdanner.net/tale-of-a-sxsw-rookie/#comments</comments>
		<pubDate>Wed, 10 Mar 2010 22:19:37 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[Community]]></category>

		<guid isPermaLink="false">http://mattdanner.net/?p=1271</guid>
		<description><![CDATA[At the end of this week I will be heading down to Austin, TX with some of the iThemes team to go to SXSW. This is my first time to be there, so I am pretty excited to take in all that SXSW has to offer.
Heading down with me are three other members of the [...]]]></description>
			<content:encoded><![CDATA[<p>At the end of this week I will be heading down to Austin, TX with some of the <a href="http://ithemes.com">iThemes team</a> to go to <a href="http://sxsw.com">SXSW</a>. This is my first time to be there, so I am pretty excited to take in all that SXSW has to offer.</p>
<p>Heading down with me are three other members of the iThemes/WebDesign.com team: <a href="http://corymiller.com">Cory Miller</a>, <a href="http://jamesdalman.com">James Dalman</a>, and <a href="http://adbrad.com">adBrad Ulrich</a>.</p>
<p>I know that there are a million things going on at once during the 5-day Interactive Conference, so I decided to make a list of a few &#8220;must-see&#8221; speakers while I am in Austin.</p>
<ul>
<li><strong>REWORK by 37signals</strong> &#8211; Jason Fried is going to be talking about the new book, and I definitely want to hear about it. Maybe I will even get to meet him for a bit.</li>
<li><strong>CSS3 Design with HTML5</strong> &#8211; We are constantly trying to push and use the latest tools for web design, and I am hoping this session will help me move deeper in to CSS3 especially.</li>
<li><strong>Is WordPress Killing Web Design?</strong> &#8211; I think it is obvious why I want to see this one. It is going to get controversial I am sure. I hope it gets good.</li>
<li><strong>Gmail: Behind the Scenes</strong> &#8211; 5 of the folks from Google will be there talking about one of my favorite pieces of software I use all day.</li>
<li><strong>WIRED Happy Hour</strong> &#8211; Wait, how did that get on there? hmmmmmm</li>
</ul>
<p>There are TONS more sessions that I hope to be a part of, but I don&#8217;t want to let my list get too long where I will be stuck in a schedule. With so much going on and so many people to connect with, I want to have a flexible schedule while I am down there.</p>
<p>Me and Brad are planning on blogging some while we are down there. If you are interested, check us out at <a href="http://sxsw.ithemes.com" target="_blank">sxsw.ithemes.com</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://mattdanner.net/tale-of-a-sxsw-rookie/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Latest Tweet without a Plugin</title>
		<link>http://mattdanner.net/latest-tweet-without-a-plugin-using-php/</link>
		<comments>http://mattdanner.net/latest-tweet-without-a-plugin-using-php/#comments</comments>
		<pubDate>Thu, 07 Jan 2010 15:45:21 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[matt danner]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[twitter]]></category>
		<category><![CDATA[wordpress development]]></category>

		<guid isPermaLink="false">http://mattdanner.net/?p=1218</guid>
		<description><![CDATA[I earlier this week, one of our clients wanted a better solution to getting his latest tweet from Twitter than simply using an RSS widget it WordPress to grab the feed.  We could have simply used a plugin, but this site is HUGE, and we didn&#8217;t want to depend on Joe Pluginmaker to keep [...]]]></description>
			<content:encoded><![CDATA[<p>I earlier this week, one of our clients wanted a better solution to getting his latest tweet from <a href="http://twitter.com">Twitter</a> than simply using an RSS widget it WordPress to grab the feed.  We could have simply used a plugin, but this site is HUGE, and we didn&#8217;t want to depend on Joe Pluginmaker to keep his code clean and up to date, so we went about doing it the old fashioned way: PHP.  <span id="more-1218"></span>After doing a bit of research, we found <a href="http://www.smashingmagazine.com/2009/03/04/15-useful-twitter-plugins-and-hacks-for-wordpress/">THIS</a> article from <a href="http://www.smashingmagazine.com/">Smashing Mag</a>, and I found some code in there that was lean and clean, so I decided to use it.  Below is basically what the code looks like out of the box:</p>
<blockquote><p><code>&lt;?php<br />
// Your twitter username.<br />
$username = "TwitterUsername";<br />
// Prefix - some text you want displayed before your latest tweet.<br />
// (HTML is OK, but be sure to escape quotes with backslashes: for example href=\"link.html\")<br />
$prefix = "&lt;h2&gt;My last Tweet&lt;/h2&gt;";<br />
// Suffix - some text you want display after your latest tweet. (Same rules as the prefix.)<br />
$suffix = "";<br />
$feed = "http://search.twitter.com/search.atom?q=from:" . $username . "&amp;rpp=1";<br />
function parse_feed($feed) {<br />
$stepOne = explode("&lt;content type=\"html\"&gt;", $feed);<br />
$stepTwo = explode("&lt;/content&gt;", $stepOne[1]);<br />
$tweet = $stepTwo[0];<br />
$tweet = str_replace("&amp;lt;", "&lt;", $tweet);<br />
$tweet = str_replace("&amp;gt;", "&gt;", $tweet);<br />
return $tweet;<br />
}<br />
$twitterFeed = file_get_contents($feed);<br />
echo stripslashes($prefix) . parse_feed($twitterFeed) . stripslashes($suffix);<br />
?&gt;</code></p></blockquote>
<p>Basically all you have to do is put your twitter id in the top part, and you are pretty well set to go.  The only problem we ran into with this code injected into a sidebar is that the links in a tweet were html coded.  To decode it, we simple added the following line of code:</p>
<p><code>$tweet = html_entity_decode($tweet);</code></p>
<p>Add this line in right before the <code>return $tweet</code> and it will filter out the unwanted code.  The end product should look like this:</p>
<blockquote><p><code>&lt;?php<br />
// Your twitter username.<br />
$username = "TwitterUsername";<br />
// Prefix - some text you want displayed before your latest tweet.<br />
// (HTML is OK, but be sure to escape quotes with backslashes: for example href=\"link.html\")<br />
$prefix = "&lt;h2&gt;My last Tweet&lt;/h2&gt;";<br />
// Suffix - some text you want display after your latest tweet. (Same rules as the prefix.)<br />
$suffix = "";<br />
$feed = "http://search.twitter.com/search.atom?q=from:" . $username . "&amp;rpp=1";<br />
function parse_feed($feed) {<br />
$stepOne = explode("&lt;content type=\"html\"&gt;", $feed);<br />
$stepTwo = explode("&lt;/content&gt;", $stepOne[1]);<br />
$tweet = $stepTwo[0];<br />
$tweet = str_replace("&amp;lt;", "&lt;", $tweet);<br />
$tweet = str_replace("&amp;gt;", "&gt;", $tweet);<br />
$tweet = html_entity_decode($tweet);<br />
return $tweet;<br />
}<br />
$twitterFeed = file_get_contents($feed);<br />
echo stripslashes($prefix) . parse_feed($twitterFeed) . stripslashes($suffix);<br />
?&gt;</code></p></blockquote>
<p>-matt</p>
]]></content:encoded>
			<wfw:commentRss>http://mattdanner.net/latest-tweet-without-a-plugin-using-php/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>5 Useful WordPress Template Tags</title>
		<link>http://mattdanner.net/five-useful-wordpress-template-tags/</link>
		<comments>http://mattdanner.net/five-useful-wordpress-template-tags/#comments</comments>
		<pubDate>Tue, 22 Dec 2009 02:51:36 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[matt danner]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[template tags]]></category>

		<guid isPermaLink="false">http://mattdanner.net/?p=1187</guid>
		<description><![CDATA[Even if you work with the absolute best in premium WordPress themes, you will undoubtedly find that you need some additional/different functions than the theme has build it.  A great resource that is built in to WordPress is template tags.  A template tag is basically just a way to display information.  Below, I have compiled [...]]]></description>
			<content:encoded><![CDATA[<p><a rel="attachment wp-att-1199" href="http://mattdanner.net/five-useful-wordpress-template-tags/blue-m-2/"><img class="size-full wp-image-1199 alignright" style="border: 0pt none; margin: 0px;" title="blue-m" src="http://mattdanner.net/wp-content/uploads/2009/12/blue-m1.png" alt="" width="100" height="100" /></a>Even if you work with the absolute best in <a title="Premium WordPress Themes" href="http://ithemes.com/purchase/" target="_blank">premium WordPress themes</a>, you will undoubtedly find that you need some additional/different functions than the theme has build it.  A great resource that is built in to <a title="WordPress Codex" href="http://codex.wordpress.org/Template_Tags" target="_blank">WordPress is template tags</a>.  A template tag is basically just a way to display information.  Below, I have compiled a few of the many tags that I find particularly useful.<span id="more-1187"></span></p>
<pre>---------------------------</pre>
<p><strong><code>edit_post_link</code></strong><br />
This tag gives you a link on the post page to the WP dashboard to edit that particular post.  One of my favorite things about this post is that it does not show up unless you are logged in.  To your users, they see nothing, but it allows you to easily edit posts you are looking at.</p>
<p>Usage*<br />
<strong><code>&lt;?php edit_post_link( 'edit', '&lt;p&gt;', '&lt;/p&gt;' ); ?&gt; </code></strong></p>
<pre>---------------------------</pre>
<p><strong><code>the_author_posts</code></strong><br />
This tag will tell you how many posts a particular author has posted.  This could be a nice touch on an author archive.</p>
<p>Usage*<br />
<strong><code>&lt;?php the_author(); ?&gt; has blogged &lt;?php the_author_posts(); ?&gt;</code></strong></p>
<p><strong>Harriett Smith has blogged 425 posts.</strong></p>
<pre>---------------------------</pre>
<p><strong><code>single_cat_title</code></strong><br />
I like to use this tag in my single.php file to display the category of an individual post.  I generally use it at the bottom.</p>
<p>Usage*<br />
<strong><code>&lt;?php single_cat_title( 'Currently Browsing' ); ?&gt;</code></strong></p>
<p><strong>Currently Browsing WordPress.</strong></p>
<pre>---------------------------</pre>
<p><strong><code>wp_login_url</code></strong><br />
You could use this tag in your header or footer (anywhere really, I am just recommending using it somewhere that appears on every page) to provide a login link to the WordPress Dashboard.  This can be especially handy if you run a site with lots of people logging in.</p>
<p>Usage*<br />
<strong><code>&lt;a href="&lt;?php echo wp_login_url(); ?&gt;" title="Login"&gt;Login&lt;/a&gt;<br />
</code></strong></p>
<pre>---------------------------</pre>
<p><strong><code>get_avatar</code></strong><br />
Ok, I&#8217;ll be honest. I only included this one because I really want to see the movie Avatar.  This tag will get the avatar of anyone who left an ID or email address.  Commonly used in comments.</p>
<p>-matt</p>
<p>* All usage is copied from the WordPress.org codex page for each template.</p>
]]></content:encoded>
			<wfw:commentRss>http://mattdanner.net/five-useful-wordpress-template-tags/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 101</title>
		<link>http://mattdanner.net/basics-wordpress-101/</link>
		<comments>http://mattdanner.net/basics-wordpress-101/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 21:24:33 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[basics of wordpress]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[matt danner]]></category>
		<category><![CDATA[wordpress 101]]></category>

		<guid isPermaLink="false">http://mattdanner.net/?p=1181</guid>
		<description><![CDATA[Everyone has to start somewhere. It really wasn&#8217;t all that long ago that I was starting out on WordPress, and didn&#8217;t know a thing.  Even worse was a few months in to it, when I knew just enough to be dangerous.  
It is with these people in mind that we did a little webinar this [...]]]></description>
			<content:encoded><![CDATA[<p>Everyone has to start somewhere. It really wasn&#8217;t all that long ago that I was starting out on WordPress, and didn&#8217;t know a thing.  Even worse was a few months in to it, when I knew just enough to be dangerous.  <span id="more-1181"></span></p>
<p>It is with these people in mind that we did a little webinar this morning about the basics of WordPress.  There is nothing fancy here. Just WP 101.  This video covers posts, pages, comments, and simple things that we tend to take for granted.  If you decide to go watch it, make sure you comment about the sexy voice of the guy hosting the webinar.  He and I are very close&#8230;</p>
<p><a title="WordPress Webinar at iThemes" href="http://ithemes.com/learn-basics-of-wordpress-free-tutorial-video/">CLICK HERE TO WATCH THE WEBINAR</a></p>
<p>-matt</p>
]]></content:encoded>
			<wfw:commentRss>http://mattdanner.net/basics-wordpress-101/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Excluding Pages from WordPress Navigation</title>
		<link>http://mattdanner.net/excluding-pages-from-wordpress-navigation/</link>
		<comments>http://mattdanner.net/excluding-pages-from-wordpress-navigation/#comments</comments>
		<pubDate>Fri, 13 Nov 2009 15:14:42 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[exclude]]></category>
		<category><![CDATA[matt danner]]></category>
		<category><![CDATA[navigation]]></category>
		<category><![CDATA[night photography]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://mattdanner.net/?p=1170</guid>
		<description><![CDATA[I have been fortunate to work with an awesome programmer who makes our WordPress themes incredibly easy to use.  But recently, as I have been working with themes from other comanies, and one of the major problems I have run into is not having a Nav Builder.  On almost every major site I [...]]]></description>
			<content:encoded><![CDATA[<p>I have been fortunate to work with an awesome programmer who makes our WordPress themes incredibly easy to use.  But recently, as I have been working with themes from other comanies, and one of the major problems I have run into is not having a Nav Builder.  On almost every major site I have built for a client, there are pages that need to be linked internally, but not appear in the main navigation bar.  Luckily, WordPress has made this really easy, and I just want to share the method I have been using.<span id="more-1170"></span></p>
<p>First, I just want to post the basic call of the navigation.  In the header.php file, call the nav using the following code:</p>
<blockquote><p>&lt;?php wp_list_pages(&#8216;title_li=&amp;depth=4&amp;sort_column=menu_order); ?&gt;</p></blockquote>
<p>This code will list all pages.  Now I want to prevent certain pages from appearing in that list.  To do that, I need to find the IDs of the pages that I do not want to appear.  A simple trick to find the ID of the pages is to go to the Edit page under the Pages tab in the WordPress Dashboard.  Now I can simply hover over the page that I want to exclude, and use the link associated with that page to see its ID.</p>
<p>Now I need to use the page IDs in the code above to prevent them from showing up. To do this, add the &amp;exclude command.  The above code will look like this after the change:</p>
<blockquote><p>&lt;?php wp_list_pages(&#8216;title_li=&amp;depth=4&amp;sort_column=menu_order&amp;exclude=PAGE IDs&#8217;); ?&gt;</p></blockquote>
<p>Replace &#8220;PAGE IDs&#8221; with the IDs of the pages you want to exclude.  It could look, for example like this:</p>
<blockquote><p>&lt;?php wp_list_pages(&#8216;title_li=&amp;depth=4&amp;sort_column=menu_order&amp;exclude=91,42,98&#8242;); ?&gt;</p></blockquote>
<p>This is a pretty basic change that anyone can easily make. Hope it helps.</p>
<p>-matt</p>
]]></content:encoded>
			<wfw:commentRss>http://mattdanner.net/excluding-pages-from-wordpress-navigation/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Customer Service from Best Buy</title>
		<link>http://mattdanner.net/customer-service-from-best-buy/</link>
		<comments>http://mattdanner.net/customer-service-from-best-buy/#comments</comments>
		<pubDate>Thu, 15 Oct 2009 01:49:59 +0000</pubDate>
		<dc:creator>Matt</dc:creator>
				<category><![CDATA[Community]]></category>
		<category><![CDATA[best buy]]></category>
		<category><![CDATA[customer service]]></category>
		<category><![CDATA[matt danner]]></category>
		<category><![CDATA[night photography]]></category>
		<category><![CDATA[review]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://mattdanner.net/?p=1127</guid>
		<description><![CDATA[
Here is the story:
I, like the brilliant guy that I am, dropped my iPhone headphones on the ground and rolled over one of the earbuds with my rolly-chair.  This happened a few weeks ago, but I decided last week I wanted to replace them before I went to Atlanta.  So the night before my flight, [...]]]></description>
			<content:encoded><![CDATA[<p><img class="size-medium wp-image-1139 alignleft" title="best-buy-logo" src="http://mattdanner.net/wp-content/uploads/2009/10/best-buy-logo-300x196.png" border="1px solid #000" alt="best-buy-logo" width="210" height="137" /></p>
<p>Here is the story:</p>
<p>I, like the brilliant guy that I am, dropped my iPhone headphones on the ground and rolled over one of the earbuds with my rolly-chair.  This happened a few weeks ago, but I decided last week I wanted to replace them before I went to Atlanta.  So the night before my flight, I went to Best Buy and bought myself a set of $40 Apple headphones for the iPhone.  I get home and open the box, and out falls a GROSS pair of USED IPOD headphones.  I checked the box again, and not only did it not say iPod, it didn&#8217;t say used either.  According to the box, I should have received a NEW pair of IPHONE headphones.  You can imagine my frustration.<span id="more-1127"></span>I really wish I had taken a picture of how gross this headset was.  Seriously&#8230; dingy.  Jump forward to tonight.  I pack the headset up and head for Best Buy, receipt in hand.  To be honest, I thought I was going to have to rip someone apart.  What I got when I arrived at the store was a pleasant surprise.</p>
<p>I walked up to the Customer Service desk, and the guy asked what the problem was.  I calmly began telling him the story, and as soon as I removed the headphones from the box, he stopped me and said, &#8220;Gross.&#8221;  He proceeded to go and get me a brand new set of the NEW iPhone headphones (the ones with the volume controller built into the headphones) and said he wouldn&#8217;t even charge me the difference.  He said it was the least he could do after they sold me that disgusting set before.</p>
<p>I was shocked.  It was really incredible customer service.  I actually got more than I wanted when I walked through the doors.  I guess I am just writing all of this because I appreciate good customer service.  I try to do my best to be like the guy tonight, and make fans.  Some customers make it very hard, and it is impossible to make a fan out of everyone. But this guy saw the opportunity, and he jumped on it.  It worked too.  I am a fan.  And now I am blogging about it to spread the word.</p>
<p>Nice going Dave. (I think that was his name)</p>
<p>-matt</p>
]]></content:encoded>
			<wfw:commentRss>http://mattdanner.net/customer-service-from-best-buy/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
