Customize WordPress Registration Form

Although WordPress provides default user registration mechanism, sometimes we need to add custom fields to the registration form to collect more information from the user. Here we give a design pattern to create a wordpress custom signup form. We use the same registration page to display the front end and handle the user input information at the back end. All the registration form code will be included in a class MyRegistration.

class MyRegistration
{
  function  _construct($template){};
  function  register()
  {
    if(form fields are empty) return;
    create a new user;
    redirect to home page;
  }
}

In the constructor, we will add a hook function register() to the action template_redirect, which is called before the our registration template is loaded. In the hooked function, we will check if the user has filled the fields in the signup form, if so, will create a new user using wordpress internal function wp_create_user,  then  redirect to the home page by calling wp_redirect.  To let the user keep in login state, we should call wp_set_auth_cookie to set the cookies. If the user has not filled the fields yet, just return to load the template to display the registration form.

The custom registration form front end is provided as a page template, so you should create a register page in the administration panel and associate the page with the template. Then create a MyRegistration object passing the template name as the parameter to the constructor. The registration template is a html form with the action set to the url of the registration page and with a hidden input set to the redirection url so that we can retrieve the url at the back end and do the redirection in the register() function.

Did you like this?
Tip admin with Cryptocurrency

Donate Bitcoin to admin

Scan to Donate Bitcoin to admin
Scan the QR code or copy the address below into your wallet to send some bitcoin:

Donate Bitcoin Cash to admin

Scan to Donate Bitcoin Cash to admin
Scan the QR code or copy the address below into your wallet to send bitcoin:

Donate Ethereum to admin

Scan to Donate Ethereum to admin
Scan the QR code or copy the address below into your wallet to send some Ether:

Donate Litecoin to admin

Scan to Donate Litecoin to admin
Scan the QR code or copy the address below into your wallet to send some Litecoin:

Donate Monero to admin

Scan to Donate Monero to admin
Scan the QR code or copy the address below into your wallet to send some Monero:

Donate ZCash to admin

Scan to Donate ZCash to admin
Scan the QR code or copy the address below into your wallet to send some ZCash:

Leave a Reply