Key takeaways
- Publishing creates a URL and nothing else. On a classic theme you add the page under Appearance > Menus and press Save Menu. On a block theme you edit the Navigation block in Appearance > Editor.
- If a new page has no header or menu, check its Template setting before anything else. A Landing or canvas template leaves the navigation out on purpose, and switching to Default brings it back.
- Deleting a page takes its menu item with it. Recreating a page with the same name does not bring the menu item back, so you have to add it again.
- A page called Cart does nothing until it is assigned under WooCommerce > Settings > Advanced > Page setup. WooCommerce says Cart, Checkout and My Account must each be a separate page.
- For a page that returns 404, resave your current permalink structure without changing it. Changing the structure on a live site breaks every existing URL.
Almost nobody gets stuck on the part where you create the page. They get stuck after pressing Publish, when the page doesn’t show up in the menu, has no header, or returns a 404. Those are four separate systems: the page itself, the navigation, the template and the URL rules. Each one needs its own step, and fixing one doesn’t fix the others.
This guide covers both jobs: creating the page, then making it reachable and getting it to display correctly. To change a page that already exists, see how to edit pages in WordPress.
What do you need before you add a page?
You need an account that can publish pages. Administrators and Editors can. If you log in and there is no Pages item in the left-hand admin menu, your role doesn’t include page permissions, and an administrator has to change it.
Next, find out which kind of theme you have, because the menu steps depend on it. Open the Appearance menu in the dashboard. If it has an Editor item, you’re on a block theme and navigation lives in the Site Editor. If it has Menus and Customize, you’re on a classic theme. Many tutorials were written for classic themes. Readers on block themes follow them, can’t find Appearance > Menus, and conclude WordPress is broken. It isn’t. The setting has moved.
Finally, check that you actually want a page. WordPress.org’s documentation puts it this way: pages are for non-chronological content, such as About, Contact, Services and legal notices. Posts are dated entries that show up in the blog and its feed. If the content will still be true next year and visitors will look for it in the navigation, make it a page.
How do you create and publish a page?
This is the standard workflow in the block editor, and it works the same on classic and block themes:
- In the dashboard, go to Pages > Add New Page. Some versions and hosts label the button Add New. The admin bar’s + New > Page opens the same screen.
- Type the title. WordPress builds the slug from it, so “Our Services” becomes
/our-services/. - Add the content as blocks: a Heading block for each section, Paragraph blocks for the text, and Image, Buttons or Columns blocks where they help. Text pasted from Word or Google Docs often brings stray spacing and fonts with it. Paste it as plain text, or type into the blocks directly.
- Open the settings sidebar (the panel icon at the top right) and set everything in the next section before you publish.
- Click Save draft, then Preview in a new tab. Check the page at desktop width and on a phone.
- Click Publish, then confirm by clicking Publish again.

Which sidebar settings should you set before publishing?
Five settings in the Page tab decide how the page behaves once it’s live:
- Status and visibility. Published pages are public. Drafts, Pending Review, Private and password-protected pages are hidden from visitors. They are also left out of menus and the homepage selector.
- Slug. Settle it now. If you change it after other pages, emails or ads link to it, those links break unless you add a redirect.
- Parent. Choosing a parent makes this page a subpage and puts the parent in the URL, so a Board page under About becomes
/about/board/. It doesn’t put the page into any menu. - Template. This controls the layout around your content. Leave it on Default unless you know you want something else. The template section below explains why.
- Order. A number (1, 2, 3) that sorts pages in automatic page lists and in some themes’ default menus.
Can you create pages from the Site Editor instead?
Yes, on a block theme. WordPress.org’s Site Editor documentation describes Appearance > Editor > Pages, where the plus icon creates a draft. The benefit is that you edit the page inside its real template rather than on a blank canvas. The risk is that the header, footer and title belong to the template, not the page. WordPress locks those blocks and shows “Edit your template to edit this block.” If you unlock and change them, the change applies to every page that uses the template.
How do you get the new page into the menu?
You add it yourself. The menu doesn’t pick up new pages, and this is the most common “my page is missing” report on the WordPress.org forums and Reddit.
On a classic theme
- Go to Appearance > Menus.
- Pick the right menu from the “Select a menu to edit” dropdown. Sites often have several, and editing the wrong one is a common mistake.
- In the Pages box, tick your page and click Add to Menu.
- Drag it into position. To create a dropdown, drag it slightly right, under its parent item.
- Under Menu Settings, check that the menu is assigned to a location your theme actually shows, usually Primary or Header.
- Click Save Menu. Nothing changes on the live site until you do.
The same screen has an “Automatically add new top-level pages to this menu” checkbox. It only covers top-level pages and only works with classic menus, and it adds every new page, including ones you didn’t mean to show. Most sites are better off adding pages by hand.

On a block theme
Go to Appearance > Editor, open Navigation (or open the header template and select the Navigation block), click the plus icon and add a Page Link to your page. Then save. One Reddit user described getting there by trial and error: “I had to access the template editor, edit the navigation element, and then I could add, reorder, and delete page links.” The Site Editor shows each menu item as a block, and you drag Page Links into one another to build a submenu. For more complex dropdowns, see our guide to building a WordPress drop down list.

