<?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>Molindo Techblog &#187; Wordpress</title>
	<atom:link href="http://techblog.molindo.at/category/wordpress/feed" rel="self" type="application/rss+xml" />
	<link>http://techblog.molindo.at</link>
	<description>Molindo Techblog - formerly known as talk-on-tech.blogspot.com</description>
	<lastBuildDate>Fri, 05 Feb 2010 16:06:12 +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>Talk On Tech now Molindo Techblog</title>
		<link>http://techblog.molindo.at/2009/01/talk-on-tech-now-molindo-techblog.html</link>
		<comments>http://techblog.molindo.at/2009/01/talk-on-tech-now-molindo-techblog.html#comments</comments>
		<pubDate>Fri, 23 Jan 2009 10:00:24 +0000</pubDate>
		<dc:creator>Stefan Fußenegger</dc:creator>
				<category><![CDATA[Compass]]></category>
		<category><![CDATA[SVN]]></category>
		<category><![CDATA[Wicket]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://tech.molindo.at/?p=84</guid>
		<description><![CDATA[Talk On Tech (talk-on-tech.blogspot.com &#8211; the tech blog you truly love, don&#8217;t you?) was our nice, green home since August 2007. Now, after 1.5 years it was time to move on &#8230; Well, okay, we just want to consolidate all our blogs on a single self-hosted platform. In the course of doing that, we also [...]]]></description>
			<content:encoded><![CDATA[<p>Talk On Tech (talk-on-tech.blogspot.com &#8211; the tech blog you truly love, don&#8217;t you?) was our nice, green home since August 2007. Now, after 1.5 years it was time to move on &#8230; Well, okay, we just want to<a href="http://tech.molindo.at/2008/12/virtual-wordpress-hosts-made-easy.html"> consolidate all our blogs on a single self-hosted platform</a>. In the course of doing that, we also changed the name from Talk on Tech (Let&#8217;s create a blog! How do we name it? What about &#8220;Talk on Tech&#8221;? Yeah, that name is free!) to Molindo Techblog (where Molindo is the name of <a href="http://www.molindo.at/">our very own startup</a>).</p>
<p>If it comes to new posts, We have a lot of ideas but not enough time to elaborate them all. Some ideas are:<br />
<span id="more-84"></span></p>
<ul>
<li>An easy to use <a title="Wicket" href="http://wicket.apache.org">Wicket</a> component for advanced Google Analytics (Outgoing link tracking, search tracking, AJAX events tracking, user defined variables, &#8230;)</li>
<li>Faster batch indexing for <a title="Compass Project" href="http://compass-project.org/">Compass</a></li>
<li>Managing <a title="Subversion" href="http://subversion.tigris.org/">Subversion</a> user access privileges with <a title="Drupal" href="http://drupal.org/">Drupal</a> &#8211; and probably how to move to Wordpress afterwards <img src='http://techblog.molindo.at/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </li>
<li>Wicket <a title="Blueprint CSS Framework" href="http://www.blueprintcss.org/">Blueprint</a> integration</li>
<li>How to apply some on-site SEO with a little help of Wicket</li>
<li>Unleashing the full power of Wicket with <a title="Cometd project" href="http://cometdproject.dojotoolkit.org/">Cometd</a> using <a title="wicketstuff-dojo-1.1" href="http://wicketstuff.org/confluence/display/STUFFWIKI/wicketstuff-dojo-1.1">wicketstuff-dojo-1.1</a> and <a title="&quot;Wicket: Loose Coupling of Componens for Ajax Updates&quot; on Molindo Techblog" href="http://tech.molindo.at/2008/09/wicket-loose-coupling-of-componens-for-ajax-updates.html">loose coupling of components</a>.</li>
</ul>
<p>If you particulary like one of the ideas post a wish in the comments &#8211; and think about enforcing your wish with a donation: <img src='http://techblog.molindo.at/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p><form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="2705854">
<input type="image" src="https://www.paypal.com/en_US/i/btn/x-click-but21.gif" border="0" name="submit" alt="">
<img alt="" border="0" src="https://www.paypal.com/de_DE/i/scr/pixel.gif" width="1" height="1">
</form></p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.molindo.at/2009/01/talk-on-tech-now-molindo-techblog.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Virtual WordPress Hosts Made Easy</title>
		<link>http://techblog.molindo.at/2008/12/virtual-wordpress-hosts-made-easy.html</link>
		<comments>http://techblog.molindo.at/2008/12/virtual-wordpress-hosts-made-easy.html#comments</comments>
		<pubDate>Mon, 15 Dec 2008 21:16:00 +0000</pubDate>
		<dc:creator>Stefan Fußenegger</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[apache]]></category>

		<guid isPermaLink="false">http://tech.molindo.at/2008/12/virtual-wordpress-hosts-made-easy.html</guid>
		<description><![CDATA[Currently, we are planing to consolidate all our blogs that we (quite carelessly) created all over the internet. At the moment, we have

three blogs hosted on Blogger (1, 2, 3)
two blogs running on their own WordPress (1, 2)
three private blogs running on Blogger and Serendipity
and one or two new ones to come

All in all, there&#8217;s [...]]]></description>
			<content:encoded><![CDATA[<p>Currently, <a href="http://www.molindo.at/">we</a> are planing to consolidate all our blogs that we (quite carelessly) created all over the internet. At the moment, we have</p>
<ul>
<li>three blogs hosted on Blogger (<a href="http://blog.songtexte.com/">1</a>, <a href="http://blog.setlist.fm/">2</a>, <a href="http://talk-on-tech.blogspot.com/">3</a>)</li>
<li>two blogs running on their own <a href="http://www.wordpress.org/">WordPress</a> (<a href="http://www.internetszene.com/">1</a>, <a href="http://www.internetszene.at/">2</a>)</li>
<li>three private blogs running on Blogger and <a href="http://www.s9y.org/">Serendipity</a></li>
<li>and one or two new ones to come</li>
</ul>
<p>All in all, there&#8217;s quite a bit of blogging going on <img src='http://techblog.molindo.at/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Yesterday, I was looking into solutions on how to host all those blogs on a single installation of WordPress.<br />
<span id="more-32"></span><br />
The first thing I stumbled upon was <a href="http://mu.wordpress.org/">WordPress MU</a>. However, I didn&#8217;t have a good feeling about it. I wasn&#8217;t sure about compatibility of plugins, themes or tutorials and the like. Well, just the normal problems you have if you do things differently than everybody else.</p>
<p>Still I like doing things differently <img src='http://techblog.molindo.at/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  That&#8217;s why I started playing around with an <a href="http://www.domainsmalltalk.com/2008/09/21/wordpress-multidomain-faehig/">idea suggested by Richard Martin (german only)</a>. He suggested to use <a href="http://at.php.net/manual/en/reserved.variables.server.php">$_SERVER['HTTP_HOST']</a> inside <a href="http://codex.wordpress.org/Editing_wp-config.php">wp-config.php</a> in order to get a <a href="http://codex.wordpress.org/Editing_wp-config.php#table_prefix">unique $table_prefix</a> for each <a href="http://httpd.apache.org/docs/2.2/en/vhosts/">virtual host</a>. While I liked the idea to dynamically create the prefix, I didn&#8217;t like that the wp-config.php file would become useless outside a web request (what about cron jobs?). So I came up with the following snippet of code:</p>

<div class="wp_syntax"><div class="code"><pre class="php" style="font-family:monospace;"><span style="color: #000088;">$table_prefix</span> <span style="color: #339933;">=</span> <span style="color: #990000;">getenv</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WORDPRESS_PREFIX'</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span>
<span style="color: #b1b100;">if</span> <span style="color: #009900;">&#40;</span><span style="color: #990000;">empty</span><span style="color: #009900;">&#40;</span><span style="color: #000088;">$table_prefix</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span>
    <span style="color: #000088;">$table_prefix</span> <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;wp_&quot;</span><span style="color: #339933;">;</span>
<span style="color: #009900;">&#125;</span>
<span style="color: #990000;">define</span> <span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WPLANG'</span><span style="color: #339933;">,</span> <span style="color: #990000;">getenv</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">'WORDPRESS_LANG'</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></pre></div></div>

<p>Now, it&#8217;s easy to change the prefix (and language) with an environment variable. In order to use this with Apache Httpd do the following:</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;VirtualHost</span> *:80<span style="color: #000000; font-weight: bold;">&gt;</span></span>
&nbsp;
ServerName foo.example.com
#ServerAlias www.foo.example.com, oldfoo.example.com
&nbsp;
ServerAdmin admin@example.com
&nbsp;
DocumentRoot /path/to/wordpress
&nbsp;
CustomLog &quot;| /usr/bin/cronolog /var/log/wordpress/foo/%Y-%m-access.log&quot; common
&nbsp;
DirectoryIndex index.php
&nbsp;
# Wordpress Config
SetEnv WORDPRESS_PREFIX foo_
SetEnv WORDPRESS_LANG de_DE
&nbsp;
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;Location</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
Order Deny,Allow
Allow from all
&nbsp;
AllowOverride All
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/Location<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/VirtualHost<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>It might still take a little fine tuning, but it&#8217;s working perfectly so far. Only a single WordPress installation to maintain, a single plugin and theme repository for all blogs and a single database to backup. Quite cool if you&#8217;re the only admin of all blogs. It might also be cool to write a WordPress plugin to create virtual WordPress hosts from the admin console &#8211; I leave this up as an exercise to the reader though <img src='http://techblog.molindo.at/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>The only thing to worry about is that some plugins write to the file system directly (e.g. <a href="http://wordpress.org/extend/plugins/google-sitemap-generator/">Google XML Sitemaps</a>). Those will conflict with each other as all blogs share the same directory on the file system.</p>
<p>PS: This might have been the last post on blogger. Which means that it might have been the last time, you&#8217;ve had the pleasure to enjoy the lovely green of this blog <img src='http://techblog.molindo.at/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://techblog.molindo.at/2008/12/virtual-wordpress-hosts-made-easy.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
