This article lists the steps I take when setting up a WordPress website. I’ve included links to some of the plugins I use, and to helpful articles with more comprehensive instructions.
I’m not claiming this is all necessarily best practice, but it’s what I do.
I have also written an article titled Building a Version of My Standard Site Using the Ollie Block Theme .
- Useful Advice
- Obtain Hosting and a Domain Name
- Connect the Domain Name to the Host
- Install WordPress
- Check the Permalinks
- Install and Activate a Security Plugin
- Change Settings
- Install and Activate a Theme
- Add a Logo and Site Icon
- Install an Anti-Spam Plugin
- Install an SEO Plugin
- Install a Search Plugin
- Set Up Backups
- Create Pages
- Set Up The Menu
- Add Widgets
- Add a Contact Form
- Customise the Website’s Appearance
- Check the Design on Different Sized Screens
- Legal Considerations
Useful Advice
If you are new to WordPress then you may find this free online guide helpful: Easy WP Guide and I have some other suggestions in my article “WordPress Learning Resources“.
For a quick introduction to setting up a Block theme, see Jamie Marsland’s YouTube video WordPress Beginners Quick Start Guide.
Obtain Hosting and a Domain Name
Self-hosted WordPress needs a host in order to work. WordPress.com includes hosting.
While I’m not able to recommend the “best” host to you, some that I have either used myself, or seen recommended, include Krystal, Eco Web Hosting, Guru, HostPresto, Brixly, Hostinger, BigScoots, 34SP, 20i, Kualo, Kinsta and Clook. I suggest that you do your own research and read reviews.
Many hosts will include a free domain name. Taking advantage of this can be easiest way to connect your domain name to your site, but it’s generally considered to be a good idea to register your domain with a different company. That way if you decide to switch hosts, you can just point your domain to the new host and carry on. I’ve registered domains with 123-reg and Namecheap.
Connect the Domain Name to the Host
If you haven’t registered your domain name with your host then you’ll need to point the DNS records of the domain to your host’s nameservers. Search your host’s documentation to find out what their nameservers are called.
Hopefully, your domain registrar will give you instructions telling you where to input these names. Here’s a link to 123-reg’s instructions but these may be different for other companies: How do I change the nameservers for my domain name?
It may take a couple of days for the change to take effect.
Install WordPress
Many hosts will have an easy way to install WordPress from their control panel. (Note that you would not need to take this step with WordPress.com.)
WPBeginner have a tutorial covering the most common auto-installer tools: How to Install WordPress.
It’s very important that you don’t choose “Admin”, or another easy to guess name, as your username.
Note that if your host provides an SSL certificate and you are given the option of choosing https:// rather than http:// then you should do so.
It may be that your host will have automatically installed and configured an SSL certificate, but if not then you should check their support/help documentation for any special instructions about how to ensure that the SSL certificate has been applied to your site.
Check the Permalinks
It’s worth checking that the permalink setting will give your pages and posts the structure that you require.
I want a nice, simple, informative url for my WordPress posts…
so I usually choose the “Post name” option as the permalink setting.
Install and Activate a Security Plugin
There are several possible plugins you could choose, and I use WordFence . (This step applies to self-hosted WordPress, only).
Under the settings for this plugin, I lock users out after a small number of login failures and forgot password attempts, or if they use an invalid user name of “admin” or my website name.
Change Settings
Under Users: Your Profile you can choose the name that is displayed as the author of posts. So, my username should be something people won’t guess, but I can have a nickname of “Jane” and can specify that this is the name that is displayed publicly.
I usually switch the site language from English (United States) to English (UK) in the General Settings area.
You can also change the date and time format, the site name and description (Tagline) and ensure that you have the correct email address.
This is a good time to check the image sizes in Media Settings, before uploading any images.
Install and Activate a Theme
A new WordPress installation will come with the default theme already installed and activated. You can choose to use this theme or can install and activate an alternative.
There are hundreds of different themes to choose from if you are using self-hosted WordPress. Many of these are free and can be installed directly from the WordPress dashboard. WordPress makes it easy to change themes and you can try out lots of them to find one you like.
Having said that, I pretty much always use one of my favourite themes: Ollie and GeneratePress.
If I’m using the Ollie theme, then I may also install my own child theme.
In the case of GeneratePress, the theme itself is free but, to make it easier to customise, and to take advantage of some extra features, you can install the GP Premium plugin.
When I’m using GeneratePress, I install and activate the GP Premium plugin and input my license key. I activate the add-ons I need e.g. Menu Plus, Blog, Spacing, Disable Elements, Copyright… Then I can edit the copyright in the footer to be my own name/website name.
Add a Logo and Site Icon
Many themes will allow you to add a logo in the Customiser, in the “Site Identity” section. If I want to use SVG files for my logo (or elsewhere on my website) then I might install the SVG Support plugin.
Install an Anti-Spam Plugin
WordPress tends to come with the Akismet plugin ready installed but not activated. A subscription costs £4 a month for a commercial site. WordPress.com automatically uses Akismet.
I used to use a free alternative, Anti-spam, to prevent spam comments, but recently I’ve been using WP Armour.
Install an SEO Plugin
I usually use The SEO Framework.
They have an article called “Set up our plugin in 5 minutes” that you may find useful.
I’ve seen recommendations for SEOPress so I’d suggest you consider that too.
Install a Search Plugin
This is an optional step that may, or may not, be useful on your website. You might not realise that the default WordPress search does not search things such as category and tag names. You could consider installing a plugin such as WP Extended Search to get around this limitation.
Set Up Backups
One option is to use the free UpdraftPlus plugin and connect it up to a Dropbox account. See this article by WP Beginner for more information: How to Backup & Restore Your WordPress Site with UpdraftPlus.
Alternatively, you could choose the All-in-One Migration plugin – for instructions, see the user guide. The free version will allow you to backup your site manually and download the backup file, but you’d need to purchase an extension to schedule regular backups to be stored in, for example, Dropbox, Google Drive or Amazon S3. The developers used to have a link on their post “How to Increase Maximum Upload File Size in WordPress” allowing you to download a free plugin to increase the size of imports to 512MB. Disappointingly, the link now leads only to a paid plugin, although I assume their other suggestions will still work.
Due to the limitations of the free version of All-in-One Migration, I’ve been looking for another backup plugin to recommend. WPVivid and the free version of Backup Bliss both have good reviews and seemed to work well when I tried them.
If you are prepared to pay a monthly fee for extra peace of mind, then it’s worth considering BlogVault (as at the time of writing you can get 20% off BlogVault by purchasing via WPBuilds.)
Create Pages
Unless the site is merely a blog, you’re likely to want several pages. See Adding a New Page from The Easy WP Guide.
I recommend some clear and helpful guides by Gill Andrews: “Creating an Effective Homepage“, “How to Write a Killer About Us Page for Your Small Business Website” and “Website Content Checklist“.
You can specify which page will be the homepage in the Reading settings.
Images
I have suggested some places to find images in my articles “Where to Find Free Website Graphics” (including in the comments section where I add new resources that I come across) and “More Places to Find Free Graphics“.
It’s important to ensure that any images have been legally obtained, respecting the copyright of their creator, and with a license that permits commercial use (if appropriate).
It’s a good idea to keep images as small as possible, because loading large images will slow a site down. However, they should never be uploaded with a smaller size, in pixels, than the size at which they will be displayed. For example, if an image is 600px wide but it is enlarged to stretch across the full width of the screen then it will look terrible.
You may want to consider using the WebP format to reduce the size of photos and illustrations. If so, there are various online tools, and WordPress plugins, that can convert them for you – for instance the Converter for Media plugin.
Set Up The Menu
By default, WordPress will add all your pages to the navigation menu, but it’s likely that you will want to decide which pages appear, and in what order.
WPBeginner have a tutorial explaining how to do this: How to Add Navigation Menu in WordPress.
Add Widgets
Most themes have several widget areas, where you can add the widgets that come as standard with WordPress, or are added by plugins.
See Widgets at the Easy WP Guide for an explanation.
Add a Contact Form
If you’d like a contact form then you can choose from various plugins, for example WP Fluent Forms.
To increase the chance of your form being delivered, and not being treated as spam, it’s a good idea to use something along the lines of noreply@yourdomainname.com in the “From Email” field – even if this email address does not exist.
If I am using Fluent Forms then I go to “Email notifications” in the form’s settings and click the blue button in the Actions column, then the “Advanced” option at the bottom of the page. Here I enter {inputs.email} in the “Reply to” box.
Sometimes you may find that messages sent via WordPress forms seem to go missing. If this happens to you then Kinsta have an article that may help.
You may decide that you would rather just provide an email address, rather than a form, to enable your visitors to contact you.
Customise the Website’s Appearance
Block themes (such as Ollie) have global styles as part of the Site Editor.
Classic themes (including GeneratePress) will provide options in the customiser, allowing you to change various aspects of the site’s appearance. How much control you have does vary from theme to theme.
For some excellent design advice, see Jennifer Bourn’s slideshow on Website Design Principles. My “Colour Scheme Suggestions” page may also help.
To check that colour combinations have enough contrast, from an accessiblity standpoint, try the Learn UI Design Accessible Color Generator. If the colours you have chosen don’t meet the guidelines, then this online tool will suggest an alternative.
You can find some other useful information on accessibility on The Admin Bar website at https://theadminbar.com/accessibility-weekly/.
For a method I’ve used to download and use Google Fonts, see my article “Local Fonts with GeneratePress“.
Check the Design on Different Sized Screens
Ideally, you’d view the website on various different devices but this isn’t always possible and there are plenty of tools you can use instead.
Here, Firefox’s Responsive Design Mode (which can be found under “More Tools”) showed me that I needed to adjust the font size and/or spacing for mobile devices, so as to fit the whole of the name “GeneratePress” on one line.
Legal Considerations
I’m not going to attempt to give you legal advice. You may decide that you should add pages for Terms and Conditions and a Privacy Policy.
You should also consider the ramifications of the GDPR. See “A Guide to GDPR” on the ico website.
I have seen people recommend using either the CookieYes plugin or the Complianz plugin, so they may be worth a look.
Hey Jane
I’ve just come across this: thanks for the mention of 20i. Just a clarification: 20i’s WordPress hosting is fully managed, and significantly cheaper than Kinsta with more features. Thanks!