Multisite Themes


POSTED IN Plugins, WordPress | 13 COMMENTS

Multisite Themes is a very simple plugin that I created to help administrators of WordPress Multi Site setups define different themes for different sites.


I was providing clients with wpmu/wpms sites and I needed a way to make only certain themes available to certain site admins.

“This is already doable when you edit a blog in the admin.”

Technically it’s not. Remember, a site is different than a blog
A site contains blogs.
A site can be at while you have another site at, both with different sub-blogs underneath of them.


I’ll hopefully have this up on the WordPress Plugin Database soon, but until then you can save the below txt document as a php file and upload to your plugins folder, activate and you’re good to go.

To add a theme that is site specific, simply make a folder called ms-themes in your wp-content directory.
In the ms-themes directory you create another folder with the same id as the site you want to add the theme to.

Example for Site with id of 7:

Any themes placed in the /7/ directory will be available for site_id 7.

Future Plans

  • Done:  I plan to automagically create the ms-themes directory.
  • Have option to automatically create site directories.
  • Output display for easy recognition of what a site’s ID is.

Known Bugs

No known bugs. If you have a problem, please contact me through my contact page.


Download from the WordPress Plugin Directory:


Please make any donations to a charity of your choice in my name (Dustin Dempsey). Let me know if you do.

In writing this post I realized it was going to both easy and hard to do at the same time. It was going to be fun, while also being a tutorial or sorts. This isn’t going to show you how to build a social network using WordPress, though this may help give you ideas on how to proceed if this is on your to-do list. This is more of a story about me and a social network.

Back in 2007 I was browsing the net looking at different ways I could market myself, and my services. At that time my main focus wasn’t web design or graphics, I was a real estate agent based out of North Idaho in a city where one in six people were licensed to sell real estate. Competition was, and still is fierce with the dilution of licensed Realtors in my area. I knew a lot of people found their agent online and I needed to figure out different ways to build not only an online presence, but a way to network with other agents with clients moving to my area. I honestly cannot remember how I found but I’m sure I just used Google to search for real estate networks. I signed up for and was an avid member there making postings in the forum, customizing my profile, and making connections.  After a while, especially with progression made with releases in platforms like WordPress and Joomla! I started getting a lot more into developing sites/blogs for fellow Realtors. When there was a topic about WordPress in the forums you would find a reply made by me, either helping where I could, answering questions, or leaving feedback.

Original WannaNetwork Forums:


My knowledge and experience with WordPress seemed to show as I made connections with the owners/admins of WannaNetwork and they presented me with some ideas on incorporating WordPress into The site at that time was built off of a badly hacked together version of phpFox and vBulletin. It was becoming dated and seemed to be a resource hog on the server it resided. They also wanted to offer WordPress as their primary blogging platform instead of phpFox which fell short of what WordPress has to offer.

The first idea they had was to offer premium pay blogs on a WannaNetwork so was born. I set up a WordPress MU site full with ad copy, and useful plugins, hundreds of themes, and more. The new blogs section didn’t really catch on like we had hoped for and the subscriptions that came in for the service were miserable for lack of better words. One of the main problems regarding the blogs seemed to be that it was on a subdomain and for us to get any real traction it needed to be on the main domain. Around this time (maybe a little prior) the owners of WannaNetwork had partnered up with a media company that promised a lot for a new site, yet failed to deliver. It was very buggy, and wasn’t as easy as something like WordPress to use so they ended up dropping the new site and decided to look towards WordPress MU with BuddyPress for the new social network.

WannaNetwork Blogs:


I started designing the news WannaNetwork (powered by WordPress) in late 2008 with a release of the new year. At this point, Buddypress was pre version 1.0 so it was constantly having bug fixes and improvements. I tried to keep the WordPress MU and BuddyPress versions on WannaNetwork as up to date as possible while developing which caused a lot of code to break as I went so it required much more time than initially expected. The new WannaNetwork was released at the beginning of February. It was over a month late, and to tell the truth it still probably wasn’t ready for release to the 19,000 members that used WannaNetwork.