One trap applies to both theme types. In a resolved WordPress.org thread, a site owner deleted their pages and recreated them under the same names, and the menu stayed empty. Deleting a page removes its menu item. A new page with the same title is a different page, so you have to add it to the menu again.
How do you make the new page the homepage?
Go to Settings > Reading, choose “A static page”, pick your page under Homepage and save. If you also want a blog, create an empty page called Blog, choose it as the Posts page, and WordPress will list your posts there. Only published pages appear in these dropdowns. If yours is missing, it’s probably still a draft.
Why does the new page have no header or look different?
The page has the wrong template. Many themes include a Landing, Blank or Canvas template that deliberately removes the header, footer and menu, which suits a campaign page and nothing else. In a WordPress.org support thread, a site owner getting ready for a promotion published a new page and found it had no menu. The page was using a Landing template, and switching it to Default fixed the problem. Check the Template field in the sidebar before you change anything else.
If the template is right and the page still looks wrong, the problem is probably in the template itself: its width, spacing, sidebar or header. This is where adding a page turns into design work, and a change made there affects every page that uses the same template. If you’d rather hand that work off, SiteSelf’s page on design changes to an existing site describes the agent editing the styles and templates on your live site from a request you write in chat. If you want to do it yourself, theme customization that survives updates covers which layer to edit.
How do you add a page with Elementor or another builder?
Create the WordPress page first, then open it in the builder. With Elementor, that means Pages > Add New Page and then the “Edit with Elementor” button. Builders are common. HTTP Archive’s 2025 Web Almanac found that about 60% of WordPress sites use some form of page builder. Builders often have their own template and header settings, so the WordPress Template field may have no effect on what visitors see. If the builder won’t load or save, the problem is in the builder, not in page creation. Creating the page again usually just leaves you with duplicates.
What about WooCommerce Cart and Checkout pages?
They are ordinary WordPress pages, but WooCommerce ignores them until they’re assigned. A page called Cart does nothing until WooCommerce knows it’s the cart page. WooCommerce’s pages documentation sets out the process:
- If the pages are missing, recreate them from WooCommerce > Status > Tools with the create-pages tool.
- If you build one by hand, put the Cart or Checkout block on it, or put the shortcode (
[woocommerce_cart],[woocommerce_checkout],[woocommerce_my_account]) in a Shortcode block. Pasted into a Paragraph block, the shortcode may not run. - Assign each one under WooCommerce > Settings > Advanced > Page setup, and assign the Shop page under Settings > Products.
- Use a separate page for each function. WooCommerce warns that sharing one page causes incorrect redirects and broken payment gateways, and version 3.7 and later don’t let you do it.

Themes don’t come with these pages. The theme’s demo content can make it look as if they exist, which is what confused one store owner on r/woocommerce until they ran the Status tool and assigned the pages.
What does a correct result look like?
Open a private or incognito window, where you’re logged out, and check four things. The page loads at its URL. It appears in the menu on desktop and inside the collapsed mobile menu. It has the same header and footer as the rest of the site. Its links, buttons and forms work. Checking while logged in as an administrator doesn’t count, because you can see drafts and private pages that visitors can’t.
What if it still doesn’t work?
Work through the layers in this order. It goes from the cheapest check to the most invasive:
- Status. Open Pages > All Pages. If the page shows “Draft”, “Private” or “Password protected” next to its title, visitors can’t see it.
- The URL returns 404. Check the slug for typos and look for a post, category or plugin page with the same slug. Then go to Settings > Permalinks and click Save Changes without changing anything, which rebuilds the rewrite rules. Don’t switch to a different permalink structure on a live site. That breaks every existing URL.
- Old version showing. Clear your caching plugin, your host’s cache, any CDN such as Cloudflare, and your browser. Only blame the cache after you’ve ruled out status and menus.
- “Publishing failed. The response is not a valid JSON response.” The editor saves through the REST API, and this error means that request failed. Copy your content somewhere safe first. Then resave permalinks and deactivate plugins one at a time. In one WordPress.org case on Google Cloud, the fix was a server setting: Apache’s
AllowOverride Nonehad to becomeAllowOverride All. - “Publishing failed. You are probably offline.” Practitioners usually trace this to an HTTP and HTTPS mismatch, where the WordPress Address and Site Address settings don’t match the SSL setup at the host or CDN.
Stop and get help once a fix means changing server configuration, .htaccess or wp-config.php, or when you’ve switched to a default theme with all plugins off and the error is still there. At that point the problem is in hosting, not in WordPress. Host support can often fix a server-level error quickly. If your checkout is failing, don’t wait: get help straight away.
Frequently asked questions
How do I make a page appear as a dropdown under another page?
Set the parent in the page’s sidebar so the URL is right, then nest the menu item under the parent in Appearance > Menus or in the Navigation block. The parent setting and the menu are separate, so you have to do both. Setting a parent never puts a page into a menu.
Can I add a page straight from the Navigation block?
Yes. In the block Navigation editor you can type a name that doesn’t exist yet and create the page there. It still has to be published before it shows up. It’s easy to end up with a blank published page this way, so add the content before you leave.
How do I duplicate an existing page?
WordPress core has no Duplicate link in the page list. You can open the page, use the editor’s options menu to copy all blocks, and paste them into a new page. A duplicator plugin does the same in one step. Either way, give the copy its own slug and title.
Why can’t I find my new page in Google?
Publishing doesn’t tell search engines anything. They find pages by crawling, which takes time and speeds up when the page is linked from your menu, footer or other pages. Also check that your SEO plugin hasn’t set the page to noindex.
Should a developer create pages in theme files?
No. Page content belongs in the database, created in wp-admin or with WP-CLI’s wp post create --post_type=page. Theme files hold templates, which are the layout that wraps the content, not the content itself.
Can I add several pages at once?
The dashboard creates one page at a time. WP-CLI, importers and some builders can create them in bulk. Bulk-created pages that are nearly identical give visitors nothing new and tend to do poorly in search, so only make pages that each have their own purpose.






















