<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.voxeo.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Behind The Blog</title>
	
	<link>http://blogs.voxeo.com/behindtheblog</link>
	<description>A blog about a blog (site)... a view inside a WordPress MU installation</description>
	<lastBuildDate>Tue, 07 Sep 2010 15:26:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.voxeo.com/BehindTheBlog" /><feedburner:info uri="behindtheblog" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>BehindTheBlog</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>What’s the best plugin for searching across all WordPress MultiSite blogs?</title>
		<link>http://feeds.voxeo.com/~r/BehindTheBlog/~3/XAU6oGDxSGM/</link>
		<comments>http://blogs.voxeo.com/behindtheblog/2010/09/07/whats-the-best-plugin-for-searching-across-all-wordpress-multisite-blogs/#comments</comments>
		<pubDate>Tue, 07 Sep 2010 15:20:38 +0000</pubDate>
		<dc:creator>Dan York</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[WordPress MU]]></category>
		<category><![CDATA[search]]></category>

		<guid isPermaLink="false">http://blogs.voxeo.com/behindtheblog/?p=154</guid>
		<description><![CDATA[After writing about how you could search across all the blogs on our WordPress MU site, the post received a comment with a question from another WPMU site administrator asking how we did it.
Since I&#8217;d honestly forgotten the details since the site-wide search was set up almost three years ago, I logged into the server [...]]]></description>
			<content:encoded><![CDATA[<p><img style="float: right;" src="http://blogs.voxeo.com/voxeotalks/files/2010/09/searchallblogs.jpg" border="0" alt="searchallblogs.jpg" width="215" height="96" />After <a href="http://blogs.voxeo.com/voxeotalks/2010/09/06/tip-how-to-search-across-all-voxeo-blogs/">writing about how you could search across all the blogs</a> on our WordPress MU site, the post <a href="http://blogs.voxeo.com/voxeotalks/2010/09/06/tip-how-to-search-across-all-voxeo-blogs/#comment-6011">received a comment with a question from another WPMU site administrator</a> asking how we did it.</p>
<p>Since I&#8217;d honestly forgotten the details since the site-wide search was set up almost three years ago, I logged into the server and looked.  The answer is that we currently use &#8220;GT Search all Blogs&#8221; by Giovanni Tufo:</p>
<blockquote>
<pre>/*
Plugin Name: GT Search all Blogs
Plugin URI:
Description: Search in all Blogs, Posts, Pages(both in the title and in the post), based on "WordPress MU Recent Posts" by Ron Rennik
Version: 0.2
Author: Giovanni Tufo
Author URI: http://joevanni99.wordpress.com
*/</pre>
</blockquote>
<p>However, it looks like I have a problem&#8230; <em>that plugin seems to be NO LONGER MAINTAINED.</em></p>
<p>The web page referenced is no longer online, the plugin isn&#8217;t listed in <a href="http://wordpress.org/extend/plugins/">the WordPress plugin directory</a>, and while I did find the author&#8217;s current website it is in Italian and I couldn&#8217;t find anything referencing WordPress.</p>
<p>Which, to me, means that I get to add yet another action to my &#8220;to do&#8221; list:</p>
<blockquote><p><em>Find a new &#8220;search all blogs&#8221; plugin.</em></p></blockquote>
<p>Now, what I have <em>works</em>, obviously, (and works well!) but as WordPress continues to evolve and change I&#8217;m not really comfortable using plugins that aren&#8217;t also tracking the development of WordPress. At <em>some</em> point in the future, this plugin may stop working&#8230; and then it&#8217;s up to <em>me</em> to fix it.</p>
<p>In looking through the Plugin Directory, this <em>MultiSite Global Search</em> plugin looks pretty good:</p>
<blockquote><p><a href="http://wordpress.org/extend/plugins/multisite-global-search/">http://wordpress.org/extend/plugins/multisite-global-search/</a></p></blockquote>
<p>My one concern that I don&#8217;t see listed in the plugin info is whether or not it only searches <em>public</em> blogs on the site. I would hope that is the case, and if it doesn&#8217;t is probably a minor modification. (I have a number of &#8220;private&#8221; blogs on the site that are for experimentation and testing&#8230; but I don&#8217;t want those posts showing up in search results.)</p>
<p>Unfortunately, I don&#8217;t really seem to find any other &#8220;global search&#8221; or &#8220;search all blogs&#8221; plugins in the plugin directory.</p>
<p>What are other people using out there?</p>
<p>&copy;2010 <a href="http://blogs.voxeo.com/behindtheblog">Behind The Blog</a>. All Rights Reserved.</p>.<img src="http://feeds.feedburner.com/~r/BehindTheBlog/~4/XAU6oGDxSGM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.voxeo.com/behindtheblog/2010/09/07/whats-the-best-plugin-for-searching-across-all-wordpress-multisite-blogs/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blogs.voxeo.com/behindtheblog/2010/09/07/whats-the-best-plugin-for-searching-across-all-wordpress-multisite-blogs/</feedburner:origLink></item>
		<item>
		<title>What the ___?? NO, Twitter, I did NOT recommend those users! TWEET BUTTON FAIL!</title>
		<link>http://feeds.voxeo.com/~r/BehindTheBlog/~3/EvsRonFT6wc/</link>
		<comments>http://blogs.voxeo.com/behindtheblog/2010/08/13/what-the-___-no-twitter-i-did-not-recommend-those-users-tweet-button-fail/#comments</comments>
		<pubDate>Fri, 13 Aug 2010 17:57:42 +0000</pubDate>
		<dc:creator>Dan York</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[Twitter]]></category>
		<category><![CDATA[WordPress MU]]></category>

		<guid isPermaLink="false">http://blogs.voxeo.com/behindtheblog/?p=149</guid>
		<description><![CDATA[No sooner had I written the last post, How To Add Twitter’s “Official” Tweet Button to WordPress MU, saying that the recommendation feature wasn&#8217;t working for me, when it did work for me -
 BUT NOT WITH ANYONE I WOULD RECOMMEND!!!
Here is what I got:

Now I very definitely did NOT recommend either of those accounts.  The [...]]]></description>
			<content:encoded><![CDATA[<p>No sooner had I written the last post, <em><a href="http://blogs.voxeo.com/behindtheblog/2010/08/13/how-to-add-twitters-official-tweet-button-to-wordpress-mu/">How To Add Twitter’s “Official” Tweet Button to WordPress MU</a></em>, saying that the recommendation feature wasn&#8217;t working for me, when it <em>did</em> work for me -</p>
<p><strong> BUT NOT WITH ANYONE I WOULD RECOMMEND!!!</strong></p>
<p>Here is what I got:</p>
<p><strong><img style="display: block; margin-left: auto; margin-right: auto;" src="http://blogs.voxeo.com/behindtheblog/files/2010/08/twitterrecommendations.jpg" border="0" alt="twitterrecommendations.jpg" width="479" height="335" /></strong></p>
<p>Now I very definitely did <em>NOT</em> recommend either of those accounts.  The &#8220;SMS&#8221; one appears to be a dormant account (at least, it has no tweets) and, no offense to Twitter, I wouldn&#8217;t go recommending their account from our corporate account.</p>
<p><em>What&#8217;s up, Twitter?</em> Are you going to follow the recommendations that I have asked for in configuring the Tweet button? (using the plugin)</p>
<p>Or are you going to be <em>randomly displaying recommendations</em> of other people?</p>
<p>Because if you are saying &#8220;<em>Voxeo (@voxeo) recommends you follow</em>&#8221; and then including random users, <strong>YOUR &#8220;TWEET&#8221; BUTTON WILL BE YANKED OFF OUR SITE faster than you can say &#8220;tweet&#8221;!</strong></p>
<p>I&#8217;m hoping this is just a failure of a half-baked feature&#8230;  and that it will soon be fixed.</p>
<p>What are others seeing?  If you are using the &#8220;Tweet&#8221; button and tweeting out links from your site, what recommendations do <em>you</em> see?</p>
<p>&copy;2010 <a href="http://blogs.voxeo.com/behindtheblog">Behind The Blog</a>. All Rights Reserved.</p>.<img src="http://feeds.feedburner.com/~r/BehindTheBlog/~4/EvsRonFT6wc" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.voxeo.com/behindtheblog/2010/08/13/what-the-___-no-twitter-i-did-not-recommend-those-users-tweet-button-fail/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://blogs.voxeo.com/behindtheblog/2010/08/13/what-the-___-no-twitter-i-did-not-recommend-those-users-tweet-button-fail/</feedburner:origLink></item>
		<item>
		<title>How To Add Twitter’s “Official” Tweet Button to WordPress MU</title>
		<link>http://feeds.voxeo.com/~r/BehindTheBlog/~3/rU2QHr1bOaY/</link>
		<comments>http://blogs.voxeo.com/behindtheblog/2010/08/13/how-to-add-twitters-official-tweet-button-to-wordpress-mu/#comments</comments>
		<pubDate>Fri, 13 Aug 2010 16:33:05 +0000</pubDate>
		<dc:creator>Dan York</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[Twitter]]></category>
		<category><![CDATA[WordPress MU]]></category>
		<category><![CDATA[wordpressmu]]></category>

		<guid isPermaLink="false">http://blogs.voxeo.com/behindtheblog/?p=146</guid>
		<description />
			<content:encoded><![CDATA[<div style="background: #eeeeee;"<P><strong>UPDATE Aug 13</strong> &#8211; I had to <em>disable the plugin</em> after Firefox on Mac users indicated that they received multiple popup windows like this when browsing our site:
<img style="display:block; margin-left:auto; margin-right:auto;" src="http://blogs.voxeo.com/behindtheblog/files/2010/08/twitterbuttonerror.jpg" alt="twitterbuttonerror.jpg" border="0" width="349" height="148" /></p>
<p>I don&#8217;t know yet whether this is an issue with our WordPress theme, with the Twitter Button plugin or with the service from Twitter itself. Stay tuned&#8230;</p></div>
<hr />
<p>With <a href="http://blog.twitter.com/2010/08/pushing-our-tweet-button.html">Twitter releasing their new &#8220;Tweet Button&#8221; yesterday</a>, I was naturally interested in figuring out how to add the button to this site.  Mashable had the first post out that I saw explaining the easy steps: &#8220;<em><a href="http://mashable.com/2010/08/13/tweet-button-bloggers/">HOW TO: Use Tweet Buttons as a Blogger or Site Owner</a></em>&#8220;. In going to Twitter&#8217;s <a href="http://twitter.com/goodies/tweetbutton">&#8220;Tweet Button&#8221; page</a>, it&#8217;s a fairly straightforward process to get the code you need.</p>
<hr />
<p><strong>THE PLUGIN</strong></p>
<p>However, I want to make system admin of this blog server as painless as possible so before I added the code to our theme I looked around for a plugin. I was delighted to see in the comments to the Mashable post that a gent named <a href="http://blogsessive.com/about/">Alex Cristache</a> had already coded up a <a href="http://blogsessive.com/blogging-tools/twitter-button-wordpress-plugin/">&#8220;<em>Twitter Button Plugin for WordPress</em>&#8221; plugin</a>.</p>
<p>I downloaded and installed it into the <tt>wp-contents/plugins</tt> and activated it for one of our blogs.  (<em>More on site-wide activation in a minute.</em>)  It has a very easy to use admin screen that appeared from a link at the bottom of my admin navbar. (Note: I&#8217;m still running WPMU 2.9.2 here, so with 3.0.x it may appear differently.)  The panel lets me make various config choices. I left it all at the defaults except for three areas:</p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" src="http://blogs.voxeo.com/behindtheblog/files/2010/08/twitterbuttonsettings2.jpg" border="0" alt="twitterbuttonsettings2.jpg" width="518" height="385" /></p>
<ol>
<li>I needed to change the Twitter user name to <a href="http://twitter.com/voxeo">ours</a>.
</li>
<li>I changed the recommended user (Alex, the plugin author <img src='http://blogs.voxeo.com/behindtheblog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  ) to be one of our other Twitter accounts. This will apparently appear in the window from Twitter after you share the link,although it&#8217;s not doing so for me right now. (probably a load issue at Twitter):<br /> <img style="display: block; margin-left: auto; margin-right: auto;" src="http://blogs.voxeo.com/behindtheblog/files/2010/08/twitterbuttonrecommendations.jpg" border="0" alt="twitterbuttonrecommendations.jpg" width="378" height="250" /> </li>
<li>I changed the &#8220;<tt>margin-top</tt>&#8221; attribute in the CSS so that the Tweet button appeared in line with the top of the article text.  This is a personal preference thing&#8230; and I like it this way. </li>
</ol>
<p>With that, the tweet button was up and running on one of the blogs. I went on to test with another and all worked fine.</p>
<hr />
<p><strong>SITE-WIDE ACTIVATION</strong></p>
<p>We support about a dozen active blogs on <a href="http://blogs.voxeo.com/">blogs.voxeo.com</a> and I <em>really</em> didn&#8217;t want to have to go to each one to change around these defaults&#8230;. so I started hacking the code before doing the &#8220;Activate Site Wide&#8221; link.</p>
<p>Diving into <tt>wp-content/plugins/wp-twitter-button</tt>, I opened <tt>twitter-button.php</tt> and changed these lines:</p>
<blockquote>
<pre>function tb_activate() {
        $default_settings = Array(
                'tb_home' =&gt; 1,
                'tb_archive' =&gt; 1,
                'tb_feed' =&gt; 1,
                'tb_page' =&gt; 1,
                'tb_box' =&gt; 'vertical', // can be none, horizontal or vertical
                'tb_style' =&gt; 'float: left; margin-right: 10px; margin-top: 20px;',
                'tb_position' =&gt; 'before', // can be before or after
                'tb_via' =&gt; 'Twitter',
                'tb_recommended_id' =&gt; 'Blogsessive',
                'tb_recommended_description' =&gt; 'Blogging, Social Media and ...'
        );</pre>
</blockquote>
<p> </p>
<p>to these lines (changes in red):</p>
<p> </p>
<blockquote>
<pre>function tb_activate() {
        $default_settings = Array(
                'tb_home' =&gt; 1,
                'tb_archive' =&gt; 1,
                'tb_feed' =&gt; 1,
                'tb_page' =&gt; 1,
                'tb_box' =&gt; 'vertical', // can be none, horizontal or vertical
                'tb_style' =&gt; 'float: left; margin-right: 10px; <span style="color: #ff0c18;">margin-top: 0px;</span>',
                'tb_position' =&gt; 'before', // can be before or after
                'tb_via' =&gt; '<span style="color: #ff0c18;">voxeo</span>',
                'tb_recommended_id' =&gt; '<span style="color: #ff0c18;">tropo</span>',
                'tb_recommended_description' =&gt; '<span style="color: #ff0c18;">Tropo is a powerful yet simple API ...</span>'
        );</pre>
</blockquote>
<p>(Note that I have not included the entire &#8220;recommended description&#8221; in this code example purely for space/layout reasons with this blog post. In the file I have the full descriptions.)</p>
<p>I then went ahead and clicked the &#8220;<em>Activate Twitter Button for WordPress Site Wide</em>&#8221; link on my Plugins panel and it worked fine.</p>
<hr />
<p><strong>THE END RESULT</strong></p>
<p>I now have the official &#8220;Tweet&#8221; button working on my WPMU 2.9.2 install and it seems to be working fine.  The issues I see so far:</p>
<p><strong>1. TWEET COUNT IS OFF</strong> &#8211; It seems the big issue everyone has right now is that the count of the number of tweets is off a bit.  Commenters to <a href="http://mashable.com/2010/08/13/tweet-button-bloggers/">the Mashable post</a> and to <a href="http://blogsessive.com/blogging-tools/twitter-button-wordpress-plugin/">the WordPress plugin page</a> both indicate this is a problem. The plugin author stated this:</p>
<blockquote><p><em>That ZERO tweets “bug” is actually caused by Twitter’s method to calculate tweets. They calculate them based on the number of search results on Twitter for the shared URL, and since their search history doesn’t go that far behind, some of the posts will display 0. The API they have provided is still far from perfect, but I think they said the button is hosted on a different server which might mean that from now on, all counts will not depend on the search anymore so new posts should be fine.</em></p></blockquote>
<p> </p>
<p><strong>2. WISH THE NUMBER WOULD NOT SHOW IF &#8220;0&#8243;</strong> &#8211; Given that count issue, I wish there was the option to <em>NOT</em> display the count if the number of tweets is zero. It&#8217;s just a perception thing&#8230; I&#8217;d like to not show that a particular article hasn&#8217;t had an Twitter-love yet (particularly if it <em>did</em> have tweets and now doesn&#8217;t have a count as an artifact of Twitter&#8217;s problems) I intend to make the suggestion back to the plugin author&#8230; but this may be a Twitter issue.</p>
<p> </p>
<p><strong>3. DO RECOMMENDATIONS WORK? WHAT IF I ONLY WANT ONE?</strong> &#8211; So far when I&#8217;ve tweeted out a blog post using the button, I&#8217;ve not yet seen the &#8220;recommendations&#8221; screen that Twitter says we&#8217;ll see.  Is Twitter not displaying it right now?  Does it work?  What if I don&#8217;t want to recommend a second account- do I just leave that field blank in the plugin panel?</p>
<p>Obviously before I can answer any of that I have to <em>see</em> recommendations. <img src='http://blogs.voxeo.com/behindtheblog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p> </p>
<p>Overall, though, it seems to be working great. Kudos to Alex Cristache for coming out with this plugin so quickly. It&#8217;s a great help and saved me from hacking away on my theme.</p>
<p>Anyone else found another way (or plugin) to do this?  What have you found so far?</p>
<p>&copy;2010 <a href="http://blogs.voxeo.com/behindtheblog">Behind The Blog</a>. All Rights Reserved.</p>.<img src="http://feeds.feedburner.com/~r/BehindTheBlog/~4/rU2QHr1bOaY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.voxeo.com/behindtheblog/2010/08/13/how-to-add-twitters-official-tweet-button-to-wordpress-mu/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		<feedburner:origLink>http://blogs.voxeo.com/behindtheblog/2010/08/13/how-to-add-twitters-official-tweet-button-to-wordpress-mu/</feedburner:origLink></item>
		<item>
		<title>The WordPress MU plugin I want: site-wide trends in blog posts, comments, etc. across ALL blogs</title>
		<link>http://feeds.voxeo.com/~r/BehindTheBlog/~3/8J_nG3riUM0/</link>
		<comments>http://blogs.voxeo.com/behindtheblog/2010/08/10/the-wordpress-mu-plugin-i-want-site-wide-trends-in-blog-posts-comments-etc-across-all-blogs/#comments</comments>
		<pubDate>Tue, 10 Aug 2010 13:13:55 +0000</pubDate>
		<dc:creator>Dan York</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[Statistics]]></category>
		<category><![CDATA[WordPress MU]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[wordpressmu]]></category>

		<guid isPermaLink="false">http://blogs.voxeo.com/behindtheblog/?p=141</guid>
		<description><![CDATA[If you are a WordPress developer looking for an interesting new project, or if you have an existing WordPress statistics plugin and are looking for ways to add more to it, here is the kind of plugin I would love to have available to me&#8230;.
Last night I wanted to create a graph of the site-wide [...]]]></description>
			<content:encoded><![CDATA[<p>If you are a WordPress developer looking for an interesting new project, or if you have an existing WordPress statistics plugin and are looking for ways to add more to it, here is the kind of plugin I would <em>love</em> to have available to me&#8230;.</p>
<p>Last night I wanted to create a graph of the <em><strong>site-wide quarterly trend in the number of blog posts published across ALL blogs</strong></em> on our <a href="http://blogs.voxeo.com">blogs.voxeo.com</a> corporate blog portal. After looking through a <em>great</em> number of potential WordPress plugins (with special thanks to the always awesome <a href="http://twitter.com/andrea_r">Andrea_R</a> for her pointers), I got rather frustrated because most of them seem to focus on either site-wide visitor stats, which I&#8217;m already tracking through Google Analytics, or provided some &#8220;activity&#8221; stats &#8211; but only for a single blog.  (And if I missed one that does what I outline below, I&#8217;d love to hear about it.)</p>
<p>I did finally get the kind of chart that I wanted&#8230; but through a kludgey use of SQL and Excel that I&#8217;ll describe below.  Here was my end goal:</p>
<p><img style="display: block; margin-left: auto; margin-right: auto;" src="http://lodestar.typepad.com/.a/6a00d8341bfc6e53ef0133f2f79194970b-pi" border="0" alt="blogposttrend.jpg" width="499" height="337" /></p>
<hr />
<p><strong>THE REASON</strong></p>
<p>My purpose in this was somewhat simple &#8211; I wanted to see and chart the growth of our content creation efforts on the blog server.  I want to show trends in the amount of content we are publishing&#8230; and then potentially tie those in to other trends such as increased visits (which I track through Google Analytics) and increased sales inquiries (tracked through Google Analytics and SalesForce.com).</p>
<p>I have other reasons, too. We have set up <a href="http://blogs.voxeo.com/about/">a number of different blogs on different topics</a>. I would like to be able to see which of the blogs we are writing in more often than others&#8230; and which might need some attention &#8211; or potentially archiving.  I&#8217;d like a chart like the one above for each individual blog over time&#8230; or perhaps with the ability to graph multiple blogs on the same chart as a comparison.  You could see this being interesting data in a larger organization with different teams creating different blogs&#8230; to see which teams are creating the most online content.</p>
<p>To that point, it would be interesting to see <em>which users</em> are generating the most content&#8230; conceivably <em>across all blogs</em>.  In part from a individual performance point-of-view, and in part from a site-wide &#8220;health&#8221; point-of-view.  Our blog portal used to only have posts written by <em>me</em>. Now there are a good number of writers and to me that is the sign of a healthy content creation environment. As the one responsible for the overall site, I&#8217;d like to be able to see how the contributions are across the site.</p>
<p>I&#8217;d also like to be able to see the trend in comments.  How many comments?  How many track/pingbacks?</p>
<p>I&#8217;d like this data available in a quarterly basis, as I&#8217;ve shown here, and perhaps also in a monthly or weekly basis. Maybe even yearly if the site has been around for a bit.</p>
<hr />
<p><strong>THE IDEAL PLUGIN</strong></p>
<p>In my mind, the ideal plugin would be something that is a panel in my WordPress admin interface where I go to generate these reports.  For performance, I wouldn&#8217;t want this hitting the database and running all the time &#8211; but just there to generate on-demand reports.  Some of the ideas I would like to see:</p>
<ul>
<li>Allow me to set a date range</li>
<li>Choose from weekly, monthly, quarterly and yearly  (perhaps daily needs to be in there, too)</li>
<li>Allow me to choose which of the blogs I want to get trends on (some of our blogs are experimental or, like <a href="http://blogs.voxeo.com/events/">our Events blog</a>, have pages only and no posts)</li>
<li>Choose whether to get trends on only public blogs or also private blogs</li>
<li>Choose whether to aggregate all data together or to graph blogs separately</li>
<li>Graph different types of data: 
<ul>
<li>Count of posts by blog (or in aggregate)</li>
<li>Blog posts by user</li>
<li>Comments by blog (or in aggregate)</li>
</ul>
</li>
<li>Allow some modification of the title, legend, etc.</li>
<li>Or&#8230; alternatively&#8230; just create a CSV file with all the data that could be brought into Excel</li>
</ul>
<p>There&#8217;s probably more, like overall word count and stats like that&#8230; but that&#8217;s a start.  If you are reading this, what would you like to add?</p>
<hr />
<p><strong>THE KLUDGE</strong></p>
<p>To get the chart I wanted, I had to sweep away some of the cobwebs on the SQL knowledge in my brain and play around at the MySQL command line.  I logged into the blog server, launched &#8220;<span style="font-family: Courier;">mysql</span>&#8220;, connected to the &#8220;<span style="font-family: 'Courier New';">wordpress</span>&#8221; database and started playing around with &#8220;<span style="font-family: 'Courier New';">select</span>&#8221; statements.  There is a table, <span style="font-family: 'Courier New';">wp_blogs</span>, that lists all of your blogs and, most importantly, shows the &#8220;<span style="font-family: 'Courier New';">blog_id</span>&#8221; for each blog.  For each blog, there is then a table named &#8220;<span style="font-family: 'Courier New';">wp_&lt;blog_ID&gt;_posts</span>&#8220;, as in &#8220;<span style="font-family: 'Courier New';">wp_4_posts</span>&#8221; which contains the info about the posts, dates, authors, etc.  I found that I could get the data I wanted by doing this:</p>
<pre>﻿ select ID, post_title, post_date from wp_4_posts where post_type = 'post' and post_status='publish';</pre>
<p>Now, I didn&#8217;t include &#8220;<span style="font-family: 'Courier New';">post_author</span>&#8221; in my work last night, but I wish I did because it would have let me gather the author stats I want.  Anyway, I continued mucking around until I eventually came up with a SQL statement that gave me a pipe-delimited text file that I could easily import into Excel on my Mac. (I couldn&#8217;t use commas because some of my post titles have commas!)  Naturally I then had to automate the process so I hacked up a very quick python script to create the relevant SQL statement and then send that to MySQL.</p>
<blockquote>
<pre>﻿import os

for i in [4,7,8,11,12,13,15,16,19,22,24]:   # This is a list of the blog_ids of the blogs I care about

    target = "select ID, post_title, post_date from wp_"+str(i)+\    "_posts where post_type = 'post' and post_status='publish' ORDER BY post_date INTO OUTFILE '/tmp/b"+\    str(i)+ ".txt' FIELDS TERMINATED BY '|';"</pre>
<pre>    os.system('mysql wordpress -e "'+target+'"')</pre>
</blockquote>
<p>Like I said&#8230; a <em>total</em> kludge.</p>
<p>The end result was a series of pipe-delimited text files that I could import into Excel, combine together, and do some kludging there to get me the quarterly data which I could then chart.</p>
<p>﻿If I knew how to use the various MySQL modules for python, I&#8217;m sure it could have been done much more elegantly. (And yes, I know that the python &#8220;os&#8221; module is deprecated in newer python versions and &#8220;subprocess&#8221; should be used instead&#8230; I&#8217;m old school and this was a quick late-night hack.) Or if my SQL knowledge weren&#8217;t so rusty, there&#8217;s probably some big SELECT statement that could join this all together and give me a nice unified output, perhaps even with the counts I want.</p>
<hr />
<p><strong>THE FUTURE</strong></p>
<p>And if someone out there is handy with SQL or already has a WordPress plugin that does some or all of this&#8230; it would be great to see!  Given that my usage of WordPress MU (yes, I&#8217;m still on 2.9.2, but will be moving to 3.0 soon) is for a corporate blog portal, these are the kinds of statistics and trends that are of interest.  I would think that even if someone were running a more open site, these kind of trends would be helpful to know and understand.</p>
<p>Hopefully there&#8217;s just some plugin out there that I&#8217;ve missed! <img src='http://blogs.voxeo.com/behindtheblog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>What do you think?  What would you want in a plugin like this?</p>
<p>&copy;2010 <a href="http://blogs.voxeo.com/behindtheblog">Behind The Blog</a>. All Rights Reserved.</p>.<img src="http://feeds.feedburner.com/~r/BehindTheBlog/~4/8J_nG3riUM0" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.voxeo.com/behindtheblog/2010/08/10/the-wordpress-mu-plugin-i-want-site-wide-trends-in-blog-posts-comments-etc-across-all-blogs/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://blogs.voxeo.com/behindtheblog/2010/08/10/the-wordpress-mu-plugin-i-want-site-wide-trends-in-blog-posts-comments-etc-across-all-blogs/</feedburner:origLink></item>
		<item>
		<title>Suggestion for a WordPress plugin to publish posts to a Facebook Page?</title>
		<link>http://feeds.voxeo.com/~r/BehindTheBlog/~3/-4FwqpSqwDU/</link>
		<comments>http://blogs.voxeo.com/behindtheblog/2010/07/15/suggestion-for-a-wordpress-plugin-to-publish-posts-to-a-facebook-page/#comments</comments>
		<pubDate>Fri, 16 Jul 2010 01:54:51 +0000</pubDate>
		<dc:creator>Dan York</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[Facebook]]></category>

		<guid isPermaLink="false">http://blogs.voxeo.com/behindtheblog/?p=139</guid>
		<description><![CDATA[Do you use a WordPress plugin to publish your posts to a Facebook Page?  If so, which one?
I&#8217;m looking for a new solution to link this site to our Facebook Page at www.facebook.com/voxeo.  Right now I&#8217;m using Facebook&#8217;s ability to import a RSS feed to pull in all blog posts from the entire [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blogs.voxeo.com/behindtheblog/files/2010/07/facebooklogo-2-1-1.jpg" alt="facebooklogo-2-1-1.jpg" border="0" width="214" height="92" align="right" />Do you use a WordPress plugin to publish your posts to a Facebook Page?  If so, which one?</p>
<p>I&#8217;m looking for a new solution to link this site to our Facebook Page at <a href="">www.facebook.com/voxeo</a>.  Right now I&#8217;m using Facebook&#8217;s ability to import a RSS feed to pull in all blog posts from the entire <a href="http://blogs.voxeo.com">blogs.voxeo.com</a> site into our Facebook page.  I&#8217;m just pulling in our &#8220;All Blogs&#8221; feed.</p>
<p>Here&#8217;s the problem &#8211; Facebook is <em>incredibly inconsistent</em> with pulling in the RSS feed.  Sometimes a post here gets pulled into Facebook quickly&#8230; other times it might be <em>hours</em> after posting&#8230; sometimes <em>days</em> later!  Sometimes no articles get posted to the Facebook page and then a whole batch of posts gets posted all at once.</p>
<p>It&#8217;s rather frustrating.</p>
<p>So what I want to do is reverse the process.  Instead of waiting for Facebook to <em>pull</em> our posts from the RSS feed, I want to <em>push</em> our posts over to Facebook right after they are published here.  Essentially the same kind of thing we are doing to <a href="http://twitter.com/voxeo">our Twitter account</a>.</p>
<p>In looking at <a href="http://wordpress.org/extend/plugins/search.php?q=facebook+page&#038;sort=">all the various WordPress plugins related to Facebook</a>, it looks like this plugin might do the trick:</p>
<blockquote><p><a href="http://wordpress.org/extend/plugins/simple-facebook-connect/">Simple Facebook Connect</a></p></blockquote>
<p>The description includes this line:</p>
<ul>
<li>Automatically Publish new posts to Facebook Profile or Fan Page
</ul>
<p>Which sounds like what I want.</p>
<p>Anyone use this plugin today? Do you use another plugin to publish to Facebook?</p>
<p>&copy;2010 <a href="http://blogs.voxeo.com/behindtheblog">Behind The Blog</a>. All Rights Reserved.</p>.<img src="http://feeds.feedburner.com/~r/BehindTheBlog/~4/-4FwqpSqwDU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.voxeo.com/behindtheblog/2010/07/15/suggestion-for-a-wordpress-plugin-to-publish-posts-to-a-facebook-page/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://blogs.voxeo.com/behindtheblog/2010/07/15/suggestion-for-a-wordpress-plugin-to-publish-posts-to-a-facebook-page/</feedburner:origLink></item>
		<item>
		<title>How to use the Domain Mapping plugin with WordPress MU to host multiple blog sites on one server</title>
		<link>http://feeds.voxeo.com/~r/BehindTheBlog/~3/50IX87wcfKg/</link>
		<comments>http://blogs.voxeo.com/behindtheblog/2010/04/26/how-to-use-the-domain-mapping-plugin-with-wordpress-mu-to-host-multiple-blog-sites-on-one-server/#comments</comments>
		<pubDate>Mon, 26 Apr 2010 14:36:13 +0000</pubDate>
		<dc:creator>Dan York</dc:creator>
				<category><![CDATA[WordPress MU]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[Domains]]></category>
		<category><![CDATA[wordpressmu]]></category>
		<category><![CDATA[WPMU]]></category>

		<guid isPermaLink="false">http://blogs.voxeo.com/behindtheblog/?p=136</guid>
		<description><![CDATA[What do you do if your company has multiple blog sites that you want to maintain as separate distinct sites with their own domains?  You could, of course, install a separate instance of WordPress for each domain and run them on separate servers, etc.  But if you have your nice shiny WordPress MU [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blogs.voxeo.com/behindtheblog/files/2009/01/imageswordpressmulogo.jpg" alt="wordpressmulogo.jpg" border="0" width="250" height="51" align="right" />What do you do if your company has multiple blog sites that you want to maintain as separate distinct sites with their own domains?  You could, of course, install a separate instance of WordPress for each domain and run them on separate servers, etc.  But if you have your nice shiny <a href="http://mu.wordpress.org/">WordPress MU</a> running, why couldn&#8217;t you just run the different sites on the single instance of WPMU?</p>
<p>The answer of course is that you <em>can</em> very easily do this courtesy of <a href="http://wordpress.org/extend/plugins/wordpress-mu-domain-mapping/">the Domain Mapping Plugin for WordPress MU</a>.</p>
<p>Astute observers of this Voxeo blog site might have already noticed that if you view our blog portal at &#8220;<a href="http://blogs.voxeo.com">blogs.voxeo.com</a>&#8221; you might see (depending upon when you visit the site) blog posts from the Tropo blog, as in this image:</p>
<div style="text-align:center;"><img src="http://blogs.voxeo.com/behindtheblog/files/2010/04/voxeoblogportalwithtropo.jpg" alt="voxeoblogportalwithtropo.jpg" border="0" width="516" height="350" /></div>
<p>When you click <a href="http://blog.tropo.com/2010/04/24/tutorial-click-to-call-applications-w-conferencing/">on that link</a>, though, you are taken to a site with a different look and feel:
<div style="text-align:center;"><img src="http://blogs.voxeo.com/behindtheblog/files/2010/04/tropoblogsite.jpg" alt="tropoblogsite.jpg" border="0" width="516" height="356" /></div>
<p>and, in fact, the <em>domain name is different</em>.  While the portal and most of the other blogs are off of the &#8220;<tt>blogs.voxeo.com</tt>&#8221; domain, this Tropo post is off of &#8220;<tt>blog.tropo.com</tt>&#8220;.</p>
<p>Both sites, though, are running on the identical WordPress MU server.  </p>
<p>Here&#8217;s what I did:</p>
<p><strong>STEP 1: INSTALL THE DOMAIN MAPPING PLUGIN</strong></p>
<p>First I downloaded the Domain Mapping plugin code from <a href="http://wordpress.org/extend/plugins/wordpress-mu-domain-mapping/">the plugin page at the WordPress.org Plugin Directory</a>.  I then followed <a href="http://wordpress.org/extend/plugins/wordpress-mu-domain-mapping/installation/">the installation instructions</a> with regard to putting the files in the appropriate places and making necessary edits:
<blockquote>
<pre>1. Copy sunrise.php into wp-content/. If there is a sunrise.php there already, you'll just have to merge them as best you can.
2. Copy domain_mapping.php into wp-content/mu-plugins/.
3. Edit wp-config.php and uncomment the SUNRISE definition line: define( 'SUNRISE', 'on' );</pre>
</blockquote>
<p><strong>STEP 2: CONFIGURE THE SITE ADMIN SETTINGS</strong></p>
<p>With the plugin installed, I had a new menu choice under &#8220;Site Admin&#8221; called &#8220;Domain Mapping&#8221; where I simply entered the IP address of the blog server and the host name to use for CNAME records (and yes, I crossed out IP address in the image):</p>
<div style="text-align:center;"><img src="http://blogs.voxeo.com/behindtheblog/files/2010/04/wpmu-domainmapping-siteadmin.jpg" alt="wpmu-domainmapping-siteadmin.jpg" border="0" width="515" height="265" /></div>
<p><strong>STEP 3: CONFIGURE APACHE TO HANDLE NEW DOMAINS</strong></p>
<p>In order for this to work, your webserver has to be able to know that it should be answering HTTP requests for a domain name and what content it should serve up for that domain.  In our case, we use Apache and so I edited <tt>httpd.conf</tt> and added a &#8220;<tt>VirtualHost</tt>&#8221; directive pointing <tt>blog.tropo.com</tt> to my WordPressMU installation (not the real IP address, obviously):</p>
<blockquote><pre>&lt;VirtualHost 1.2.3.4:80&gt;
        ServerName blog.tropo.com
        DocumentRoot /var/www/html/wpmu
&lt;/VirtualHost&gt;</pre>
</blockquote>
<p>Now, I do understand that I actually didn&#8217;t <em>need</em> to specifically create a separate <tt>VirtualHost</tt> entry for <tt>blog.tropo.com</tt> because I already had an entry for <tt>blogs.voxeo.com</tt> and because that entry is listed <em>first</em> it would be the <em>default</em> entry for unspecified domains.  However, <em>for my own sanity</em> and ease of administration, I like creating separate <tt>VirtualHost</tt> directives for each domain so that I can easily see in the Apache config what domains it is answering for.  More info about using the VirtualHost directive can be found <a href="http://httpd.apache.org/docs/2.0/vhosts/examples.html">in the Apache documentation</a>.  Obviously if you are hosting a zillion domains, you may not want to do this&#8230; but in my case I&#8217;m only hosting a few.</p>
<p>A quick restart of the Apache server and it&#8217;s now ready to answer for that domain.</p>
<p><strong>STEP 4: CONFIGURE DNS TO POINT DOMAIN TO YOUR SERVER</strong></p>
<p>At this point, you need configure your DNS records to actually point to your WPMU server.  In my case, I requested our network operations team to add a CNAME record pointing <tt>blog.tropo.com</tt> to <tt>blogs.voxeo.com</tt>.  In DNS-speak, the record looks like this: 
<blockquote>
<pre>blog.tropo.com.         120     IN      CNAME   blogs.voxeo.com.</pre>
</blockquote>
<p>For good measure, we also had them point &#8220;<tt>blogs.tropo.com</tt>&#8221; over to <tt>blogs.voxeo.com</tt> in case someone mistyped &#8220;blogs&#8221; instead of &#8220;blog&#8221;.</p>
<p><strong>STEP 5: CONFIGURE THE BLOG SETTINGS</strong></p>
<p><img src="http://blogs.voxeo.com/behindtheblog/files/2010/04/domainmapping-tools.jpg" alt="domainmapping-tools.jpg" border="0" width="118" height="112" align="right" />With DNS now pointing to your WPMU server, the final step is to configure your <em>blog</em> to respond to this new domain.  In the WPMU dashboard for your blog, under the &#8220;Tools&#8221; menu, there is now a new &#8220;Domain Mapping&#8221; menu choice as shown in the screen capture on the right side.</p>
<p>This screen lets you add domains to the blog and also configure which domain you want to be the primary domain.  Here is a shot of what the page looked like during the setup process after I had added blog.tropo.com to the blog setup:</p>
<div style="text-align:center;"><img src="http://blogs.voxeo.com/behindtheblog/files/2010/04/domainmapping-tropoblog.jpg" alt="domainmapping-tropoblog.jpg" border="0" width="516" height="277" /></div>
<p>Once you save the settings and choose the primary domain, your blog now answers with that domain name.  If you look at <a href="http://blog.tropo.com">blog.tropo.com</a> you will see that it is its own site and has no sign of being hosted on the &#8220;blogs.voxeo.com&#8221; server. </p>
<p><em>[NOTE: The <strong>visual</strong> difference is because we created a separate WordPress <em>theme</em> for the Tropo blog.  It could, of course, have continued to use our standard theme but just started answering from the new domain.]</em></p>
<p>One note about adding domains&#8230;. the box to add a new domain already has &#8220;www.&#8221; at the beginning, but you do in fact enter the entire domain name into that box, even if you will never use &#8220;www.&#8221; on the domain.  For instance, here I added &#8220;blogs.tropo.com&#8221;:</p>
<div style="text-align:center;"><img src="http://blogs.voxeo.com/behindtheblog/files/2010/04/Domain-Mapping-‹-The-Tropo-Blog-—-WordPress.jpg" alt="Domain Mapping ‹ The Tropo Blog — WordPress.jpg" border="0" width="290" height="158" /></div>
<p>I am guessing that the creators of the plugin added &#8220;www.&#8221; to the beginning of the field so that novices to DNS wouldn&#8217;t enter in &#8220;www.example.com&#8221; if they really wanted &#8220;example.com&#8221;.  I don&#8217;t really know <em>why</em> they did it&#8230; the key point is that you enter into that box the domain name you want to point to this specific blog.</p>
<p>With the new domain added, here is what the page now looks like &#8211; note the link to delete a secondary domain if I wanted to:</p>
<div style="text-align:center;"><img src="http://blogs.voxeo.com/behindtheblog/files/2010/04/domainmapping-multipledomains.jpg" alt="domainmapping-multipledomains.jpg" border="0" width="516" height="307" /></div>
<p>That&#8217;s it&#8230; with these five steps you are done.  Your blog will now answer to a different domain name and, with a different theme, can appear to be a completely different site.</p>
<p><strong>DOMAIN MAPPING AND WPMU SITE-WIDE FEATURES</strong></p>
<p>There is one caveat to all this&#8230; if you go back to the beginning of this post, I suggested you go to the <a href="http://blogs.voxeo.com">blogs.voxeo.com</a> portal and click on a Tropo link, which brought you over to a <a href="http://blog.tropo.com">blog.tropo.com</a> post with a different look and feel.  There is also one big gotcha here:</p>
<blockquote><p><em>There is no way to get back to the Voxeo blog portal from the Tropo blog.</em></p></blockquote>
<p><P>There you are, on the Voxeo blog portal&#8230; as you go through the posts for the various (non-Tropo) blogs, they all have the same look and feel and you can easily navigate <em>back</em> to the blog portal or to other Voxeo blogs.  Then you click on a Tropo blog link and&#8230; ta da&#8230; you&#8217;re on some other site <em>with no way to get back</em>.</p>
<p>Now this was a <em>deliberate</em> design choice on our part.  We want the Tropo blog to be a completely separate site.  That&#8217;s our choice.  And yes, we&#8217;ve thought of adding a link to &#8220;Other Voxeo blogs&#8221; and we may well do that&#8230; but for the moment the sites are separate.</p>
<p>My point is that the &#8220;<tt>blogs.voxeo.com</tt>&#8221; <em><strong>portal page</strong></em> uses a plugin to display <em>the last 5 entries across <strong>ALL</strong> blogs hosted on the site</em>.</p>
<p>That plugin doesn&#8217;t differentiate between &#8220;<em>blogs hosted on the site that answer to &#8216;blogs.voxeo.com&#8217;</em>&#8221; and &#8220;<em>blogs hosted on the site that answer to other domains</em>&#8220;.  It just displays the last five posts across <em>ALL</em> hosted blogs.</p>
<p>In our case, I&#8217;m okay with it displaying all posts. I <em>want</em> the portal to be an aggregation of all Voxeo content posted out to the web.  I&#8217;m okay with the user experience of dropping someone into a different site and requiring them to use the Back button on their browser to return to the blog portal.</p>
<p>I&#8217;m personally okay with that &#8211; but <em>you</em> may not be when you do your own domain mapping&#8230; 
<P>You need to think about how &#8220;site-wide&#8221; features will interact with blogs hosted on different domains.  If you have a &#8220;portal page&#8221; like we do that displays the last X posts, will you have it include those from other domains (as I do)?  If you use the &#8220;site-wide tags&#8221; plugin, will you include all posts from all blogs in those lists?</p>
<p>If you do <em>NOT</em> want to include posts from those other domains, you&#8217;ll have to muck around with your site-wide plugins to figure out how to constrain the blogs that are included in those plugins.  I don&#8217;t have any answers here on how easy or not it is to do.  I can imagine what I would probably have to do with the site-wide listing I use for our portal page&#8230; but again, I don&#8217;t have an issue with the current setup.  Anyway, you need to think about this.</p>
<p><strong>WHY AM I DOING ALL THIS?</strong></p>
<p>You may be wondering <em>why</em> I went through all this with the domain mapping.  The answer is really this:</p>
<blockquote><p><em>I want to simplify the amount of system administration we have to do.</em></p></blockquote>
<p>With separate WordPress installs, you have to administer each one individually.  Separate WordPress upgrades&#8230; separate plugin upgrades&#8230; separate backups&#8230; etc., etc., etc.</p>
<p>I don&#8217;t want that.  I want to run our sites on <em>one</em> server that I can then centrally administer, backup, etc.  I can also easily add or change plugins and make those new features rapidly available across our blogs.  If it&#8217;s easy to administer, it&#8217;s also easy to backup and restore&#8230; and I&#8217;d rather be writing <em>content</em> than doing sysadmin.
<P>From the Voxeo perspective, setting up &#8220;<a href="http://blog.tropo.com./">blog.tropo.com</a>&#8221; was the first step.  We also just moved &#8220;<a href="http://labs.voxeo.com">labs.voxeo.com</a>&#8221; from a static site <a href="http://labs.voxeo.com/2010/04/19/welcome-to-the-new-voxeo-labs-design-and-site/">to one based on the blog server</a>.  In the future we&#8217;re going to look at moving <a href="http://blog.imified.com">blog.imified.com</a> over onto this server and maybe even the <a href="http://developers.voiceobjects.com/">VoiceObjects developer portal</a> (we&#8217;ll see on that one).  We also have some older sites like <a href="http://www.rocketsource.org/">RocketSource.org</a> that we may bring over to host on the site and give them an update in the process.</p>
<p>All in all this ability to do domain mapping is just another example of the power that WordPress gives you to create a blog site for your company or organization.</p>
<p>I hope this post helps with setting this up&#8230; feel free to leave comments or questions, although I will say that I have no affiliation with the domain mapping plugin beyond simply using it, so while I can answer questions about what <em>we</em> did, I may or may not be able to answer broader questions about the plugin.</p>
<p>&copy;2010 <a href="http://blogs.voxeo.com/behindtheblog">Behind The Blog</a>. All Rights Reserved.</p>.<img src="http://feeds.feedburner.com/~r/BehindTheBlog/~4/50IX87wcfKg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.voxeo.com/behindtheblog/2010/04/26/how-to-use-the-domain-mapping-plugin-with-wordpress-mu-to-host-multiple-blog-sites-on-one-server/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://blogs.voxeo.com/behindtheblog/2010/04/26/how-to-use-the-domain-mapping-plugin-with-wordpress-mu-to-host-multiple-blog-sites-on-one-server/</feedburner:origLink></item>
		<item>
		<title>Looking forward to WordPress 3.0 and the merge of WPMU</title>
		<link>http://feeds.voxeo.com/~r/BehindTheBlog/~3/Xhkv2Lg0BEk/</link>
		<comments>http://blogs.voxeo.com/behindtheblog/2010/04/05/looking-forward-to-wordpress-3-0-and-the-merge-of-wpmu/#comments</comments>
		<pubDate>Mon, 05 Apr 2010 17:57:03 +0000</pubDate>
		<dc:creator>Dan York</dc:creator>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WordPress MU]]></category>
		<category><![CDATA[wordpressmu]]></category>
		<category><![CDATA[WPMU]]></category>

		<guid isPermaLink="false">http://blogs.voxeo.com/behindtheblog/?p=127</guid>
		<description><![CDATA[I was delighted to see over the weekend that WordPress 3.0 Beta 1 is now available as this release promises to solve one of the biggest headaches for a WordPress MU administrator &#8211; staying in sync with the main WordPress stream &#8211; with &#8220;the merge&#8220;.
Yes, indeed, with WordPress 3.0 the separate &#8220;WordPress MU&#8221; will go [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blogs.voxeo.com/behindtheblog/files/2009/01/imageswordpressmulogo.jpg" alt="wordpressmulogo.jpg" border="0" width="250" height="51" align="right" />I was delighted to see over the weekend that <a href="http://wordpress.org/development/2010/04/wordpress-3-0-beta-1/">WordPress 3.0 Beta 1 is now available</a> as this release promises to solve one of the biggest headaches for a WordPress MU administrator &#8211; staying in sync with the main WordPress stream &#8211; with &#8220;<em>the merge</em>&#8220;.</p>
<p>Yes, indeed, with WordPress 3.0 the separate &#8220;<a href="http://mu.wordpress.org/">WordPress MU</a>&#8221; will go away and &#8220;WPMU&#8221; will simply become another mode of the main WordPress stream.  Per <a href="http://codex.wordpress.org/User:Andrea/Create_A_Network">the beta instructions</a> on configuring multi-site capability, it appears that all we&#8217;ll have to do is set a WP config variable:</p>
<blockquote><p>define (&#8216;WP_ALLOW_MULTISITE&#8217;, true  ) ;</p></blockquote>
<p>I say &#8220;it appears&#8221; because I&#8217;m admittedly too chicken to try out the WP 3.0 Beta 1 on this <em>production</em> site.  After all, <a href="http://wordpress.org/development/2010/04/wordpress-3-0-beta-1/">the blog post</a> is <em>very</em> clear that 3.0 Beta 1 is an &#8220;early&#8221; beta.  However, I may certainly try it out on one of my staging/testing servers.  I&#8217;m looking forward to continuing to watch the evolution and to eventually running it here.</p>
<hr />
<p>P.S. Since this &#8220;Behind The Blog&#8221; site seems to often be read by people investigating WPMU, let me explain the issue a bit more.  Right now, WordPress MU is a separate installation from regular, plain-old WordPress.  However the main development and evolution of WordPress happens on the regular WordPress code base and then is ported over to the WPMU code base.  As a result, when a new version of regular WP is released there is a time delay before when the corresponding version of WPMU is available.  Sometimes this isn&#8217;t a big deal&#8230; but sometimes you might want a specific WP fix or feature in WPMU sooner than the team is able to port it.  Also, there are two places to report bugs (WP and WPMU) and also submit fixes, etc.</p>
<p>With WordPress 3.0, the two code bases will be merged so that there is only <em>one</em> stream of code going forward.  This should make it much simpler for site administrators overall &#8211; and ensure that WPMU sites can always be up-to-date with the latest &#8220;regular&#8221; WP fixes and features.</p>
<p>&copy;2010 <a href="http://blogs.voxeo.com/behindtheblog">Behind The Blog</a>. All Rights Reserved.</p>.<img src="http://feeds.feedburner.com/~r/BehindTheBlog/~4/Xhkv2Lg0BEk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.voxeo.com/behindtheblog/2010/04/05/looking-forward-to-wordpress-3-0-and-the-merge-of-wpmu/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://blogs.voxeo.com/behindtheblog/2010/04/05/looking-forward-to-wordpress-3-0-and-the-merge-of-wpmu/</feedburner:origLink></item>
		<item>
		<title>Promoting relevant content through the Yet Another Related Posts Plugin (YARPP)</title>
		<link>http://feeds.voxeo.com/~r/BehindTheBlog/~3/enhhEdyCBts/</link>
		<comments>http://blogs.voxeo.com/behindtheblog/2010/03/03/promoting-relevant-content-through-the-yet-another-related-posts-plugin-yarpp/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 16:01:33 +0000</pubDate>
		<dc:creator>Dan York</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[WordPress MU]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[WPMU]]></category>

		<guid isPermaLink="false">http://blogs.voxeo.com/behindtheblog/?p=125</guid>
		<description><![CDATA[If you look at the bottom of any of the posts on any of the Voxeo blogs, including this post, you&#8217;ll see that there is now a &#8220;Related posts&#8221; section that promotes other blog posts that are deemed relevant to the topic of the post.  The idea being, of course, that you can expose [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blogs.voxeo.com/voxeotalks/files/2010/03/Voxeo-Talks-»-Voxeo-CEO-Jonathan-Taylor-in-SF-_-Silicon-Valley-this-week…-open-for-interviews….png" alt="Voxeo Talks » Voxeo CEO Jonathan Taylor in SF _ Silicon Valley this week… open for interviews….png" border="0" width="312" height="300" align="right" />If you look at the bottom of any of the posts on any of <a href="http://blogs.voxeo.com/">the Voxeo blogs</a>, including <em>this</em> post, you&#8217;ll see that there is now a &#8220;Related posts&#8221; section that promotes <em>other blog posts</em> that are deemed relevant to the topic of the post.  The idea being, of course, that you can expose readers who land on a blog post as a result of search (or tweets or other links) to other posts you have on your site.  Keep the readers on your site and learning about your content&#8230; and potentially then moving them to take some action or engage with you at a deeper level.
<P>After evaluating a good number of WordPress plugins that provide this functionality, I wound up choosing Michael Erlewine&#8217;s <em><a href="http://mitcho.com/code/yarpp/">Yet Another Related Posts Plugin (YARPP)</a></em>, based primarily on the number of recommendations I saw for it, the extensibility that it has (although I&#8217;m admittedly using hardly any of its power right now), and also the fact that it put relevant posts out to both the web page <em>and</em> the RSS feed.  Here&#8217;s a view of what the RSS feed looks like for the same post as shown in the image to the right:
<p><img src="http://blogs.voxeo.com/voxeotalks/files/2010/03/yarpp-in-rss.png" alt="yarpp-in-rss.png" border="0" width="353" height="71" /></p>
<p>Now, I set the plugin to only show 3 related posts in RSS and 5 for the web site.  <em>ALL</em> of that is configurable, including the text that appears above the related posts, the HTML used, styles, etc.  There are <em>so many</em> options, in fact, that I could easily see burning up a chunk of time just experimenting with it all.  Me? I&#8217;m using mostly the default settings right now and it&#8217;s working fine.</p>
<p><strong>WordPress MU Issues</strong></p>
<p>I installed the YARPP plugin in the &#8220;plugins&#8221; directory and then activated it site-wide.  I chose &#8220;plugins&#8221; vs &#8220;mu-plugins&#8221; purely because I wanted the option to <em>not</em> use it on some blogs&#8230; I don&#8217;t actually know if it would work in mu-plugins.  It all worked fine.</p>
<p>There are just two issues from a WPMU point-of-view:</p>
<ul>
<li><strong>Related posts only from the SINGLE blog</strong> &#8211; The YARPP plugin works with only a <em>single</em> blog, which is probably what you want 99% of the time. However, in a tightly controlled WPMU environment like this <a href="http://blogs.voxeo.com/">corporate blog portal</a>, it would be interesting to try seeing related posts <em>from across ALL blogs</em> on this site.  I could see that helping send traffic across the different blogs. 
<li><strong>Related posts NOT appearing in the all-blogs RSS feed</strong> &#8211; As I mentioned earlier, YARPP nicely puts related posts into the RSS blog <em>for each individual blog</em>.  However, we&#8217;re generating <a href="http://feeds.voxeo.com/AllVoxeoBlogs">an &#8220;All Voxeo Blogs&#8221; RSS feed</a> to which the majority of people subscribe. That feed also goes out to <a href="http://www.facebook.com/voxeo">our Facebook page</a> and is delivered by email to subscribers.  YARPP does <em>not</em> add posts to this AllVoxeoBlogs feed, largely because we&#8217;re generating this feed using another WPMU plugin.  At some point I need to look into how I can add in hooks or somehow get related posts there.
</ul>
<p>Given that YARPP isn&#8217;t targeted at WPMU, I wouldn&#8217;t expect it to do these things, but they would be wonderful enhancements&#8230; or a reason to have a YARPP-MU plugin.</p>
<p>Those issues aside, I&#8217;ve been <em>very</em> pleased with the plugin thus far and have to really applaud Michael Erlewine for his great work and for making the plugin available.</p>
<p>Have any of you reading this tried other &#8220;related posts&#8221; plugins with WPMU? </p>
<p>&copy;2010 <a href="http://blogs.voxeo.com/behindtheblog">Behind The Blog</a>. All Rights Reserved.</p>.<img src="http://feeds.feedburner.com/~r/BehindTheBlog/~4/enhhEdyCBts" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.voxeo.com/behindtheblog/2010/03/03/promoting-relevant-content-through-the-yet-another-related-posts-plugin-yarpp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://blogs.voxeo.com/behindtheblog/2010/03/03/promoting-relevant-content-through-the-yet-another-related-posts-plugin-yarpp/</feedburner:origLink></item>
		<item>
		<title>How to embed XML and source code in WordPressMU/WPMU using the SyntaxHighlighter plugin</title>
		<link>http://feeds.voxeo.com/~r/BehindTheBlog/~3/TCRfqYfqCTo/</link>
		<comments>http://blogs.voxeo.com/behindtheblog/2009/12/14/finally-embedding-xml-and-source-code-in-wordpressmuwpmu-using-the-syntaxhighlighter-plugin/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 16:32:52 +0000</pubDate>
		<dc:creator>Dan York</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[WordPress MU]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[wordpressmu]]></category>
		<category><![CDATA[WPMU]]></category>

		<guid isPermaLink="false">http://blogs.voxeo.com/behindtheblog/?p=116</guid>
		<description><![CDATA[Way back in late 2007 when I launched blogs.voxeo.com, one of my very first problems was in trying to figure out how to include snippets of VoiceXML, CCXML and CallXML code. I wrote about trying a number of different WordPress plugins back in March 2008 and at the time didn&#8217;t have much luck.  When [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blogs.voxeo.com/behindtheblog/files/2009/12/xml.png" alt="xml.png" border="0" width="200" height="128" align="right" />Way back in late 2007 when I launched <a href="http://blogs.voxeo.com/">blogs.voxeo.com</a>, one of my very first problems was in trying to figure out how to include snippets of <a href="http://www.vxml.org/">VoiceXML</a>, <a href="http://docs.voxeo.com/ccxml/1.0-final/home.htm">CCXML</a> and <a href="http://docs.voxeo.com/callxml/3.0/home.htm">CallXML</a> code. I <a href="http://blogs.voxeo.com/behindtheblog/2008/03/31/the-challenge-of-embedding-xml-into-a-wordpress-mu-blog-entry/">wrote about trying a number of different WordPress plugins</a> back in March 2008 and at the time didn&#8217;t have much luck.  When we have been including source code in blog posts, it has admittedly been using the über-kludgey way of converting all the XML tag syntax into HTML character entities, inserting non-breaking spaces, etc.  A serious kludge.</p>
<p>Over the weekend I saw <a href="http://en.support.wordpress.com/code/posting-source-code/">the recent post on the WordPress.com blog about posting source code</a> which pointed me to the excellent &#8220;<em><a href="http://wordpress.org/extend/plugins/syntaxhighlighter/">SyntaxHighlighter Evolved</a></em>&#8221; plugin from &#8220;Alex / Viper007Bond&#8221; (<a href="http://www.viper007bond.com/wordpress-plugins/syntaxhighlighter/">view his plugin page</a>) that is in turned based on the <a href="http://alexgorbatchev.com/wiki/SyntaxHighlighter">JavaScript SyntaxHighlighter package</a> from Alex Gorbatchev.  I installed it in WordPress MU, tested it out on an experimental blog I use for testing and then activated it sitewide.</p>
<p>Now, when I simply bracket VoiceXML code with &#8220;<tt>[ xml ]</tt>&#8221; and &#8220;<tt>[ /xml ]</tt>&#8221; (without the spaces), it comes out looking great. Here is an example:</p>
<hr />
<pre class="brush: xml;">

&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;vxml version = &quot;2.1&quot; &gt;

  &lt;form&gt;
    &lt;block&gt;
    &lt;prompt&gt;
      Hello World. This is my first telephone application.
    &lt;/prompt&gt;
    &lt;/block&gt;
  &lt;/form&gt;
&lt;/vxml&gt;
</pre>
<hr />
<p>It is, of course, not limited to merely XML. There are 20+ languages <a href="http://alexgorbatchev.com/wiki/SyntaxHighlighter:Brushes">listed on the SyntaxHighlighter &#8217;syntax files&#8217; page</a>. I expect that we&#8217;ll be using it now to be able to better write about the <a href="http://www.tropo.com/?utm_source=blogsite&#038;utm_medium=link&#038;utm_campaign=blogpost">Tropo.com</a> languages over on <a href="http://blogs.voxeo.com/tropo/?utm_source=blogsite&#038;utm_medium=link&#038;utm_campaign=blogpost">the Tropo blog</a>.</p>
<p><img src="http://blogs.voxeo.com/behindtheblog/files/2009/12/syntaxhighlightermenu.png" alt="syntaxhighlightermenu.png" border="0" width="241" height="149" align="right" />One aspect I quite like about the plugin is the menu you get when you move your mouse over the source code. As shown in the image to right, you can easily:</p>
<ul>
<li>view the source code in a pop-up window
<li>copy the code to your clipboard
<li>print the code
</ul>
<p>Given that we&#8217;re planning to make more tutorials available, having the ability to copy and paste the code <em>easily</em> directly from the blog post is a great feature.</p>
<p>Many kudos to the two Alex&#8217;s for making both the underlying JavaScript library and also the WordPress plugin.  And if you run a WordPress or WordPress MU site, you can <a href="http://wordpress.org/extend/plugins/syntaxhighlighter/">download the SyntaxHighlighter plugin</a> and install it in your site, too.</p>
<p><em>P.S. I should in fairness point out that a couple of colleagues have mentioned SyntaxHighlighter to me over the past few months&#8230; I just never had a chance to check it out until now.</em></p>
<hr />
<strong>UPDATE #1</strong>, a few minutes after posting: So it seems I still need to work out a kink in my own process.  I almost always write my posts offline using <a href="http://www.red-sweater.com/marsedit/">the MarsEdit editor</a> and then publish them to the blogs.voxeo.com site.  However, when I did that with this post, I wound up with code that had tags escaped as HTML character entities:</p>
<p><img src="http://blogs.voxeo.com/behindtheblog/files/2009/12/syntaxhighlighterfail-1.png" alt="syntaxhighlighterfail-1" title="syntaxhighlighterfail-1" width="550" height="212" class="aligncenter size-full wp-image-120" /></p>
<p>I had to go back into the WPMU editor on the website and paste in the correct VoiceXML code.</p>
<p>I&#8217;m not sure if the issue is with MarsEdit, my WPMU config or the SyntaxHighlighter plugin&#8230; but obviously I can&#8217;t really write posts with code in them <em>offline</em> until I figure it out&#8230;</p>
<p>&copy;2010 <a href="http://blogs.voxeo.com/behindtheblog">Behind The Blog</a>. All Rights Reserved.</p>.<img src="http://feeds.feedburner.com/~r/BehindTheBlog/~4/TCRfqYfqCTo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.voxeo.com/behindtheblog/2009/12/14/finally-embedding-xml-and-source-code-in-wordpressmuwpmu-using-the-syntaxhighlighter-plugin/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		<feedburner:origLink>http://blogs.voxeo.com/behindtheblog/2009/12/14/finally-embedding-xml-and-source-code-in-wordpressmuwpmu-using-the-syntaxhighlighter-plugin/</feedburner:origLink></item>
		<item>
		<title>WordTwit – a great way to tweet posts from WordPress MU</title>
		<link>http://feeds.voxeo.com/~r/BehindTheBlog/~3/itn7fvvLetM/</link>
		<comments>http://blogs.voxeo.com/behindtheblog/2009/12/04/wordtwit-a-great-way-to-tweet-posts-from-wordpress-mu/#comments</comments>
		<pubDate>Fri, 04 Dec 2009 18:42:52 +0000</pubDate>
		<dc:creator>Dan York</dc:creator>
				<category><![CDATA[Plugins]]></category>
		<category><![CDATA[Twitter]]></category>
		<category><![CDATA[WordPress MU]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[wordpressmu]]></category>
		<category><![CDATA[WPMU]]></category>

		<guid isPermaLink="false">http://blogs.voxeo.com/behindtheblog/?p=112</guid>
		<description><![CDATA[Back in June, I asked about what people thought the best plugin was for publishing updates to Twitter when there are new blog posts posted here in WordPress MU/WPMU.  I was then and have been using Alex King&#8217;s excellent Twitter Tools plugin for WordPress, but it was a bit like using a screwdriver to [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.bravenewcode.com/wordtwit"><img src="http://blogs.voxeo.com/behindtheblog/files/2009/12/wordtwitlogo.jpg" alt="wordtwitlogo.jpg" border="0" width="227" height="251" align="right" /></a>Back in June, I <a href="http://blogs.voxeo.com/behindtheblog/2009/06/29/what-is-the-best-twitter-plugin-for-wordpress-mu/">asked about what people thought the best plugin was for <em>publishing</em> updates to Twitter</a> when there are new blog posts posted here in WordPress MU/WPMU.  I was then and have been using Alex King&#8217;s excellent <a href="http://wordpress.org/extend/plugins/twitter-tools/">Twitter Tools plugin</a> for WordPress, but it was a bit like using a screwdriver to bang in a nail.  The Twitter Tools plugin is primarily designed to <em>capture your tweets in a blog post</em> so that you can have occasional posts on your blog site that include all your tweets.  The plugin can also <em>publish</em> tweets when you have a new blog post, but it&#8217;s real strength seems to be in pulling your tweets into your blog.</p>
<p>All I want to do is publish new tweets&#8230; I <em>don&#8217;t</em> want to create blog posts with tweets.  So I&#8217;ve known for quite some time that I&#8217;ve been using the wrong plugin for the job&#8230; but it&#8217;s worked okay, so I continued.  I tried a different plugin over on the <a href="http://developers.voiceobjects.com/">VoiceObjects Developer Blog</a>, but I haven&#8217;t been as happy with it because it tended to shorten the titles of blog posts too much when posting to Twitter.</p>
<p>However, recently my colleague Ron Blaisdell pointed me to <a href="http://www.bravenewcode.com/wordtwit/">WordTwit</a> from BraveNewCode and I have to say that it is <em>outstanding</em> at what I need it to do.  Once you install the plugin, there is a very simple configuration screen where you enter your username, password and can change the format of what gets tweeted out:</p>
<div style="text-align:center;"><img src="http://blogs.voxeo.com/behindtheblog/files/2009/12/wordtwit-msg1.jpg" alt="wordtwit-msg1.jpg" border="0" width="401" height="107" /></div>
<p>In our case, I chose to edit the message to be &#8220;<tt>[title] - [link]</tt>&#8221; so that there is no prefix on any of the tweets.</p>
<p>You then can choose which URL shortener you want to use &#8211; I chose bit.ly:</p>
<div style="text-align:center;"><img src="http://blogs.voxeo.com/behindtheblog/files/2009/12/wordtwit-bitly1-1.jpg" alt="wordtwit-bitly1-1.jpg" border="0" width="401" height="94" /></div>
<p>After you save the configuration options, you then can go back in and enter your Bit.ly login and API key:</p>
<div style="text-align:center;"><img src="http://blogs.voxeo.com/behindtheblog/files/2009/12/wordtwit-bitly2.jpg" alt="wordtwit-bitly2.jpg" border="0" width="400" height="96" /></div>
<p>This makes it so that all of your shortened URLs then show up in your bit.ly account where you can see statistics around who has clicked on them, etc.</p>
<p>Because we use Google Analytics, I also checked off an option to add UTM tracking codes to URLs so that I can find any inbound traffic in GA easily.</p>
<p>I&#8217;ve been using WordTwit here on blogs.voxeo.com for a bit now and have been very pleased with how well it works.  I haven&#8217;t yet installed it on the VO Developer Blog but will be doing so soon.  Kudos (and <em>thanks!</em>) to the folks at BraveNewCode for developing such a great plugin. </p>
<p>Have you tried WordTwit?  Or what plugin do you use for updating Twitter?</p>
<p>&copy;2010 <a href="http://blogs.voxeo.com/behindtheblog">Behind The Blog</a>. All Rights Reserved.</p>.<img src="http://feeds.feedburner.com/~r/BehindTheBlog/~4/itn7fvvLetM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://blogs.voxeo.com/behindtheblog/2009/12/04/wordtwit-a-great-way-to-tweet-posts-from-wordpress-mu/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://blogs.voxeo.com/behindtheblog/2009/12/04/wordtwit-a-great-way-to-tweet-posts-from-wordpress-mu/</feedburner:origLink></item>
	</channel>
</rss>