The new WordPress powered WannaNetwork:


The transition over to the new platform wasn’t entirely smooth but surprisingly wasn’t too bad. The blogs, friends, groups, and other networking aspects on the old platform weren’t brought over as it was decided that it would ultimately be better to start over with these items due to the plague of spam, and junk that polluted the old platform. User accounts were the only things that were brought over to the new platform and this process alone took hours to accomplish with the 19,000 users (I’ll mention a plugin later that helped make this happen).

The new incorporated the following:

  • WordPress MU 2.7.1 – provided the new user interface, better features. This obviously ran the core of everything.
  • BuddyPress Pre-1.0 – This ran the groups, friends, profiles, and the social networking features that were needed (started around r604).
  • bbPress 1.0 Alpha 6- bbPress ran the groups and the group forums, this was released shortly after WannaNetwork became live as BuddyPress didn’t have the best integration at this time.
  • Simple:Press 4.0.4- We used this for the main forum on the site. We felt that we needed more than what was offered by bbPress as this was where most of the action happened on the site.
  • OIO Publisher- The ad server on WannaNetwork was driven by OIO publisher which allowed for automated ad sales and more.

 Things were going well for a while at WannaNetwork until we started reaching server resource limits. We weren’t expecting these issues this early, and I was working on bug fixes and other features so I didn’t have an immediate fix.  The problem with BuddyPress pre1.0 was that it created 3 tables per user similar to how WordPress MU makes news tables for each blog that is created for scaling purposes. This caused the server to timeout whenever it tried to do a backup of the database and reach file open limits. Rackspace (where the site was hosted) wasn’t of much help in getting around the problem so we employed the help of Dan Jeffries at Bulldog Data Servicesto help. Dan was able to clean a lot of crap off of the server that was a result of Rackspace and this dropped server usage down to under half of what it was. Dan also increased security, blocking some holes we had open in our system. The server no longer ran into issues but we knew something needed to be done soon to prevent it from reaching any sort of limits again. had always been a site I frequented in this project for free plugins but I never had a membership until I needed to get the premium script they offered for scaling blogs. The scaling would separate the blogs into multiple databases, in turn decreasing the size of the database allowing it to not reach file open limits that we were encountering. There were other options out there but the idea that support was included, along with a community of others who have used the script was nice. I’m not a database expert nor am I a php expert so these types of things were important. Premium:


Before I had the opportunity to use the blog scaling script, I worked on upgrading to the latest version of BuddyPress and WordPress MU. BuddyPress was now 1.0 and was set up a bit different than it’s pre1.0 version. The new release didn’t make as many tables which was great news and quiet an improvement, it shorted the number of tables used from 3 per user down to under 20 total for all users. So going from the pre1.0 release to the the new one removed over 54,000 tables in our database, the actual process took over 2 days to complete on our machine where the site was down but it was well worth it. This allowed me to set the scaling script aside for a while as it wasn’t needed right away and bug fixes and feature requests became the new priority.

Before I could do much for improvements on the site, I was given a less-than-24-hour notice (while on a trip) that the site was going to be consolidated with some other sites onto one server to cut costs..
After the move to the new server was done it started experiencing slow speeds and other ’shared’ hosting symptoms. It wasn’t the right environment for such a site and certain features had to be taken offline to keep WannaNetwork from going down. It was reduced to the forum and blogs, stripped of it’s BuddyPress social networking glory. Not having much control over the site at this point as I wasn’t given FTP access to the new server, I offered to fund a new server along with implementing other features that weren’t agreed to when first designing WannaNetwork, virtually cutting all costs . The majority owners have recently decided to take the site in a different direction dropping the forums, the blogs, and making it into a multi-author blog about the real estate industry.

I think it’s sad the direction that it’s going as it was gaining some traction in the Real Estate social networking world, it was ranked less than 70,000 on Alexa, and had a good following of members who enjoyed using the site and ultimately made it what it was.

