Using a Custom wp-signup Page With WordPress MU

WordPress MU is a great system, but as with all systems their are drawbacks. One such drawback I’ve had problems with is the lack of available customizations for the sign-up/registration page. Whether you just want to change the style, or change the very text itself there really isn’t anything you can do with it without hacking the WordPress MU core which can be a nightmare come upgrade time.

A Custom WordPress Registration Page
A Custom WordPress Registration Page

My solution to this problem has been to use my own wp-signup.php page within my sign-up theme. Here’s how it’s done:

Before you start, make sure your server supports Apache mod-rewrite. An easy way to do this is to simply go to a post on one of your blogs. If you don’t see ?= anywhere in the address you should be OK. If not, go to http://www.yoursite.com/wp-admin/options-permalink.php and see if permalinks are available on your server. If they are not you will need to get this enabled by your server administrator before going any further.

Next, the most important part, open up the .htaccess file in the root of your WordPress MU installation in your text editor. You may need to create the file if you haven’t been using any redirects previously.

Find the line:

RewriteBase /

Right below it (before anything else) add the line

RewriteRule ^wp-signup.php(.*)$ wp-content/themes/[your theme name]/wp-signup.php$1

Save the file.

Finally, copy (don’t move) wp-signup.php from the root of your WordPress MU installation to your theme directory (usually content/themes/default). Make sure you leave the original file in place. Moving the file alters the WordPress MU core installation which is never a good practice.

Now you may edit the wp-signup.php file to your heart’s content. Redirects to the new file should be seamless to your users.

If you would like to see how I’ve used this take a look at . Now my needs were simple, we just wanted to clarify some of the text to reduce confusion for our users. There is a lot more that can be done to make this form yours.

* edited Feb 27th, 2010: added a couple of important lines *
Never write on a deadline when you don’t have to. I forgot to change 2 important line.

In your new wp-signup.php page (the one in your themes folder) find the following 2 lines:

require( dirname(__FILE__) . '/wp-load.php' );
require( 'wp-blog-header.php' );

and replace them with the following:

require( '../../../wp-load.php' );
require( '../../../wp-blog-header.php' );

This will ensure that WordPress MU can find the files it needs to process your data.

Experts Earn Their Title

A conversation the other day got me wondering what is an expert? I mean, what makes them an expert in their field? Is it that they’re smarter than everyone else? Is it just that they spent more time at it that everyone else? What is it?

In the web the idea of an expert is often a misnomer. It seems that to web people the expert title is often given freely to any person who knows more about a specific topic than you do. For example, I was once labeled a Joomla! expert after a single installation of the software without even launching a site on the platform. Why? because I had done it and the other person hadn’t I must be an expert.

On the flip side, after coding CMS systems for 11 years I was told the other day that I was a rookie as I didn’t code in this particular person’s language of choice. To this I had to say really? Simply because I don’t know your language I am a rookie at all things web? How strange.

A single install of Joomla! does not make you an expert in Joomla!. However, the ability to look at the code of Joomla! and be able to understand it and modify it could very well make you an expert in PHP. On the other hand, the ability to code a million line PHP application may make you an expert in your application, but if you can’t read and understand anything else you might never truly grasp the language and will never be recognized as an expert. This last example I see all the time as a CS student in code which is never written, but merely cut and pasted together to perform some function. After all, if you can’t explain or understand what you’ve done than you really haven’t done much at all.

So then, what really makes an expert. In my humble opinion and expert is someone who through their merits and experience is recognized by their peers as a leader in their field. Someone who can not only do the work, but actually understands what they are doing and can communicate that idea to others. So, web people, when throwing around titles such as expert make sure they’re going to a deserving soul and not simply someone who can follow a readme file. Anything else is just insulting to those who really have mastered their craft.