<?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>Interconnect IT - WordPress Consultants, Web Development and Web Design</title>
	<atom:link href="http://www.interconnectit.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.interconnectit.com</link>
	<description></description>
	<lastBuildDate>Sun, 18 Jul 2010 16:04:54 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>WordCamp UK 2010 Live Discussion</title>
		<link>http://www.interconnectit.com/877/wordpress-in-big-media-live-discussion/</link>
		<comments>http://www.interconnectit.com/877/wordpress-in-big-media-live-discussion/#comments</comments>
		<pubDate>Sat, 17 Jul 2010 15:51:11 +0000</pubDate>
		<dc:creator>David Coveney</dc:creator>
				<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.interconnectit.com/?p=877</guid>
		<description><![CDATA[For everyone who followed the talks at WordCampUK 2010 by David Coveney of Interconnect IT.
I will add my presentations here in a little bit.
]]></description>
			<content:encoded><![CDATA[<p>For everyone who followed the talks at WordCampUK 2010 by David Coveney of Interconnect IT.</p>
<p>I will add my presentations here in a little bit.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.interconnectit.com/877/wordpress-in-big-media-live-discussion/feed/</wfw:commentRss>
		<slash:comments>42</slash:comments>
		</item>
		<item>
		<title>WordPress 3.0 Multisite With Multiple Domains Setup</title>
		<link>http://www.interconnectit.com/840/wordpress-3-0-multisite-with-multiple-domains-setup/</link>
		<comments>http://www.interconnectit.com/840/wordpress-3-0-multisite-with-multiple-domains-setup/#comments</comments>
		<pubDate>Fri, 19 Mar 2010 17:54:25 +0000</pubDate>
		<dc:creator>James Whitehead</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[3.0]]></category>
		<category><![CDATA[domains]]></category>
		<category><![CDATA[MU]]></category>
		<category><![CDATA[multisite]]></category>

		<guid isPermaLink="false">http://www.interconnectit.com/?p=840</guid>
		<description><![CDATA[<img class="alignleft size-thumbnail wp-image-666" title="interconnectit-we-do-stuff" src="http://www.interconnectit.com/wp-content/uploads/2009/08/interconnectit-we-do-stuff-150x150.png" alt="interconnectit-we-do-stuff" width="150" height="150" />WordPress 3.0 multisites lets you easily publish multiple sites, on multiple domains, within one installation.  Once done you will have a very flexible and powerful server.]]></description>
			<content:encoded><![CDATA[<p>WordPress 3.0 multisites lets you easily publish multiple sites, on multiple domains, within one installation.  This is a time-saving option for those of us who need to manage multiple separate domains running WordPress, but it does take a little knowledge and file access to set up, and at the moment isn&#8217;t for anyone who doesn&#8217;t consider themselves technically proficient.</p>
<p>You will need to be able to modify your vhosts file in order to do this, but once done you will have a very flexible and powerful server.</p>
<p>This article is written for 3.0 alpha, as of the current build on 19th March 2010.</p>
<h3>Multi sites mode</h3>
<ol>
<li>Install Wordpress 3.0 and install as a normal Wordpress.</li>
<li>Add define(&#8217;WP_ALLOW_MULTISITE&#8217;, true); near the top of wp-config.php</li>
<li>Log into the admin go to the tools/Nertwork menu.</li>
<li>If it asks you to deactivate all plug-ins do so otherwise go straight ahead and set up multi sites as sub-domains and fill in the other details as needed as needed.</li>
<li>Make a note of the changes needed to wp-config.php and .htaccess and make the changes.</li>
<li>You should now be in multi-site mode.</li>
</ol>
<h3>Adding a new domain</h3>
<ol>
<li>Now we’re in multisite mode login as admin go to super admin/sites</li>
<li>Add a new site &#8211; the address can be anything you like just make it unique and make it something you can remember so we can find it easier in the db.</li>
<li>Make sure your domain is pointing at the server if not do so and wait for it to propagate.</li>
<li>Add Vhost alias to the root domain. So if in the Vhost file you have ServerName mywordpres3root.com you would add ServerAlias mynewwordpress.com beneath it.  Alternatively, you can use a wildcard here, but in our implementations there are good reasons why we prefer to specify the host aliases.</li>
<li>Open up the db for editing and add a new row to wp_site table
<ol>
<li>site_id, domain and path.
<ol>
<li> i.      site_id, will be a new unique id, remember it</li>
<li> ii.      domain, should be set to the new domain name added above.</li>
<li> iii.      path should be /</li>
</ol>
</li>
</ol>
</li>
<li>Change the row in wp_blogs that matches your new site and make a note of the blog_id.
<ol>
<li>Change site_id to the new site_id created above.</li>
<li>Change domain to our new domain name.</li>
</ol>
</li>
<li>Open up wp_[blog_id]_options table.
<ol>
<li>Change siteurl to the new domain name.</li>
<li>Change home to match the new domain name.</li>
<li>Change the fileupload_url to match the new domain.</li>
</ol>
</li>
<li>Your new site should now be ready, you’ll need to go in and set all the options for the domain now. If you wanted a clone of the root sites options you could copy all the rows in wp_sitemeta with a site_id matching the site you wanted to clone and just change the site_id to the new site.</li>
</ol>
<p>The instructions above are obviously given without any guarantee &#8211; use at your own risk, especially if converting your site from single site to multisites.  If you have any feedback or better approaches then do let us know in the comments below.</p>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 0px; width: 1px; height: 1px; overflow: hidden;">Wordpress 3.0 with multiple domains.<br />
Multi sites mode<br />
1.<br />
Install Wordpress 3.0 and install as a normal Wordpress.<br />
2.<br />
Add define(&#8217;WP_ALLOW_MULTISITE&#8217;, true); near the top of wp-config.php<br />
3.<br />
Log into the admin go to the tools/Nertwork menu.<br />
4.<br />
If it asks you to deactivate all plug-ins do so otherwise go straight ahead and set up<br />
multi sites as sub-domains and fill in the other details as needed as needed.<br />
5. Make a note of the changes needed to wp-config.php and .htaccess and make the<br />
changes.<br />
6. You should now be in multi-site mode.<br />
Adding a new domain<br />
1. Now we’re in multisite mode login as admin go to super admin/sites<br />
2. Add a new site the address can be anything you like just make it unique and make it<br />
something you can remember so we can find it easier in the db.<br />
3. Make sure your domain is pointing at the server if not do so and wait for it to<br />
replicate.<br />
4. Add Vhost alias to the root domain. So if in the Vhost file you have ServerName<br />
mywordpres3root.com you would add ServerAlias mynewwordpress.com beneath it.<br />
5. Open up the db for editing and add a new row to wp_site table<br />
a. site_id, domain and path.<br />
i. site_id, will be a new unique id, remember it<br />
ii.domain, should be set to the new domain name added above.<br />
iii.<br />
path should be /<br />
6. Change the row in wp_blogs that matches your new site and make a note of the<br />
blog_id.<br />
a. Change site_id to the new site_id created above.<br />
b. Change domain to our new domain name.<br />
7. Open up wp_[blog_id]_options table.<br />
a. Change siteurl to the new domain name.<br />
b. Change home to match the new domain name.<br />
c. Change the fileupload_url to match the new domain.<br />
8. Your new site should now be ready, you’ll need to go in and set all the options for<br />
the domain now. If you wanted a clone of the root sites options you’d could copy all<br />
the rows in wp_sitemeta with a site_id matching the site you wanted to clone and just<br />
change the site_id to the new site.</div>
]]></content:encoded>
			<wfw:commentRss>http://www.interconnectit.com/840/wordpress-3-0-multisite-with-multiple-domains-setup/feed/</wfw:commentRss>
		<slash:comments>18</slash:comments>
		</item>
		<item>
		<title>Using MySQL Workbench with XAMPP</title>
		<link>http://www.interconnectit.com/764/using-mysql-workbench-with-xampp/</link>
		<comments>http://www.interconnectit.com/764/using-mysql-workbench-with-xampp/#comments</comments>
		<pubDate>Wed, 13 Jan 2010 23:01:33 +0000</pubDate>
		<dc:creator>David Coveney</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[mySQL]]></category>
		<category><![CDATA[Workbench]]></category>
		<category><![CDATA[XAMPP]]></category>

		<guid isPermaLink="false">http://www.interconnectit.com/?p=764</guid>
		<description><![CDATA[<a href="http://www.interconnectit.com/764/using-mysql-wo…nch-with-xampp/"><img class="alignleft size-thumbnail wp-image-759" title="media_1263422064481.png" src="http://www.interconnectit.com/wp-content/uploads/2010/01/media_1263422064481-150x127.png" alt="media_1263422064481.png" width="150" height="127" /></a>This is a slight departure from our usual posts as it's not about WordPress.  However, if you're developing with WordPress on a Windows PC there's a good chance you're using XAMPP as your platform.
]]></description>
			<content:encoded><![CDATA[<p><!-- Start ScreenSteps Content --></p>
<div class="LessonContent">
<div class="LessonSummary">
<p><em><strong>Please Note, it&#8217;s been pointed out that I need to make it clear that this covers version 5.2, the developer release, of MySQL Workbench.  The principles still apply to 5.1, but it&#8217;s a different process that I&#8217;ve not documented at all.  Apologies for any confusion.</strong></em></p>
<p>This is a slight departure from our usual posts as it&#8217;s not about WordPress.  However, if you&#8217;re developing with WordPress on a Windows PC there&#8217;s a good chance you&#8217;re using XAMPP as your platform.</p>
<p>I always liked the MySQL Administrator and MySQL Query Browser tools, but these have recently been deprecated and will not be updated any more.<span id="more-764"></span> Instead, MySQL have released the MySQL Workbench, which is an all-in-one style DB tool that includes query browsing, database management and, interestingly, an entity relationship modeller.  The latter is useful if you&#8217;re designing databases.  In WordPress development you don&#8217;t do too much of that as it&#8217;s designed as a database light application.  A shame, because a better DB structure would really extend its power and reduce the frankly vast amount of code that&#8217;s invoked.  But that&#8217;s for another conversation!</p>
<p>Anyway, you&#8217;ll get the Workbench application and then find that it&#8217;s far harder to get going than the old tools.  But don&#8217;t be put off, once you work out a few simple steps you&#8217;ll be off.</p>
<p>It&#8217;s worth noting that this is as new to me as it is to you &#8211; there may be better ways to do this, and I&#8217;ve made certain assumptions about how you use XAMPP.  If you have any feedback, please comment below!</p></div>
<div class="LessonStep top">
<h3 class="StepTitle">Create a New Server Instance</h3>
<div class="StepImage"><img src="http://www.interconnectit.com/wp-content/uploads/2010/01/media_1263421672264.png" alt="media_1263421672264.png" width="540" height="287" /></div>
<div class="StepInstructions">
<p>Start Workbench and you&#8217;ll be presented with a dashboard.  Select New Server Instance.</p></div>
</div>
<div class="LessonStep top">
<h3 class="StepTitle">Host machine is LocalHost</h3>
<div class="StepImage"><img src="http://www.interconnectit.com/wp-content/uploads/2010/01/media_1263421812966.png" alt="media_1263421812966.png" width="540" height="186" /></div>
</div>
<div class="LessonStep top">
<h3 class="StepTitle">OS is Windows</h3>
<div class="StepImage"><img src="http://www.interconnectit.com/wp-content/uploads/2010/01/media_1263421896152.png" alt="media_1263421896152.png" width="540" height="284" /></div>
<div class="StepInstructions">
<p>You&#8217;ll need to check which version of MySQL you have installed &#8211; 5 or 5.1</p></div>
</div>
<div class="LessonStep top">
<h3 class="StepTitle">Don&#8217;t Worry About the Error</h3>
<div class="StepImage"><img src="http://www.interconnectit.com/wp-content/uploads/2010/01/media_1263421950071.png" alt="media_1263421950071.png" width="540" height="181" /></div>
<div class="StepInstructions">
<p>XAMPP uses a .cnf file, not .ini  No idea why, just the way they&#8217;ve compiled it, I guess.  Remember, we&#8217;re not running MySQL from a standard build.  Just click next.</p></div>
</div>
<div class="LessonStep top">
<h3 class="StepTitle">Connection Values</h3>
<div class="StepImage"><img src="http://www.interconnectit.com/wp-content/uploads/2010/01/media_1263422064481.png" alt="media_1263422064481.png" width="540" height="126" /></div>
<div class="StepInstructions">
<p>Click and Open Connection Manager</p></div>
</div>
<div class="LessonStep top">
<h3 class="StepTitle">Create a Connection Called localhost</h3>
<div class="StepImage"><img src="http://www.interconnectit.com/wp-content/uploads/2010/01/media_1263422141981.png" alt="media_1263422141981.png" width="540" height="338" /></div>
<div class="StepInstructions">
<p>Assuming you have the default XAMPP for development purposes then you can use the settings exactly as above.  If you&#8217;ve assigned root a password you&#8217;ll need to completely the fields appropriately.  Click Test Connection to make sure all is well.  I like to use the Local Socket/Pipe, but you can use TCP/IP also.</p>
<p>The next step in the wizard will test the connection.  All should be well and if not you&#8217;ve made a mistake.</p></div>
</div>
<div class="LessonStep top">
<h3 class="StepTitle">Config File</h3>
<div class="StepImage"><img src="http://www.interconnectit.com/wp-content/uploads/2010/01/media_1263422491464.png" alt="media_1263422491464.png" width="540" height="246" /></div>
<div class="StepInstructions">
<p>This is the first point where you deviate from &#8216;normal&#8217;.  If you click check path before setting it correctly, nothing will work.  So, you need to know where XAMPP is installed.  If it&#8217;s in the root of your T: drive as it is for our dev machines, then you need to enter the following path:  T:\xampp\mysql\bin\my.cnf  Change this according to where you placed XAMPP.  If you can&#8217;t work this path out, maybe you should try a different vocation?</p>
<p>Click Next</p></div>
</div>
<div class="LessonStep top">
<h3 class="StepTitle">Commands to Manage MySQL Server</h3>
<div class="StepImage"><img src="http://www.interconnectit.com/wp-content/uploads/2010/01/media_1263422767403.png" alt="media_1263422767403.png" width="540" height="185" /></div>
<div class="StepInstructions">
<p>This is where it gets a little more fun.  The first two are quite easy to work out, but the third is quite different to the default.  Maybe there&#8217;s a better command, but it was the best I could think of at the time.</p>
<p>As you can see, the commands are:</p>
<p>T:\xampp\mysql\bin\mysqld &#8211;defaults-file=T:\xampp\mysql\bin\my.cnf &#8211;standalone &#8211;console<br />
T:\xampp\mysql\bin\mysqladmin &#8211;user=pma &#8211;password= shutdown<br />
mysqladmin &#8211;user=pma &#8211;password= ping | findstr alive</p>
<p>You may also want to run the commands in the context of administrator in many cases, but I don&#8217;t run on my machine as administrator (I&#8217;m security conscious) and don&#8217;t have the need to run these as admin, so it&#8217;s not strictly necessary to tick the box.  But for a development machine this isn&#8217;t a worry either way.</p></div>
</div>
<div class="LessonStep top">
<h3 class="StepTitle">Name the Instance</h3>
<div class="StepImage"><img src="http://www.interconnectit.com/wp-content/uploads/2010/01/media_1263422882590.png" alt="media_1263422882590.png" width="540" height="95" /></div>
<div class="StepInstructions">
<p>Simples.</p>
<p>Finish off the wizard and you&#8217;ll have a new instance.  As long as you start MySQL in advance with XAMPP, it will work as expected.  Read the note below for more information on why.</p></div>
</div>
<div class="LessonStep top">
<h3 class="StepTitle">A Note About Starting and Stopping</h3>
<div class="StepInstructions">
<p>I have to admit that with the current settings I always start MySQL from the XAMPP control panel or shortcuts.  If I stop MySQL from the Workbench it can stop it, but it will never notice that it&#8217;s stopped.  This is less of an issue when you run MySQL as a service, and you can use the default commands given by the wizard, but running Apache and MySQL as a service can be a painful approach with XAMPP so few people bother.  If I can find time to work out a slicker approach, or you can tell me of one, then I&#8217;ll update this guide.</p>
<p>I hope this guide has been useful.  Thanks for reading!</p></div>
</div>
</div>
<p><!-- End ScreenSteps Content --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.interconnectit.com/764/using-mysql-workbench-with-xampp/feed/</wfw:commentRss>
		<slash:comments>34</slash:comments>
		</item>
		<item>
		<title>We&#8217;re Moving!</title>
		<link>http://www.interconnectit.com/730/were-moving/</link>
		<comments>http://www.interconnectit.com/730/were-moving/#comments</comments>
		<pubDate>Sat, 14 Nov 2009 15:39:39 +0000</pubDate>
		<dc:creator>David Coveney</dc:creator>
				<category><![CDATA[Business]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://www.interconnectit.com/?p=730</guid>
		<description><![CDATA[<a rel="attachment wp-att-736" href="http://www.interconnectit.com/730/were-moving/"><img class="alignleft size-thumbnail wp-image-736" title="IC2.8a5e1998637817438ee689ca146caef6" src="http://www.interconnectit.com/wp-content/uploads/2009/11/IC2.8a5e1998637817438ee689ca146caef6-150x150.png" alt="IC2.8a5e1998637817438ee689ca146caef6" width="150" height="150" /></a>New offices = new opportunities.  We're pretty excited about this....]]></description>
			<content:encoded><![CDATA[<p>After nearly three years at the offices in Slater Street, we&#8217;ve reached the stage where we need better, more professional facilities than those offered by simple office rent.</p>
<p>Slater Street is a characterful place in the middle of Liverpool&#8217;s Artistic Quarter.  It also has lots of bars and some amazing people.  But with that comes noise, occasional mess, and relatively few facilities.</p>
<h3>
<div class="wp-caption alignright" style="width: 271px"><img title="Liverpool Science Park" src="http://www.liverpoolsciencepark.co.uk/uploads/news/large//IC2.8a5e1998637817438ee689ca146caef6.png" alt="Liverpool Science Park Innovation Centre 2" width="261" height="223" /><p class="wp-caption-text">Liverpool Science Park Innovation Centre 2</p></div>
<p>Liverpool Science Park</h3>
<p>So, to celebrate our continued growth, to give us quieter on-site training facilities, conference facilities and a stronger infrastructure, we&#8217;ve made the decision to move into Liverpool Science Park, Innovation Centre 2.  This will give us high quality, flexible office infrastructure, access to Liverpool University&#8217;s expertise, and much more besides.</p>
<h3>The Future</h3>
<p>This is all a part of plans for the company.  Interconnect IT has had a successful 2009, with a growth in revenues anticipated to be approximately 75% over 2008 and the same growth for the 2010 financial year.  We have established ourselves firmly in the News &amp; Media sectors with clients such as Informa Group and Telegraph Media Group.  We are also growing our Intranet business and developing new intranet technologies to help business improve their internal communications.</p>
<blockquote><p>Our success means we need more space, more people and more ancillary services such as a staffed reception, on-site training and conference facilities, modern phone system and more.  Liverpool Science Park provides this, along with excellent business support facilities.  That coupled with being able to work closely with other leading technology companies in Liverpool gives us a very bright outlook even in these difficult times.</p>
<p style="text-align: right;"><em> &#8211; David Coveney, Director.</em></p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.interconnectit.com/730/were-moving/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress Distributions are the Future</title>
		<link>http://www.interconnectit.com/724/wordpress-distributions-are-the-future/</link>
		<comments>http://www.interconnectit.com/724/wordpress-distributions-are-the-future/#comments</comments>
		<pubDate>Sat, 14 Nov 2009 15:15:52 +0000</pubDate>
		<dc:creator>David Coveney</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[Business]]></category>
		<category><![CDATA[distributions]]></category>
		<category><![CDATA[growth]]></category>
		<category><![CDATA[packages]]></category>

		<guid isPermaLink="false">http://www.interconnectit.com/?p=724</guid>
		<description><![CDATA[<a rel="attachment wp-att-726" href="http://www.interconnectit.com/?attachment_id=726"><img class="alignleft size-thumbnail wp-image-726" title="dandy-pink" src="http://www.interconnectit.com/wp-content/uploads/2009/11/dandy-pink-150x142.png" alt="dandy-pink" width="150" height="142" /></a>WordPress comes in only one flavour.  Why?  It has so many diverse uses, and there are so many plugins, that distributions could be the way forward.]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;ve been involved in WordPress over the past few years you&#8217;ll have seen it change from being an excellent but limited blogging platform into something on which you can build much more complex websites.  We ourselves have been involved in some pretty sophisticated uses of the system &#8211; for example, over at<a title="Telecoms news" href="http://www.telecoms.com"> Telecoms.com</a> which makes extensive use of various elements of WP functionality as well as having quite a lot of custom code bolted in.<span id="more-724"></span></p>
<p>WordPress is, frankly, very good &#8211; the focus on the user experience helps make it so, even if architecturally it has its limitations.  This has led to stellar success for the platform and is a credit to everyone involved.</p>
<div id="attachment_726" class="wp-caption alignright" style="width: 171px"><img class="size-full wp-image-726" title="dandy-pink" src="http://www.interconnectit.com/wp-content/uploads/2009/11/dandy-pink.png" alt="A WP distro could have a different logo..." width="161" height="142" /><p class="wp-caption-text">A WP distro could have a different logo...</p></div>
<p>However, over the past year or so there have been a number of controversies &#8211; there was the pulling of themes from the <a title="WordPress pull themes" href="http://justintadlock.com/archives/2008/12/11/automattic-putting-the-boot-to-premium-theme-developers">WordPress.org repository if there was even a hint of its author profiting from non GPL themes</a> &#8211; even if the profiting was just from an affiliate link.  Then there&#8217;s the <a title="WordPress blacklisting" href="http://wpmu.org/blacklisted-by-matt-wordpress/">airbrushing out of Edublogs&#8217; and WPMU.org&#8217;s links</a> from various official WordPress pages.</p>
<p>This has caused some friction in the WordPress based industry.  Folk just don&#8217;t know what&#8217;s happening.  In part that could be seen as being a problem caused by differences in business needs and approaches.  Ultimately, <a href="http://ma.tt">Matt Mullenweg</a> is the leader of both the <a title="WordPress.org" href="http://wordpress.org">open source WordPress application</a>, and the leader of <a href="http://automattic.com">Automattic</a>.  The latter is a commercial company, funded with a significant amount of venture capital.  It has to make money.  It also funds a lot of WP development, releases a lot of code, and evangelises the product.  But what we do all have to accept is that Automattic&#8217;s business needs are not necessarily the same as every other business in the WordPress market.</p>
<h3>Automattic are Good for Us</h3>
<p>Yes, they are.  All of us running businesses based around WP benefit from their input.  Automattic also benefits when we contribute themes, plugins and so on.</p>
<p>Thing is, it&#8217;s not their job to run our business for us.  The relationship between your WordPress business and Automattic is actually pretty loose.  They&#8217;re happy for you to run whatever business you like around the product &#8211; and if they like you, they may even promote you a little.  Their choice.  If they stop promoting you, then that&#8217;s actually just tough.  I whinged about this when it happened a year ago, but after quite a long e-mail exchange with Matt himself, and then even meeting him in person, I started to realise that I had no particular right to expect favours from him or his company.  If I wanted promotion from him, I had to make him happy.  We changed approach, he promoted us.  Simple.</p>
<h3>Add Value to Extract Value</h3>
<p>In developing an awesome theme or plugin, whether GPL or not, you add some value to the WordPress ecosystem.  Just a little, but it&#8217;s there.  But you&#8217;ve probably extracted at least as much already.  So don&#8217;t pat yourself on the back too hard.</p>
<p>What you need to do is to do things that Automattic won&#8217;t or can&#8217;t do.  And for that, I&#8217;m thinking distributions.  Bundled up, pre-configured editions of WordPress that have all the plugins and configurations that are required for specific purposes.</p>
<p>Some of what we&#8217;ve developed is very specific to the News &amp; Media industry.  If we release a suite of plugins to the <a href="http://wordpress.org/extend/">WordPress.org repository</a> and people download them individually they may not work in a way that would be expected.  Instructions could help, but in effect you&#8217;re asking a user to build up their own site.  People don&#8217;t want to do that.  It&#8217;s complicated and demands a good understanding of the system, the plugins, and the dependent themes.</p>
<h3>It&#8217;s About Making it Easy</h3>
<p>In Linux, there is still something of a perception that it&#8217;s a DIY system.  And really, that was the case in the early days &#8211; you took the Kernel, added whatever bits you needed, and you were off.  It was basic, a little clunky, but very flexible.  However, most people&#8217;s needs are generally fairly similar.  Corporates have one set of needs, people with old machines another, private users another again and so on.</p>
<p>What happened to address this, and where the real value in Linux came, was when other companies started to build businesses around specialist distributions.  RedHat has their distributions, which do well in the corporate and web serving sphere.  Ubuntu is doing fabulously well on the smaller user desktop.</p>
<p>These distributions make life easier for users and clients because they know their needs, and then it&#8217;s just a case of finding the nearest match.  Linux is not the answer to their problems &#8211; the bundled up solutions are the answer.  You can then issue packages of software designed for those distributions.</p>
<h3>It&#8217;s About Business</h3>
<p>Ultimately, we all need to succeed in order to invest in our businesses and feed ourselves.  We can enjoy coding for pleasure, but you can&#8217;t enjoy it if your house is unheated and your children going out in bare feet.  There&#8217;s a myth in some sectors of the GPL industry that it&#8217;s all about giving stuff away.  It&#8217;s not &#8211; a lot about the GPL is actually about helping fellow developers to run their businesses.  Coders have shared code freely for years &#8211; the GPL is just a formalisation of the developer&#8217;s mindset.</p>
<h3>How it Could Work With WordPress</h3>
<p>With WordPress, there isn&#8217;t much money to be made in plugins right now.  Themes have done a little bit better, but they&#8217;re a more consumer oriented product which suit certain purposes.  Sometimes the themes bundle plugins to help things along.  Sometimes they don&#8217;t.  But the business behind all of these is based purely on supporting the theme.  For everything else, the consumer is on their own.  Worse still, if they use a suite of plugins (premium or otherwise) they may have to deal with various entities in order to get support.  It&#8217;s a nightmare for a company where complexity in products is undesirable.</p>
<p>What many companies really just want is simplicity.  Money isn&#8217;t necessarily the problem.  They&#8217;re running businesses worth millions or even billions.  If a core component of that business (a website, an intranet, whatever) fails or leaves them stranded then they have big big problems.</p>
<h3>Create Confidence</h3>
<p>So what I believe will come is a marketplace where some companies will offer WordPress distributions suited to particular tasks.  Some will be for heavy marketing, others high-profile bloggers, and so on.  Each will have different minimum server specifications, come with support packages, and will provide a one-stop-shop.  Each plugin will have been tested in that combination, and they will all be supported by the distributor.</p>
<p>Plugin authors will benefit too &#8211; a company using a plugin as a core part of their business will gain from keeping that plugin developer happy.  Money will flow (trust me on this!) and when new requirements are identified they will pass this on to the plugin developer, along with the funds to pay for it.</p>
<p>Theme developers will be mixed &#8211; the best developers will simply create frameworks, with a base styling, for given purposes.  Designers will then be freed of almost all coding needs and will simply put together a nice child theme.  I anticipate that there will be three or four frameworks coming to the fore, with three or fore distributions offering different variations of framework &#8211; all carefully selected for the job.</p>
<h3>Costs</h3>
<p>These distributions and their support packs won&#8217;t be cheap (although for some the downloads could be free).  But they will be dependable.  You will find distributions of WordPress for high security blogs, brochure sites, news sites, membership sites and so on.  No more worrying about plugin interactions, and upgrades will be simpler because all plugins, frameworks and the distribution will upgrade all at the same time.  Your life will become easier.</p>
<h3>Impacts</h3>
<p>WordPress.org will continue to be the central point for the project, and it will be the reference point.  Distributions will most certainly contribute to the product to help keep their businesses going.  A fork is unlikely happen &#8211; not unless the differences in need between the source project and the distributions diverge dramatically.</p>
<p>Companies will be able to base their businesses on distributions which best suit their needs.  If you&#8217;re specialising in Intranets, then use the WP Intranet distro.  If you specialise in hardened sites for governments, use the WP Ultra-Secure distro.  This will help companies.</p>
<p>Similarly, if you&#8217;re a theme developer, you may wish to actively support distributions that are particularly suited to your style.  And you&#8217;ll know what plugins and widgets will be included by default, so you can included styling for those too.</p>
<p>And different distributions will have different cultures and attitudes.  Some will be more favourable to non-GPL publishers, and others much more hardline.  Some will create courses, certifications, books and support infrastructures while others will be more casual.</p>
<p>In the long run, WordPress has great potential as a publishing and communication tool &#8211; it does some things so right, so easily, that so long as this principle of simplicity is adhered to then there will be business opportunities surrounding it.  There&#8217;s no point getting into arguments with Automattic or Matt &#8211; just get on with it and find places to add value.  The risks may be higher, but that will mean the rewards will grow too.  Think about it.</p>
<h3>What Do You Think?</h3>
<p>Is this likely to be the way forward for WordPress based businesses?  Will it confuse users?  Could it make things better?  Comments, please!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.interconnectit.com/724/wordpress-distributions-are-the-future/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Migrating a WordPress/WPMU/BuddyPress Website</title>
		<link>http://www.interconnectit.com/719/migrating-a-wordpresswpmubuddypress-website/</link>
		<comments>http://www.interconnectit.com/719/migrating-a-wordpresswpmubuddypress-website/#comments</comments>
		<pubDate>Wed, 07 Oct 2009 17:11:21 +0000</pubDate>
		<dc:creator>Interconnect IT</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[address change]]></category>
		<category><![CDATA[Hosting]]></category>
		<category><![CDATA[migration]]></category>
		<category><![CDATA[MU]]></category>
		<category><![CDATA[server]]></category>

		<guid isPermaLink="false">http://www.interconnectit.com/?p=719</guid>
		<description><![CDATA[


Migrating a WordPress site can be something of a scary challenge, but we do it a lot, and we&#8217;ve become used to it.  There are many good reasons to move a site &#8211; for example, you might set one up in a subfolder, and decide to move WP to the root.  Or perhaps [...]]]></description>
			<content:encoded><![CDATA[<p><!-- Start ScreenSteps Content --></p>
<div class="LessonContent">
<div class="LessonSummary">
<p>Migrating a WordPress site can be something of a scary challenge, but we do it a lot, and we&#8217;ve become used to it.  There are many good reasons to move a site &#8211; for example, you might set one up in a subfolder, and decide to move WP to the root.  Or perhaps you&#8217;ve built a site on localhost and now need to put it on a live server.</p>
<p>If you do it incorrectly, you stand to lose all your widget settings, some file links and so on.  This wasn&#8217;t a problem with &#8216;classic WP&#8217; years ago, but these days there are many many paths stored away in the database, in various forms, and catching them all can be somewhat tricky.</p>
<p>Here I show you the steps we take moving a localhost site to a live domain.  We&#8217;re using WPMU which is running the BuddyPress plugin suite.</p>
</p></div>
<div class="LessonStep top">
<h3 class="StepTitle">The Local Install</h3>
<div class="StepImage">
	<img src="http://www.interconnectit.com/wp-content/uploads/2010/04/media_1254926142419.png" width="540" height="234" alt="media_1254926142419.png" />
</div>
<div class="StepInstructions">
<p>Here&#8217;s our site on our localhost.  As you can see, it&#8217;s pretty basic, but everything&#8217;s there that needs to be there &#8211; we know all elements of the install works, and now we want to pop it onto a live server.  In this lesson, we&#8217;re going to use FileZilla and ftp the files across from our local install.</p>
</div></div>
<div class="LessonStep top">
<h3 class="StepTitle">Copying the Files</h3>
<div class="StepImage">
	<img src="http://www.interconnectit.com/wp-content/uploads/2010/04/media_1254926439240.png" width="540" height="415" alt="media_1254926439240.png" />
</div>
<div class="StepInstructions">
<p>On the left you can see we&#8217;ve navigated to our local filesystem for this install.  On the right, we&#8217;re connected to the server.  There are already files there, because we have an old install running.  You should delete all the files and replace them with the new ones in this case, but if you are replacing a site do make sure you have a copy of everything.  Merging sites is much harder than migrating &#8211; and way beyond the scope of this tutorial.</p>
<p>So &#8211; select and drag all the files from one side, to the other.</p>
</div></div>
<div class="LessonStep top">
<h3 class="StepTitle">Moving the Database</h3>
<div class="StepImage">
	<img src="http://www.interconnectit.com/wp-content/uploads/2010/04/media_1254927088021.png" width="540" height="451" alt="media_1254927088021.png" />
</div>
<div class="StepInstructions">
<p>Our preferred tool for administering databases is mySQL Administrator.  A free tool that really simplifies a lot of DB Admin tasks.  Use this to take a backup of your database.  You&#8217;ll need to create a new backup project.</p>
<p>1. Click Backup<br />
2. Create New Project<br />
3. Select the Schema you&#8217;ve been using<br />
4. Click to move it across, selecting ALL tables (unless you have multiple installs in one database, in which case, just the tables for the install you&#8217;re interested in)<br />
5. Give it a name<br />
6. Save Project<br />
7. Execute the Backup</p>
</div></div>
<div class="LessonStep top">
<h3 class="StepTitle">Backup Done</h3>
<div class="StepImage">
	<img src="http://www.interconnectit.com/wp-content/uploads/2010/04/media_1254927164402.png" width="540" height="177" alt="media_1254927164402.png" />
</div>
<div class="StepInstructions">
<p>You should now have a backup.</p>
<p>Because the server we&#8217;re using doesn&#8217;t allow connections on Port 3306, we&#8217;re going to use phpMyAdmin there.  This is no problem at all, but if you were using mySQL administrator you could use the restore tools there.  If you&#8217;re doing this kind of project you should really know how to use these tools anyway &#8211; I&#8217;m only explaining these steps for completeness sake and showing you a migration I&#8217;m doing myself that&#8217;s likely to be typical.</p>
</div></div>
<div class="LessonStep top">
<h3 class="StepTitle">Editing the SQL</h3>
<div class="StepImage">
	<img src="http://www.interconnectit.com/wp-content/uploads/2010/04/media_1254927350304.png" width="540" height="321" alt="media_1254927350304.png" />
</div>
<div class="StepInstructions">
<p>A database backup is done simply as a big set of SQL statements that you can run.  If you&#8217;re migrating to a different database you&#8217;ll need to edit the CREATE and USE statement to tell it which database to use.</p>
<p>Be very careful with this database dump by the way &#8211; database dumps are a very easy way for hackers to get into your system and find out lots of information you&#8217;d rather not give away.</p>
</div></div>
<div class="LessonStep top">
<h3 class="StepTitle">Importing The Database</h3>
<div class="StepImage">
	<img src="http://www.interconnectit.com/wp-content/uploads/2010/04/media_1254927962875.png" width="540" height="393" alt="media_1254927962875.png" />
</div>
<div class="StepInstructions">
<p>Now you need to Import the Database.  We&#8217;re using phpMyAdmin for this. If you have any tables there already, it&#8217;s probably best to drop them.  All of them.  Like I say, if you&#8217;re merging you&#8217;re going to need more help than this guide can provide.</p>
<p>1. Click on the Import tab<br />
2. Select your file (if it&#8217;s bigger than your sever&#8217;s upload limit then you&#8217;ll have to speak to your admin guys about how to do this.<br />
3. Press the Go button!</p>
<p>Once the import has run successfully you should see a message saying something like &quot;Import has been successfully finished, 95 queries executed.&quot; &#8211; and it can be an awful lot more than 95 queries!  It can also take quite some time.  If you need to handle large datasets it&#8217;s far easier to use the mySQL Administrator tools &#8211; phpMyAdmin can get clunky.</p>
</div></div>
<div class="LessonStep top">
<h3 class="StepTitle">Visit the Site</h3>
<div class="StepImage">
	<img src="http://www.interconnectit.com/wp-content/uploads/2010/04/media_1254928211787.png" width="540" height="292" alt="media_1254928211787.png" />
</div>
<div class="StepInstructions">
<p>If you try to visit the new uploaded site at the moment you&#8217;ll get a Fatal Error because all sorts of things are confused.</p>
<p>You need to change the wp-config.php file.</p>
</div></div>
<div class="LessonStep top">
<h3 class="StepTitle">Changing wp-config.php DB Settings</h3>
<div class="StepImage">
	<img src="http://www.interconnectit.com/wp-content/uploads/2010/04/media_1254928518189.png" width="540" height="321" alt="media_1254928518189.png" />
</div>
<div class="StepInstructions">
<p>Change 1, 2, and 3 to match your server&#8217;s database settings.</p>
<p>Change 4 to the appropriate path.  Most installs are in the root directory, so that would mean $base = &#8216;/&#8217;;</p>
<p>Change 5 to the domain name in use.</p>
<p>Change 6 from &#8216;/buddypress.11/&#8217; (or whatever your local path is) to the new path, like in 4, so in most cases that will be &#8216;/&#8217; also.</p>
</div></div>
<div class="LessonStep top">
<h3 class="StepTitle">Search &#038; Replace on the Database</h3>
<div class="StepImage">
	<img src="http://www.interconnectit.com/wp-content/uploads/2010/04/media_1272277924659.png" width="467" height="781" alt="media_1272277924659.png" />
</div>
<div class="StepInstructions">
<p>You now need to run a search and replace on the database &#8211; including all incidences of code within serialised PHP strings.  There is an excellent and free utility written by Interconnect IT, called the <a href="http://spectacu.la/search-and-replace-for-wordpress-databases/">Safe Search and Replace Tool.</a></p>
<p>I can&#8217;t emphasise enough that it&#8217;s important to handle serialised PHP correctly.  If you don&#8217;t, then settings will go missing, fields will get corrupted, and your site runs a severe chance of not working on the new location.  It&#8217;s a pain, but it&#8217;s important.</p>
<p>So, download the program, place it in your blog&#8217;s root folder and then run it by visiting the appropriate URL.</p>
<p>If you&#8217;re getting confused at this point, perhaps you shouldn&#8217;t run the program.  Just saying, because it can cause plenty of damage!</p>
</div></div>
<div class="LessonStep top">
<h3 class="StepTitle">Running the Script</h3>
<div class="StepImage">
	<img src="http://www.interconnectit.com/wp-content/uploads/2010/04/media_1254930511307.png" width="540" height="83" alt="media_1254930511307.png" />
</div>
<div class="StepInstructions">
<p>Simply visit http://www.example.com/searchreplacedb.php in your browser to fire off the script.  This will run.  If you experience a time-out, or too much output, you may need to go into the script and remove any echos that are slowing it down.  I&#8217;ll probably comment this out in due course anyway, but for diagnostics purposes I&#8217;ve left it.  Once run, you should see something like the above at the bottom.  Even a very large search and replace should only take a few seconds.</p>
</div></div>
<div class="LessonStep top">
<h3 class="StepTitle">Some Tweaks</h3>
<div class="StepInstructions">
<p>Check that you can navigate your site in its new location.</p>
<p>You may have to modify .htaccess to fix paths, and you may need to check your uploads folder for media.  But that&#8217;s it.  All should be good.</p>
</div></div>
<div class="LessonStep top">
<h3 class="StepTitle">Extra Steps for WordPress MU</h3>
<div class="StepImage">
	<img src="http://www.interconnectit.com/wp-content/uploads/2010/04/media_1254930620452.png" width="540" height="277" alt="media_1254930620452.png" />
</div>
<div class="StepInstructions">
<p>If you&#8217;re using WordPress Single User, then that&#8217;s it.  You&#8217;re all done!</p>
<p>But in this example, we&#8217;re running BuddyPress on WordPress MU, and that means one extra step.  In phpMyAdmin you need to open up (1) wp_blogs, (2) click the browse tab, and (3) click the edit tab for each row.  If you have a lot, you may wish to run another searchreplacedb.php against the database, looking for localhost.localdomain and buddypress.11 and swapping them appropriately.</p>
</div></div>
</div>
<p><!-- End ScreenSteps Content --></p>
]]></content:encoded>
			<wfw:commentRss>http://www.interconnectit.com/719/migrating-a-wordpresswpmubuddypress-website/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>A Common-Sense WordPress Security Primer</title>
		<link>http://www.interconnectit.com/679/a-common-sense-wordpress-security-primer/</link>
		<comments>http://www.interconnectit.com/679/a-common-sense-wordpress-security-primer/#comments</comments>
		<pubDate>Sun, 06 Sep 2009 11:41:04 +0000</pubDate>
		<dc:creator>David Coveney</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[hacks]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[upgrades]]></category>

		<guid isPermaLink="false">http://www.interconnectit.com/?p=679</guid>
		<description><![CDATA[<img src="http://www.interconnectit.com/wp-content/uploads/2009/09/3209885128_cf86ff396d_o-150x150.jpg" alt="This is a real-life burglar... still easier to identify than a hacker, sadly.  Creative Commons Share-Alike Attribution Picture by Jofus." title="3209885128_cf86ff396d_o" width="150" height="150" class="alignleft size-thumbnail wp-image-680" />Another WordPress hack has caused a fuss in the blogosphere, with recommendations to upgrade immediately. But security is more than just updating regularly, and you may not be able to upgrade right away, so here's some suggestions.]]></description>
			<content:encoded><![CDATA[<div id="attachment_680" class="wp-caption alignright" style="width: 314px"><a href="http://www.interconnectit.com/wp-content/uploads/2009/09/3209885128_cf86ff396d_o.jpg" rel="shadowbox[post-679];player=img;"><img class="size-medium wp-image-680" title="3209885128_cf86ff396d_o" src="http://www.interconnectit.com/wp-content/uploads/2009/09/3209885128_cf86ff396d_o-304x202.jpg" alt="This is a real-life burglar... still easier to identify than a hacker, sadly.  Creative Commons Share-Alike Attribution Picture by Jofus." width="304" height="202" /></a><p class="wp-caption-text">This is a real-life burglar... still easier to identify than a hacker, sadly.  Creative Commons Share-Alike Attribution Picture by Jofus.</p></div>
<p>There&#8217;s been a big fuss lately over the <a title="Lorelle's breakdown on WP hack" href="http://lorelle.wordpress.com/2009/09/04/old-wordpress-versions-under-attack/">latest WordPress hacks</a> that have <a title="WordPress support forum about the hacks" href="http://wordpress.org/support/topic/307518?replies=57">targetted older versions of WordPress</a>.</p>
<p>And in my view, they show the less pretty side of WordPress and some people in the community&#8230; but not all of them.  The attitude has been a straight &#8220;upgrade your blog and you&#8217;ll be secure.&#8221;</p>
<p>Well, I have news for you.  They&#8217;re wrong.<span id="more-679"></span></p>
<h3>You&#8217;re Never Secure</h3>
<p>Even if you have the very latest version of everything there are, out there, what are known as <a title="Zero day exploits" href="http://en.wikipedia.org/wiki/Zero_day_attack">zero day exploits</a>.  These are vulnerabilities which are kept secret by the hackers who have found them.  They cease to be secret if they become widely used in a large scale attack.  Like the current one against WordPress.</p>
<p>Now, if there are vulnerabilities out there that nobody knows about then your high profile WordPress site or blog could be targetted in a way that you, I, or the (great and lovely) WordPress developers out there don&#8217;t know about.</p>
<h3>Not Everyone Can Upgrade Immediately</h3>
<p>Quite frankly, I find the glib assertion that staying up to date is all you need to be secure to be&#8230; terrifying.  It&#8217;s bad advice because it leaves people with the feeling that all they need to do is to stay up to date and all is well.  Not only that, but it sidesteps the whole issue that WordPress should really consider running security updates on older versions of WordPress &#8211; not all sites can quickly change from one version to another.  When WordPress 2.8 came out it broke multi-use widgets &#8211; you could recode them, but then settings could be lost.  There are sites out there that run hundreds of widgets, and re-configuring them will be a big job.  If a new vulnerability comes out in WordPress it may not even be relevant to some sites because they may be doing everything else correctly.</p>
<p>In fact, in a critical environment you absolutely <em><strong>do not</strong></em> update your software without running a full suite of tests to make sure the updates won&#8217;t bring down your site.  This is a major problem for sites which, in some cases, are turning over tens of thousands of pounds a month.  Yes, they can throw money at the problem, but it still takes time &#8211; and when there&#8217;s a vulnerability the one thing you don&#8217;t have is a lot of time.  So a site needs to rely on more than just WordPress for security.</p>
<h3>How Does That Work Then?</h3>
<p>One of the key things about security is to think about what happens when the first line of defence is breached.  In the real physical world, we tend to take multi-part approaches &#8211; often based on the risk.  My house has locks on the doors and windows &#8211; that&#8217;s the first level of security.  But hey, everyone has that, so to make double sure I have an alarm system so that if anyone gets in, an alarm goes off &#8211; alerting me if I&#8217;m here, or letting neighbours know.</p>
<p>My next level of protection is that of not having much you&#8217;d want to steal.  I even used to have a car like that &#8211; I didn&#8217;t lock it, even, in the hope that somebody would take it out of my life for ever.</p>
<p>But, back to the subject matter&#8230; WordPress security is, frankly, just like a front door lock and nothing else.  That&#8217;s OK, but you&#8217;re not really protecting yourself properly &#8211; if someone gets past WordPress then you may have some serious problems.</p>
<p>I&#8217;m not going to aim this guide at experts &#8211; I&#8217;m trying to pitch this to help people who aren&#8217;t experts to understand how their WordPress blog can be hacked, and how it can be secured even if a hacker gets through the first layer of protection.</p>
<p>Let&#8217;s go through them:</p>
<h3>1. Editing of Themes and Plugins Through the Admin Interface</h3>
<p>We&#8217;re going to do a test.  I want you to log in to your installation, and go to Appearance, then Editor.  Generally, you should see the stylesheet first, with comments at the top.  At the bottom of the box you should see this:</p>
<blockquote><p><em>You need to make this file writable before you can save your changes. See <a href="http://codex.wordpress.org/Changing_File_Permissions">the Codex</a> for more information.</em></p></blockquote>
<p>If you don&#8217;t, and if you can indeed edit this file, then you have a major security flaw right from the start.  A <a title="XSS" href="http://en.wikipedia.org/wiki/Cross-site_scripting">cross site scripting error (XSS)</a> could easily start to make changes to your theme and plugin files.  Once your theme and plugins can be modified, the hacker has complete, 100% control of your server and its database.</p>
<h3>2. Poor Passwords</h3>
<p>This is really before you even think about WordPress security.  Simply put, do not use a word that can be found on your blog, or in a dictionary.  Learn to use <a title="Password Maker" href="http://passwordmaker.org/">PasswordMaker</a> and its Firefox plugin or similar.  It will make security on various sites much stronger, much more quickly.  If you or any of your users are using dictionary words, then the chances of getting in are far higher.</p>
<h3>3. Poor mySQL Server Security</h3>
<p>Your mySQL database should be reasonably secure.  But many times I&#8217;ve found that you can connect to a database remotely.  For this, try using something like <a title="mySQL Administrator and GUI tools" href="http://dev.mysql.com/downloads/gui-tools/5.0.html">mySQL Administrato</a>r and connect to your database using the same logonid and password that WordPress uses.  If you can easily reach your DB from any internet connection then again, you have a potential security hole.  All access of this type should either be IP limited, or over an SSH tunnel.  Setting this up is beyond the scope of this feature but your hosts could help, or we can.</p>
<h3>4. Use of FTP Isn&#8217;t Terrible, But&#8230;</h3>
<p>Now, I make no secret that using FTP isn&#8217;t generally that bad, but if you have a site that&#8217;s likely to be targetted then you shouldn&#8217;t have any form of FTP access.  You should be using SSH and SCP.  At the very least, use SFTP if you can sort out certificates &#8211; they don&#8217;t have to be paid for, expensive certificates, but can be generated.  Again, getting this working is beyond the scope of this, but hosts and good WordPress consultants can help you with making this happen.</p>
<h3>5. Allowing User Registration</h3>
<p>Sometimes you need or want this &#8211; in which case, make damn sure you can keep bang up to date on your WP installs.  But if there isn&#8217;t a strong business case for having user registration (and I personally don&#8217;t believe there is in 95% of cases) then don&#8217;t bother.  If you do have it switched on you&#8217;ll notice lots of registrations from around the world.</p>
<h3>6. XMLRCP Support</h3>
<p>A high proportion of attacks on WordPress have come through or made use of the XMLRPC protocol &#8211; this is used by many exploits as it helps to automate the process of posting content to a website.  Mostly the protocol is used for pingbacks and remote publishing to a site.  If you don&#8217;t need or want those two features then you can safely remove the file xmlrpc.php from your WordPress&#8217;s root folder.  Pingbacks are less useful than they used to be, so it&#8217;s not an eccentric thing to get rid of.</p>
<h3>7. Firewalls</h3>
<p>Putting your server behind an appropriate firewall can help with certain types of attack.  This is something to talk about with your hosts.  And they do cost money.  A lot of things I&#8217;m talking about can be done more cheaply, but for a high profile site a firewall is an absolute must.</p>
<h3>8. Server Permissions</h3>
<p>Apache and the user used to upload files to the server should be kept in separate groups.  This really helps to protect against attacks that get through various layers of protection.  Something could attack your Apache web server and still fail to make updates because it doesn&#8217;t have rights.</p>
<h3>9. All the Other Code</h3>
<p>One thing many folk forget about with WP installations is that it depends on a huge range of code and modules.  Are you running an up to date release of PHP?  How about mySQL?  GDLib?  Apache?  There&#8217;s a lot of components to a website &#8211; although WP makes it look simple you&#8217;re actually dealing with a very sophisticated machine.  If you&#8217;re running outdated versions of server software there may be significant non-WP vulnerabilities.  Check with your hosts if possible.</p>
<h3>10. Shared Hosting</h3>
<p>Some shared hosting plans are, I can confirm without hesitation, absolutely dreadfully configured.  You may have 800 websites on one cheap old server &#8211; none particularly active and none set up or configured by experts.  If one gets hacked, the whole machine becomes vulnerable, and every other site can be hacked.  Often when this happens the host will blame you in various ways.  Sometimes the host may simply find it&#8217;s all too much trouble and disappear, along with your website.</p>
<p>Don&#8217;t let that happen to you.</p>
<h3>11. Always Log Out When Finished</h3>
<p>If you log out when you finish your work in the back end of your site, you&#8217;ll be much less likely to fall victim to a cross site scripting vulnerability.  So make a habit of it.  Alternatively, have a browser that you only use for WordPress.  Some people may choose to use Firefox for general browsing, and Google Chrome for WordPress work.</p>
<h3>12. Consider Using Real Hosting</h3>
<p>I mean, don&#8217;t go for the cheap, commodity hosting that costs £7.95 a month.  Is your online business really that weak that spending on something more serious and carefully managed is a problem?  You have a number of choices.  You could go for a Virtual Private Server or even Dedicated Server from someone like <a href="http://www.names.co.uk/">Namesco</a> in the UK, or if your business is really serious talk to the excellent chaps (and our partners when we build big sites) at <a title="Kumina - awesome Unix solutions guys." href="http://www.kumina.nl/en-gb/home.html">Kumina</a> in the Netherlands.  There are US equivalents, but I don&#8217;t know them, sorry.  By spending more you will generally enjoy a more proactive approach to your site&#8217;s security at a server level.  Same goes for spending money on WordPress consultants like, erm, us, to take the worry out of it.  Worth thinking about.</p>
<h3>13. Use Google Alerts as a Final Alarm</h3>
<p>Google Alerts are incredibly useful for many reasons.  One of the uses I make of it is to have searches set up for my primary sites for words such as &#8217;sex&#8217;, &#8216;phentermine&#8217;, &#8216;viagra&#8217;, &#8216;casino&#8217; and so on.  Then, if anyone gets in and leaves dodgy links on the site then there&#8217;s a bigger chance of finding out about it.  If it happens, you&#8217;re kind of late, but at least you&#8217;re aware of it quickly and have a chance to fix the problem before there&#8217;s ranking damage to your site.</p>
<p><em>Read on for some links to practical tips for securing your WordPress install&#8230;</em><!--more--></p>
<p>There&#8217;s several handy resources out there for you if you want to understand more practical information on improving your site&#8217;s security:</p>
<p><a title="WP Codex WordPress Hardening" href="http://codex.wordpress.org/Hardening_WordPress">Hardening WordPress in the codex</a> &#8211; <em>a useful guide, from the people who brought you WordPress.</em></p>
<p><a title="Using htaccess to harden WordPress" href="http://www.reaper-x.com/2007/09/01/hardening-wordpress-with-mod-rewrite-and-htaccess/">Hardening WordPress with mod rewrite and htaccess</a> &#8211; <em>an alternative and useful approach that&#8217;s not for everybody, but works for many.</em></p>
<p><a title="Noupe's guide to WordPress security" href="http://www.noupe.com/how-tos/wordpress-security-tips-and-hacks.html">Noupe&#8217;s guide to WordPress security</a> &#8211; <em>always useful site has some good ideas.</em></p>
<p><a title="Scoble and WordPress" href="http://scobleizer.com/2009/09/05/i-dont-feel-safe-with-wordpress-hackers-broke-in-and-took-things/">Richard Scoble on why he doesn&#8217;t feel safe with WordPress now</a>.</p>
<p><a title="WPTavern security discussion" href="http://www.wptavern.com/forum/general-wordpress/835-wordpress-security-about-more-than-wordpress.html">Discussion about this post over at WPTavern</a>.</p>
<p><a title="Matt on WP Security" href="http://wordpress.org/development/2009/09/keep-wordpress-secure/">A post by Matt Mullenweg about this hack on the WordPress Development Blog</a> &#8211; <em>I think the advice could be a little more rounded and pragmatic, personally.  Not everyone can be 100% up to date.  Upgrades need testing, and folk go offline for weeks at a time&#8230;</em></p>
<p>I don&#8217;t necessarily recommend all of the linked tips in securing a site, and some are really for experts to deal with, but this is a starting point to understanding.  However, in almost all guides I think they assume that you can&#8217;t do much about the security of your web server.  That&#8217;s really down to your hosts having a genuine understanding of web security.  Good hosts do, and you can tweak things on bad hosts, but if the host isn&#8217;t great you have to look after yourself as much you can &#8211; and that, really, means that if you&#8217;re managing your own site you have to become a security expert.</p>
<blockquote><p>Ultimately, if you&#8217;re not comfortable in dealing with security issues, let someone else who is skilled and knowledgeable do it for you.  If you&#8217;re running a basic blog and don&#8217;t really need a custom or distinctive visual design, get an account at <a title="Free hosted wordpress blogs" href="http://wordpress.com">WordPress.com</a>.  If you need something more but without the fine control given by custom shops you can have a <a title="WordPress VIP hosting" href="http://en.wordpress.com/vip-hosting/">WordPress VIP</a> account, and if you want real control you can use a company like us who deal with WordPress on a daily basis and who will do the worrying for you.</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.interconnectit.com/679/a-common-sense-wordpress-security-primer/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Running a WordPress Plugin, always&#8230;</title>
		<link>http://www.interconnectit.com/675/running-a-wordpress-plugin-always/</link>
		<comments>http://www.interconnectit.com/675/running-a-wordpress-plugin-always/#comments</comments>
		<pubDate>Sun, 23 Aug 2009 19:38:47 +0000</pubDate>
		<dc:creator>Interconnect IT</dc:creator>
				<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.interconnectit.com/?p=675</guid>
		<description><![CDATA[<img class="size-thumbnail wp-image-676 alignleft" title="mu-plugins" src="http://www.interconnectit.com/wp-content/uploads/2009/08/mu-plugins-150x150.jpg" alt="As seen on my local WP development environment" width="150" height="150" />There times when you absolutely must run some plugins on a WP install, and you don't want to allow administrators to be able to disable them.  Here's how...]]></description>
			<content:encoded><![CDATA[<div id="attachment_676" class="wp-caption alignright" style="width: 314px"><a href="http://www.interconnectit.com/wp-content/uploads/2009/08/mu-plugins.jpg" rel="shadowbox[post-675];player=img;"><img class="size-medium wp-image-676" title="mu-plugins" src="http://www.interconnectit.com/wp-content/uploads/2009/08/mu-plugins-304x219.jpg" alt="As seen on my local WP development environment" width="304" height="219" /></a><p class="wp-caption-text">As seen on my local WP development environment</p></div>
<p>Sometimes you&#8217;ve created a site with WordPress standard (not single user), but have had allow the site owners or users to have full admin access to it.  You have plugin and theme dependencies, and if the site owner disables that plugin, you have problems.</p>
<p>For example, you&#8217;ve written a plugin that carries out a certain range of syndication functions for your client.  If the client accidentally disables it he will lose money, and you will have a call-out, potentially an angry one, when he finds out.  He wants admin access, but you know he&#8217;s dangerous with it.</p>
<p>So, since WordPress 2.8 you&#8217;ve had the facility to create a folder in wp-content called mu-plugins.  It will work just like the mu-plugins folder in WordPress MU &#8211; as in, any plugin placed there, will run automatically.  Activation code won&#8217;t fire off, but apart from that, so long as the plugin is correctly written, everything will work.</p>
<p>I&#8217;m not sure if this change is a part of allowing &#8216;must-use&#8217; plugins support, as suggested in <a title="Must load WP plugins" href="http://core.trac.wordpress.org/changeset/10737">http://core.trac.wordpress.org/changeset/10737</a> or if it&#8217;s also planned as part of the move towards merging WP single user and WP-MU.  Either way, it&#8217;s an incredibly useful tool for those of us who set up and configure sites for clients who are a little prone to fiddling.</p>
<blockquote><p>Watch out for plugin updates &#8211; you can&#8217;t auto-update anything in mu-plugins, and you won&#8217;t receive any notifications.  Be aware that you have to stay on top of this by yourself, just like in the old days!</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.interconnectit.com/675/running-a-wordpress-plugin-always/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress 2.8.4 Released</title>
		<link>http://www.interconnectit.com/670/wordpress-2-8-4-released/</link>
		<comments>http://www.interconnectit.com/670/wordpress-2-8-4-released/#comments</comments>
		<pubDate>Wed, 12 Aug 2009 15:10:15 +0000</pubDate>
		<dc:creator>Interconnect IT</dc:creator>
				<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.interconnectit.com/?p=670</guid>
		<description><![CDATA[<img class="size-thumbnail wp-image-671 alignleft" title="wpbug" src="http://www.interconnectit.com/wp-content/uploads/2009/08/wpbug-150x109.jpg" alt="wpbug" width="150" height="109" />WordPress 2.8.3 (and probably all versions below it) has been found to have a minor but annoying vulnerability.

Probably best to upgrade to the latest version, but if you can't, there's a simple fix...]]></description>
			<content:encoded><![CDATA[<div id="attachment_671" class="wp-caption alignright" style="width: 218px"><a href="http://www.interconnectit.com/wp-content/uploads/2009/08/wpbug.jpg" rel="shadowbox[post-670];player=img;"><img class="size-full wp-image-671" title="wpbug" src="http://www.interconnectit.com/wp-content/uploads/2009/08/wpbug.jpg" alt="wpbug" width="208" height="109" /></a><p class="wp-caption-text">Slightly broken code, now fixed.</p></div>
<p>Those who follow WordPress closely will understand that a vulnerability has been found that, whilst not being especially dangerous, could be very annoying for some &#8211; especially for high-profile blogs.</p>
<p>By using a specially crafted URL, it&#8217;s possible for an attacker to force a reset of the admin password.  The attacker can&#8217;t know this admin password, it will be a random string, and this password will be e-mailed to the administrator of the blog.  However, there&#8217;s no denying that this could be annoying to the administrator.  More specifically, an administrator could be locked out of a block while some other exploits are tried, simply by resetting the password at short intervals.</p>
<p>So, it&#8217;s not the end of the world, but it&#8217;s an annoyance and in a few rare cases a potentially dangerous one.</p>
<p>To fix this vulnerability in older versions of WordPress, such as 2.7, you can manually change wp-login.php using the code shown in the Changeset on the WordPress Trac: <a href="http://core.trac.wordpress.org/changeset/11798">http://core.trac.wordpress.org/changeset/11798</a> &#8211; ideally, you should upgrade to the just released WordPress 2.8.4 but if you have legacy reasons for staying with 2.7 (and many have, for example problems with widgets) then you may need to delay this.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.interconnectit.com/670/wordpress-2-8-4-released/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress in News &amp; Media Presentation</title>
		<link>http://www.interconnectit.com/657/wordpress-in-news-media-presentation/</link>
		<comments>http://www.interconnectit.com/657/wordpress-in-news-media-presentation/#comments</comments>
		<pubDate>Mon, 20 Jul 2009 12:16:12 +0000</pubDate>
		<dc:creator>Interconnect IT</dc:creator>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[implementations]]></category>
		<category><![CDATA[media]]></category>
		<category><![CDATA[MU]]></category>
		<category><![CDATA[News]]></category>

		<guid isPermaLink="false">http://www.interconnectit.com/?p=657</guid>
		<description><![CDATA[<img src="http://www.interconnectit.com/wp-content/uploads/2009/07/wordcampuk-logo-150x150.jpg" alt="wordcampuk-logo" title="wordcampuk-logo" width="150" height="150" class="alignleft size-thumbnail wp-image-640" />This is the presentation we've given on WordPress in News and Media at WordCamp UK 2009.  It covers the issues faced, barriers, and uses in this sector.]]></description>
			<content:encoded><![CDATA[<p>This is the presentation given by David Coveney at WordCamp UK 2009 in Cardiff.  It covers the advantages, problems and implementations of WordPress as used by the News &#038; Media sectors.</p>
<p>If you need to view the slide notes (primarily for me, to be honest, but you may see some points that got cut during the presentation) you&#8217;ll have to visit the Slideshare site.</p>
<div style="width:680px;text-align:left" id="__ss_1743282"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/interconnectit/wordpress-for-news-and-media-word-camp-uk-2009" title="WordPress For News And Media   Word Camp Uk 2009">WordPress For News And Media   Word Camp Uk 2009</a><object style="margin:0px" width="680" height="587"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=wordpressfornewsandmedia-wordcampuk2009-090720054100-phpapp02&#038;stripped_title=wordpress-for-news-and-media-word-camp-uk-2009" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=wordpressfornewsandmedia-wordcampuk2009-090720054100-phpapp02&#038;stripped_title=wordpress-for-news-and-media-word-camp-uk-2009" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="680" height="587"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">presentations</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/interconnectit">Interconnect IT</a>.</div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.interconnectit.com/657/wordpress-in-news-media-presentation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