For more information on WannaNetwork and their decision to close the doors: CLICK HERE

 Throughout the development of WannaNetwork there were many plugins, scripts, websites,  and people that made my life a lot easier. Let me know if I forgot you!

Thanks to:

  •  Andy Peatling – Andy keeps busy developing BuddyPress for us all to use and without him, none of this would be possible I’m sure. He’s lent support to me many of times in the forum and email and It’s nice to have people like him who are not only good at what they do but active in the community.
  • Dan Jeffries - Without Dan, WannaNetwork would have been experiencing issues from day one from a messed up Rackspace server. He was able to speed our server up, reduce queries, and do large scale backups.
  • Robert aka Phlux0r – When developing WannaNetwork I didn’t even know where to start and some features were above me. Robert was the developer of, one of the first full featured WordPress MU and BuddyPress powered social networks. He was able to answer a lot of my questions and even provide some code needed for WannaNetwork pertaining to blog avatars and external blog integration.
  • Burt Adsit – As one of the moderators at Burt is always helping. I’m pretty sure he’s posted a reply to every one of the questions I have there.. Some of his coding helped me develop the unique homepage of WannaNetwork. He’s a true benefit to the community.
  • Mark Madsen -  A personal friend who’s helped me every step of the way.
  • Community – They keep the BuddyPress project moving.
  • Community – This project would have never happened without them.

Great MU Plugins to consider for building a social network (Why re-invent the wheel?):

  • Admin Footer Text – This plugin allows for easily editing the displayed message in the footer of your admin area.
  • Admin Message - Admin message is great for an important message that you want always displayed such as letting users know of scheduled maintenance or a great new feature.
  • Ad Sharing – Share ad space with your members so you both can earn revenue from visitors to the site. (Planned for release on WannaNetwork)
  • Automatic Follow Up Emails - This plugin allows you to send out ‘messages’ i.e. emails at predetermined times based on when the user signed up.  (never made it live on WannaNetwork)
  • Batch Create – Create hundred or thousands of blogs and users automatically by simply uploading a csv text file – subdomain and user creation automation has never been so easy. This was helpful in importing users to the new platform from the old on.
  • BuddyPress – BuddyPress is a suite of WordPress plugins and themes, each adding a distinct new feature. BuddyPress contains all the features you’d expect from WordPress but aims to let members socially interact.
  • cformsII - cforms is a powerful and feature rich form plugin for Wordpress, offering convenient deployment of multiple Ajax driven contact forms throughout your blog or even on the same page.
  • Content Monitor – This plugin will send you an email if a post or page is published containing words that you define.  (never made it live on WannaNetwork)
  • Dashboard Feeds – Replace the WordPress development and Planet feeds with your own!
  • Default Theme - Allows you to easily select a new default theme for new blogs
  • Domain Mapping – Allows multiple domain mapping on subdomain and subdirectory installs, also handles cross-domain cookie syncing  (never made it live on WannaNetwork)
  • Footer Content – This plugin allows blog administrators to add their own content to the footer of every page on their blog. Useful for stats insertion.
  • Global Footer Content – Simply insert any code that you like into the footer of every blog. This is useful for inserting stats/analytics code.
  • Global Site Search – A plugin that allows global search across all blogs on your WordPress MU / BuddyPress install.
  • Google Analytics – Both a single and global site/analytic solution. Not used at WannaNetwork but useful none-the-less.
  • Invite – This plugin allows users to send invitations to friends and colleagues. Users can include a personal message along with the invitation. Planned for release on WannaNetwork.
  • Login Redirect -  Redirects users to specified url after they’ve logged in, replacing the default ‘go to dashboard’ behavior. Good for showing an important page/post to logging in users. (never made it live on WannaNetwork)
  • Logout Redirect - Redirects users to specified url after logging out – say goodbye to users logging out. Similar to the login redirect obviously.  (never made it live on WannaNetwork)
  • Mailpress – A plugin for customizing mail sent from your WordPress MU installation but also has modules for nesletter management. This is the only mail solution we could find that handled sending mail to the user base of WannaNetwork (19,000 users).
  • Moderation – Moderate posts, comments and blogs across your WordPresds Mu install with this handy and extremely powerful plugin. Probably one of the most important plugins to have! (Was planned for future release on WannaNetwork)
  • Multi-DB – Allows you to split your single database into 16, 256 or 4096 database – and if you are using cPanel, even incorporates a script that will do that for you. A must for larger sites. (Planned for use at WannaNetwork)
  • Rebranding WordPress - Want to make remove WordPress branding, help links and more from your MU site? This package makes it simple to replace existing WP stuff with your own links.
  • Recent Comments – This plugin allows you to display a list of recent comments on your main blog. Simple and effective. What could be better?
  • Recent Posts - Allows you to display a list of recent posts on your front page without needing a widget. Another Simple and effective plugin.
  • Signup Code – This plugin adds the ability for you to set a signup code that stops any new visitors from creating a blog unless they know the code. Could be useful against signup spam.
  • Simple:Press Forums - Simple:Press is a feature rich forum plugin for WordPress. It fully integrates into your WP based site utilising the same user records and database and displaying on a single WP page. It is fully customisable and comes with a number of skins and sets of icons to get your started. Current users have shown it to be fully scaleable whether your site membership numbers the tens or the thousands.
  • Sitemaps and SEO - A very simple and yet incredibly effective and lightweight automatic sitemap generator, along with a heavily hacked version of the famous All in One SEO pack.
  • Support System - This plugin sets up a comprehensive support system for your MU. It has an FAQ, and Support Ticket systems. This was used on but we liked support to be in the forums on the regular
  • Supporter – An upgrade plugin that allows you to charge for upgrades to blogs. (Planned for release on WannaNetwork)
  • Terms of Service – This plugin places a Terms of Service box on the signup form forcing the user to tick the associated checkbox in order to continue. Helps with spam and also keeps you safe by having all users agree to the TOS.
  • wp-spamfree - An extremely powerful anti-spam plugin for WordPress that eliminates comment spam, including trackback and pingback spam. It works invisibly without CAPTCHA’s, or other inconvenience to site visitors. The plugin includes spam-free contact form feature as well.

