Table of Contents
What is WordPress?
At its core, WordPress is a free online tool for building websites and blogs. It’s a scalable, feature-rich Content Management System (CMS) that allows users to create and edit web content without a background in computer programming. Over 43% of the web relies on WordPress, and with good reason — it’s powerful, dependable, and flexible enough to power everything from personal blogs to enterprise platforms.
This guide covers WordPress from installation through to content management and site customisation. Uniquely, it addresses both the modern Site Editor (used with full-site editing block themes) and the classic/hybrid theme workflow — because in 2025, both paradigms are very much in active use, and knowing which one you’re working with changes everything about how you build your site.
What are the benefits of using WordPress?
WordPress is open-source software, meaning its codebase is public for anyone to see, use, and contribute to. This has several practical benefits. You get access to the same adaptable publishing system used by internationally known brands and publications, entirely for free. There are thousands of free plugins and themes available, and a vast community of developers constantly building new tools.
From a developer’s perspective, WordPress is also one of the most extensible platforms available. Custom post types, custom taxonomies, the REST API, WP-CLI, and a mature hook system mean you can bend WordPress to almost any requirement without touching core files. Our own work here at getButterfly is built entirely on WordPress plugin development and theme engineering.
What is the difference between WordPress.org and WordPress.com?
Although they share a name, WordPress.org and WordPress.com are fundamentally different products. The most important distinction is hosting and control.
WordPress.org is the self-hosted, open-source version. You download the software, install it on a server you control, and have complete freedom over themes, plugins, code, and data. This is what developers mean when they say “WordPress.”
WordPress.com is a hosted service built on top of WordPress. It handles servers and updates for you, which sounds appealing, but you sacrifice control in return. Without a paid plan you cannot install custom plugins or themes, run your own ads, or use Google Analytics. Even on paid plans, you don’t have full server access. WordPress.com could theoretically suspend your site at any time.
For anyone serious about building a website — and especially for developers — WordPress.org is the only real option. The rest of this guide assumes you are using self-hosted WordPress.org.
How to make a WordPress website
Buy and register a domain name
Before anything else, you need a domain name and web hosting. Your domain is your address on the internet — something like yourbusiness.com. You purchase it through a domain registrar such as WHOIS, Namecheap, or Google Domains. Most domains cost under $20 per year, though premium or short domains can be significantly more.
Choose a WordPress host
Affiliate disclosure: the link below is an affiliate link. We only recommend hosts we have used ourselves.
DreamHost is one of the leading providers of managed WordPress hosting, with plans available for every budget. It’s one of the few hosts officially recommended by WordPress.org, offers a free domain for the first year, and includes one-click WordPress installation. Their shared plans are a solid starting point for new sites, and their DreamPress managed plans are worth considering once you’re generating meaningful traffic.
Install WordPress
Most hosts today offer a one-click installer through a control panel. Here’s how it works across the most common setups:
Via cPanel / Softaculous (most shared hosts)
- Log into your hosting control panel (cPanel).
- Find the Softaculous Apps Installer or WordPress icon.
- Click Install Now, select your domain, set your site title, admin username, and password.
- Click Install. WordPress will be live within a minute or two.
Manual installation via FTP
- Download the latest WordPress zip from wordpress.org/download.
- Create a MySQL database and user via your host’s control panel, and note the database name, username, and password.
- Unzip WordPress and upload all files to your server’s public root (usually
public_html) via FTP (FileZilla or similar). - Visit your domain in a browser. WordPress will detect the missing
wp-config.phpand launch the five-minute install wizard. - Enter your database credentials, set a site title, admin username, and password. Click Install WordPress.
Via WP-CLI (for developers)
If you have SSH access to your server, WP-CLI is the fastest way to install and configure WordPress:
wp core download
wp config create --dbname=mydb --dbuser=myuser --dbpass=mypassword
wp db create
wp core install --url=https://yourdomain.com --title="My Site" --admin_user=admin --admin_email=you@example.com
WP-CLI also lets you install plugins, update core, manage users, and run searches and replacements — all from the command line. It’s well worth learning if you manage more than one WordPress site.
Classic/Hybrid Themes vs. the WordPress Site Editor: Which Are You Using?
This is the question that most beginner guides skip entirely, but it matters enormously for how you build and customise your site. Since WordPress 5.9, two distinct theme paradigms have coexisted, and the editing interface you see depends entirely on which type your active theme uses.
Classic themes
Classic themes predate the block editor. They use PHP template files (header.php, footer.php, single.php, etc.), register widget areas, and rely on functions.php for customisation hooks. Site-wide appearance is managed via Appearance > Customize (the Customizer), which exposes options like site title, colours, fonts, header and footer settings, and widget areas.
Classic themes give developers fine-grained control over markup and are still widely used, particularly for complex or bespoke projects where you need to control every aspect of the HTML output.
Hybrid themes
Hybrid themes are classic themes that have been updated to support blocks in specific areas — typically the post content area — while keeping PHP templates for the overall site structure. They use the block editor for content but still have widget areas, a Customizer, and PHP-based templates. Most actively maintained “classic” commercial themes are now hybrid themes, even if they don’t market themselves that way.
Block themes and the Site Editor
Block themes (also called FSE — Full Site Editing — themes) are built entirely from blocks. There are no PHP template files; instead, templates are defined as HTML files containing block markup stored in a /templates folder, with styles and settings governed by theme.json. When you activate a block theme, Appearance > Customize disappears and is replaced by Appearance > Editor — the Site Editor.
The Site Editor lets you visually edit every part of your site: the header, footer, templates (like the single post template or the archive template), and global styles (typography, colours, spacing). Everything is done with blocks and no code is required.
Which should you use?
Here’s a practical guide to choosing between the two:
| Scenario | Recommended approach |
|---|---|
| You’re new to WordPress and want the simplest setup | Block theme + Site Editor |
| You need very specific control over HTML output and PHP logic | Classic or hybrid theme |
| You want to use the Customizer and widget areas | Classic or hybrid theme |
| You want a future-proof, no-code visual editing experience | Block theme + Site Editor |
| You’re building a WooCommerce store | Either works; block themes are increasingly well-supported |
| You’re a developer building a bespoke site | Hybrid theme gives the most control |
It’s also worth knowing that you can switch between theme types, but it comes with caveats. Switching from a classic to a block theme will remove widget content and Customizer settings. Always test on a staging environment first.
Add a WordPress theme to your website
Themes control how your website looks and, to varying degrees, how it behaves. There are thousands available for free in the WordPress Theme Directory, and many premium options available from marketplaces and independent developers.
How to choose a WordPress theme
When evaluating themes, start with these criteria: Is it actively maintained and compatible with your current version of WordPress? Does it have good reviews? Is it a classic, hybrid, or block theme — and does that match the workflow you want? Is it mobile-responsive? Does it load quickly? You can check a theme’s performance using tools like PageSpeed Insights before committing to it.
Install your WordPress theme
To install a free theme, navigate to Appearance > Themes, click Add New, search for the theme you want, and click Install followed by Activate.
For a premium theme that comes as a ZIP file, go to Appearance > Themes > Add New > Upload Theme, select your ZIP file, and click Install Now, then Activate.
Create your key pages
With your theme in place, you’ll need a few core pages before your site is ready to publish. Plan your structure before you start creating pages — particularly if you’re aiming for good SEO, since URL structure and internal linking matter from day one.
How to create a static home page
By default, WordPress displays your latest blog posts on the home page. To use a custom static page instead, first create a page (e.g. titled “Home”), then go to Settings > Reading and under Your homepage displays, select A static page and choose your new page from the dropdown. Save your changes.
How to create a blog on your WordPress site
If you’re using a static home page, you need a separate page to act as your blog archive. Create a new page titled “Blog” (leave it blank — no content needed), then go to Settings > Reading and set that page as your Posts page. Your blog will now live at /blog and display your latest posts automatically.
How to create a contact page
A contact page is essential for almost any site. At minimum, include a contact form so visitors can reach you without exposing your email address to spam scrapers. We use and recommend Gravity Forms for this — it’s the most capable form plugin available for WordPress. We’ve also built several Gravity Forms add-ons, including a date/time picker and repeater fields.
How to create an about page
Your About page is often the first place a new visitor goes after landing on your site. Use it to explain who you are, what you do, and why someone should trust you. This page should reflect your brand voice and give visitors enough context to decide whether to stay or get in touch. A well-written About page is also a meaningful part of your marketing.
How to add content to your WordPress site
How to add text
All content in WordPress — whether a post or a page — is created using the WordPress Block Editor (Gutenberg). You add content by inserting blocks: paragraphs, headings, lists, quotes, code, tables, and many more. Each block has its own toolbar and settings panel. You can reorder blocks by dragging or using the move controls, and group them for more complex layouts.
Posts are for time-stamped content like articles and news updates. Pages are for evergreen content like your About, Contact, and Services pages. Both use the same editor.
How to add images
Insert an Image block, then upload a file from your computer or choose one from your Media Library. Always fill in the Alt Text field — this is important for accessibility and SEO. WordPress will generate multiple image sizes automatically; choose the appropriate size for the context rather than always inserting the full-size original.
How to add videos
For self-hosted videos, use the Video block and upload your file to the Media Library. For YouTube or Vimeo videos, paste the URL directly into a paragraph block and WordPress will auto-embed it, or use the dedicated YouTube/Vimeo embed block. We’ve also developed a YouTube Playlist Player plugin for WordPress if you need to display entire playlists.
WordPress Categories and Tags
Categories and tags are both part of WordPress’s taxonomy system for classifying posts. Think of categories as the chapters of a book — broad, hierarchical, and required for every post. Tags are like an index — specific, flat, and optional.
To assign categories to a post, open it and use the Categories panel in the right-hand sidebar. You can create new categories directly from there, or manage them in bulk at Posts > Categories.
A word on tags from an SEO and performance perspective: we don’t recommend using tags unless you have a clear taxonomy strategy in place. Tag archive pages are a common source of thin content and duplicate content issues. They also add database overhead. If you do use tags, make sure their archive templates are well-designed and either noindexed or genuinely useful to visitors.
How to customise your WordPress site
How you customise your site depends on which theme type you’re using.
With a classic or hybrid theme, most global customisation happens in Appearance > Customize. The Customizer lets you change your site title, logo, tagline, colour scheme, fonts, header and footer settings, and widget areas. Widget areas are sections of your site (typically sidebars, headers, and footers) where you can drop reusable content blocks — things like a recent posts list, a search bar, or a contact form.
With a block theme, global customisation moves to Appearance > Editor (the Site Editor). From there you can edit your site’s templates (e.g. the single post template, the archive template), template parts (header, footer), and Global Styles — a central control panel for colours, typography, and spacing that applies across the entire site. There are no widget areas; instead, any block can be placed anywhere in any template.
We offer several free and premium tools to extend WordPress customisation: Font Awesome icon support, an improved Dashboard pages menu, and premium plugins for eCards, performance optimisation, visit recording, and image galleries.
WordPress Plugins
WordPress plugins are add-ons that extend your site’s functionality. There are over 60,000 free plugins in the WordPress Plugin Directory, covering everything from SEO and caching to e-commerce and forms.
How to install WordPress plugins
Go to Plugins > Add New, search for a plugin by name or keyword, click Install Now, then Activate. For premium plugins that come as ZIP files, use Plugins > Add New > Upload Plugin instead.
Recommended WordPress plugins
Every site’s plugin needs are different, but a few categories are almost universally needed: an SEO plugin (we build and use W3P SEO), a caching or performance plugin, a security plugin, and a backup solution. Only install what you actually need — every active plugin adds overhead and a potential security surface.
Common WordPress mistakes
Here are the most common mistakes new WordPress users make, and how to avoid them:
- Not keeping WordPress, themes, and plugins updated. Updates patch security vulnerabilities. Enable auto-updates for minor core releases at minimum.
- Using the default “admin” username. It’s the first thing brute-force bots try. Use a unique admin username and a strong password.
- Installing too many plugins. Each plugin adds load and potential conflicts. Audit your plugins regularly and deactivate and delete anything you’re not using.
- Ignoring permalink structure. Set your permalinks to Post name (Settings > Permalinks) before you publish anything. Changing it later breaks existing URLs.
- Not setting up backups. Your host may provide backups, but don’t rely solely on that. Use a dedicated backup plugin and store copies off-site.
- Switching themes without testing first. Always test theme changes on a staging environment before applying them to a live site, especially when switching between classic and block themes.
Frequently asked questions about WordPress
How can I add a menu in WordPress?
Classic/hybrid theme: Go to Appearance > Menus. Create a menu, add items (pages, posts, categories, custom links), assign it to a menu location defined by your theme, and save. You can also manage menus via Appearance > Customize > Menus with a live preview.
Block theme (Site Editor): Go to Appearance > Editor > Navigation. The Navigation block handles all menus and can be edited visually within any template or template part. There is no separate Menus screen.