Important Note:

Through all of this I’ve received messages from people asking me about BuddyPress and if WannaNetwork’s problems lay within it. The simple answer is NO.
Some speculation from WannaNetwork admins state that the site was in trouble due to BuddyPress and how it handled users. I admit that the new way is much better then the old way but it was not the cause for issues at WannaNetwork. I blame a shortfall in the hosting environment, and poor server administration at Rackspace.. if anything.

BuddyPress requires a lot of work to set up and oeprate on a system as large as 19,000 users so if you’re not ready to take on such a project now or in the future you may want to look elsewhere.

Some alternatives to BuddyPress:

  • Communities – Create internal communities with their own discussion boards, wikis, news dashboards, user lists and messaging facilities
  • Friends – Lets your users become friends with each other.
  • Messaging – A simple to use mu-plugin that gives your users all the power of a facebook style messaging system.


  • Have a proven revenue model in place.
  • Have a good hosting environment, something that gives the site some good resources.
  • Have something(s) in place to prevent spam, either way you will have spammers.
  • Provide quality features for your users, see above plugins for some ideas.
  • Don’t release something if you’re not finished with it (Features can be added later).
  • Get paid up front if you’re building this for someone else.

Anyone else have any tips?



We’ve decided to transition our website from the domain to our new home at

With this move we redesigned our portfolio to really focus on current and past projects, items in our portfolio will now scroll across our homepage.

We’eve simplified the design as to make it less confusing and will be adding new pages over time to explain more about our added services and some features of the websites we build.

If you have any questions about our new site or something in our portfolio, feel free to use the contact page to send us a message.

Currently Accepting New Projects

Contact us today to get your next website or web app developed!
Inquire on our contact page!


Welcome to Playforward's online portfolio. We let our work speak for itself! Take a look around and if you need assistance, please check out the services we offer and contact us to get started.