If WordPress shows the same list of posts on your front page and on your blog page, one dropdown on the Reading screen is almost certainly empty. The static front page option needs two Pages, and each one has a different job. An owner turning a blog into a business site, or an agency that has just inherited an install, can settle the question by reading three sentences of the official documentation and opening two URLs.
How the setting is built
The WordPress documentation page Settings Reading screen (Opens in a new tab) says the front page settings work only if you have one or more Pages defined. Under "A static page (select below)" you find two dropdowns. "Homepage" picks the Page shown as the front page, and "Posts page" picks the Page that will hold your posts. The documentation says the Home page and the Posts page cannot be the same. Labels are quoted in English; a localized dashboard may word them differently.
What each empty dropdown causes
| Dropdown | Job | Result when left empty |
|---|---|---|
| "Homepage" | Chooses the front page | The blog shows posts on both the front page and the Posts page you specify |
| "Posts page" | Chooses where posts are listed | Posts are reachable only through other navigation such as category, calendar or archive links |
The same documentation page warns that static front page plugins and other plugins that control or restrict how posts are displayed may affect how these features work. A correct configuration on the screen still needs a check against the real pages.
Symptoms and what they point to
Practical suggestion: start from what you see on the site and work back to the setting.
| Symptom | Possible cause according to the documentation | Test |
|---|---|---|
| The same post list on the front page and on /blog | "Homepage" left empty while "Posts page" is chosen | Open both dropdowns on the Reading screen |
| No blog page in the menu, posts only through categories | "Posts page" left empty | Check the "Posts page" dropdown |
| Intro text written on the posts page does not show | The assigned template is ignored; index.php or home.php controls display | Inspect the theme's template files |
| The blog section breaks after adding a front page template | The template may be named home.php | Look at the file name |
The documentation does not claim that each symptom has only one cause. Themes and plugins can add their own behavior, which is why the last column is a test and not a verdict.
Quick triage: from symptom to fix
Practical suggestion: work through these in order.
- Same list on two URLs: confirm the "Homepage" dropdown is filled.
- Posts reachable only through archives: fill the "Posts page" dropdown.
- Intro text missing on the posts page: look at how index.php and home.php behave in the theme, not at the page template.
- Blog section broken: check whether the front page template is called home.php.
- Everything correct but the symptom persists: disable plugins one by one, because the documentation warns they can affect these features.
Change one thing at a time and reopen both URLs after each step. The decision of which design to choose comes first: if the front page should be a stream of new articles, "Your latest posts" already does the job and no second Page is needed.
Treat the check as recurring. A theme update, a page builder change or a new SEO plugin can alter output even when the setting stays the same. Rerun the six verification steps after each major update and note the date in the site's maintenance log, so that a later reappearance of the duplicate list can be traced to the change that caused it.
What the setting changes and what it leaves alone
Loading the Reading screen with too much meaning leads people to touch the wrong thing. Sorting documented behavior from silence keeps the work focused.
| Topic | Status in the documentation | Consequence |
|---|---|---|
| Which Page is the front page | Set by the "Homepage" dropdown | The setting controls it |
| Which Page lists posts | Set by the "Posts page" dropdown | The setting controls it |
| URL format of the posts page | Not described | Check the Page's own URL and the permalink settings |
| Canonical tag output | Not described | Theme and SEO plugin decide |
| Effect on search rankings | No statement | Do not promise any |
| Plugin interaction | Warning that plugins may affect these features | Test the real output after every change |
Two URLs in analytics
While the same list lives on two URLs, analytics reports split traffic and blur which URL is the real entry page. Practical suggestion: after the fix, track the front page and the posts page as separate rows and write the date of the change into your reporting notes. A shift in traffic distribution can then be attributed to the setting or to a seasonal pattern instead of guessed at.
The home.php naming trap
The documentation says that if you create a static home page template file, you should not name it home.php, otherwise you will have problems when you try to view the blog or posts section of your site. It suggests any other name, with myhome.php as the example.
The reason appears in another sentence on the same page: for the Page chosen as Posts page, any assigned template is ignored, and the theme's index.php, or home.php if it exists, controls the display of posts. WordPress looks for home.php when it lists posts, so a front page template carrying that name competes with the post list.
Practical notes for theme work
- Keep custom templates in a child theme so a parent theme update does not overwrite them.
- After renaming a template, reassign it to the front page, save, and reopen both URLs.
- The documentation contains no code sample; it gives only the file name warning.
Block themes are not discussed on the Reading page. If your theme is block based, confirm in the theme's own documentation how the site editor templates handle the posts page. WordPress documentation and interface labels change between versions, so check the current page before you act.
Two worked examples
Example scenario: a pilates studio
A pilates studio installed WordPress as a blog, so the front page lists recent posts and visitors cannot tell which classes it offers. The owner writes a "Classes" Page with class types, the weekly schedule and contact details, then creates "Journal" for the posts. On the Reading screen "A static page" is chosen, Classes goes into "Homepage" and Journal into "Posts page". The sentence typed into Journal does not appear, which matches the documentation: the assigned template is ignored. The owner moves that sentence to a block placed with the theme's tools, adds Journal to the menu, redirects the old blog URL and confirms in the sitemap that both Pages appear once.
Example scenario: an amateur sports club
A sports club uses an old theme where announcements fill the front page and membership details sit deep in the menu. The committee wants newcomers to see what the club offers first. It builds "Club" as the static Page and "News" as the posts page, then adds a section on the Club page that pulls in the latest announcements. That section is content placed on the page, not a substitute for the Reading setting. Visitors meet the club, still see fresh news, and the News page carries the full archive.
Duplicate content: choosing the right fix
A post list on two URLs is duplicate content. Google's documentation on consolidating duplicate URLs (Opens in a new tab) names four reasons to specify a canonical: to say which URL people should see in search results, to consolidate signals for similar or duplicate pages, to simplify metric tracking, and to avoid spending crawl time on duplicates.
The same page ranks the methods. A redirect is a strong signal that the target should become canonical, a rel canonical annotation is also strong, and a sitemap entry is weak. It adds that the methods can be combined, that none is required, and that Google can choose a canonical on its own.
Which method suits this particular fault
| Situation | Practical suggestion | Reason |
|---|---|---|
| "Homepage" empty, posts on two URLs | Fix the setting first | The cause is configuration; a canonical would only mask it |
| Old blog URL now belongs to a different page | Redirect it to the new Posts page URL | A redirect is a strong signal and also moves the visitor |
| Front page and posts page both crawlable | Each page canonicalizes to its own URL | Each URL represents its own content |
| Corrected URLs still missing from the sitemap | List only the final URLs | URLs in a sitemap are suggested as canonicals |
Practical suggestion: fix first, verify second. If you use a canonical tag to hide a broken setting, nobody notices when the setting breaks again. For canonical mistakes in general see canonical tag issues, audit and fixes.
Giving each page its own identity
With two pages in place, their titles, descriptions and main headings should differ; otherwise two distinct URLs look alike in results. The Reading documentation does not mention titles, so this comes from your theme and SEO plugin. Remember that the posts page ignores its assigned template, so manage its title from the SEO plugin's page field.
| Element | Front page | Posts page |
|---|---|---|
| Title | Brand and main service | Name and topic of the blog |
| Meta description | What the business does | Which topics the blog covers |
| Main heading | Value proposition | Blog name |
| Internal links | Services, contact, featured posts | Categories, newest posts |
Converting a live blog-front-page site
An empty install is easy. The hard case is a site that has served as a blog home for years, because the change rewires which URL does what. The documentation does not cover the SEO effects of such a switch, so the six-step conversion list is practical suggestion.
- Prepare the new front page as a draft with real content before it goes live.
- Create a separate Page for posts and give it a clear name.
- On the Reading screen set both dropdowns in a single save, using two different Pages.
- Check what happened to paginated URLs of the old front page, since the post list now lives elsewhere.
- Decide what to do with links from other sites to the old front page. They now reach the business page; if that is not what you want, redirect.
- Update menus, footers and widgets so they point to the new posts page.
Internal links after the switch
A static front page no longer shows new posts automatically. Discovery of new articles now relies on the posts page, categories and related-post links. Practical suggestion: link from the front page to the posts page and to a few featured articles on purpose. The pagination of listing pages is covered in SEO pagination for category pages.
Menu and visitor journey
Because the documentation says posts are reachable only through category, calendar or archive links when no Posts page is chosen, picking the Page does not replace a menu entry. Use these questions after the change.
- Does the main menu contain a clear link to the posts page, and does its text match the Page's real name?
- Does the front page link to the posts page at least once in a visible spot?
- Can a reader get from a single article back to the posts page or a category?
- Does the footer still point at the old blog URL?
- Does the mobile menu carry the same links?
Practical suggestion: run these checks once on a phone and once on a desktop. Some themes manage the mobile menu through a separate setting, so a link added to the main menu may be missing there.
Verification after saving
| Step | Action | Expected result |
|---|---|---|
| 1 | Open the front page in a private window | The static Page you selected |
| 2 | Open the posts page in a private window | A post list that differs from the front page |
| 3 | Read the canonical tag in each page source | Each points to its own URL |
| 4 | Click the page 2 link on the posts page | A unique URL with different posts |
| 5 | Open the sitemap | Front page and posts page each appear once |
| 6 | Look for the intro text you added to the posts page | If absent, the theme ignores the page content |
Search results lag
Which URL Google shows does not change at the moment you save. The documentation gives no timeframe. Practical suggestion: use the URL Inspection tool in Search Console to compare Google's selected canonical with the one you expect.
Handing the change to a staging site first
A setting that changes the role of the front page deserves a trial run away from the live site. Practical suggestion: change it on a staging copy, run the verification steps, then repeat on production. Keep the staging copy out of search results; fixing a staging site indexed by Google explains what to do when it slips through.
- Do not assume a setting made on staging reached production. Open the Reading screen on the live site and confirm both dropdowns.
- Redirect the old blog URL and update menus on the same day as the switch.
- Purge the page cache after saving; a cached page can hide the new output.
Quick fixes that create new faults
The shortcut table lists tempting reactions to the fault and why each one creates a new problem. None of the rows is a WordPress rule; they follow from the logic in the duplicate content section.
| Shortcut | Problem | Better route |
|---|---|---|
| Noindex the posts page | The main blog list leaves the index | Fix the empty dropdown instead |
| Redirect the posts page to the front page | Contradicts the rule that both cannot be the same Page and closes the blog path | Keep two Pages |
| Canonical from the front page to the blog | Ties a business page to a post list | Self-referencing canonicals |
| Switch back to "Your latest posts" | Solves the duplicate but loses the front page you wanted | Fill both dropdowns |
| Fake a static front page with a plugin | The documentation warns plugins affect these features | Use the core setting |
Auditing an inherited install
Practical suggestion: when you take over an install, treat the Reading screen as the first page of the handover audit and record what you find.
- Assuming the front page is intentional. A latest-posts front page may be a default nobody revisited. Ask what the front page is supposed to do before changing it.
- Fixing the symptom only. Adding a canonical or a noindex to hide a duplicate list leaves the empty dropdown in place.
- Ignoring the menu. A correct setting with no menu link still hides the blog from visitors.
- Skipping the private-window test. Cached or admin-only output can make a broken setup look fine.
- Forgetting analytics. Without a dated note, a later change in traffic distribution cannot be traced to the fix.
A handover note should list the two dropdown values, the date they were verified, the template file names in use, and the plugins that touch post display. With that note, the next person does not need to rediscover the home.php warning or the empty dropdown from scratch.
Documented behaviors of the posts page at a glance
The WordPress Reading screen documentation spells out what happens in each of these states. The table pairs every state with the check that confirms it on your own site.
| State | Result according to WordPress documentation | Check to run |
|---|---|---|
| No Home page selected | Posts appear on both the front page and the Posts page | Compare the two addresses side by side |
| No Posts page selected | Posts are reachable only through category, calendar or archive links | Confirm the blog link exists in the menu |
| Posts page is password protected | Visitors are not asked for the password | Review what protection you expected |
| A template is assigned to the Posts page | The template is ignored; index.php, or home.php if it exists, controls display | Inspect the theme files |
| One Page chosen for both roles | The Home page and Posts page cannot be the same | Pick two different Pages |
A misreading to avoid: canonical as an order
Google describes its canonical methods as signals that stack, and none is mandatory. If you specify nothing, Google chooses the version it considers best. The documentation also recommends a self-referencing canonical on the canonical page and internal links that point to the canonical address. A canonical tag cannot repair an empty dropdown on the Reading screen, because the fault lies in the setting itself.
Practical suggestion: fill both dropdowns first, then audit internal links and canonical tags against the new structure.
Questions to answer before saving
- Which Page is the front page, and which Page holds the posts?
- Does the theme have a template that the Posts page would silently ignore?
- Do menu links point to the canonical addresses?
- Does any plugin alter how the posts display?
Audit checklist
- Is a separate Page chosen for "Homepage"?
- Is a different Page chosen for "Posts page"?
- Does the front page template avoid the home.php name?
- Do you know that a template assigned to the posts page is ignored?
- Were both URLs opened in a private window?
- Does every canonical point to its own page?
- Does the old blog URL redirect to the new posts page?
- Were menus and footers updated?
- Do the front page and posts page appear once each in the sitemap?
- Were plugins that affect post display tested? The wider order of settings is in the WordPress SEO settings checklist.
Frequently Asked Questions
How many Pages does a static front page need?
Two. One goes into the "Homepage" dropdown and another into "Posts page". The WordPress documentation says they cannot be the same Page.
Will my blog disappear if I skip the posts page?
It is not deleted. Per the documentation, posts are then reachable only through other navigation such as category, calendar or archive links, so visitors may struggle to find them.
The front page and blog show the same posts. Can a canonical tag fix that?
Fix the setting first. The documentation says an empty "Homepage" makes posts appear on both the front page and the posts page. A canonical is a strong signal but leaves the configuration fault in place.
What should I name my front page template?
The documentation says not to name it home.php and suggests another name, such as myhome.php.
Why does the text I typed on the posts page not appear?
The documentation says a template assigned to the posts page is ignored and that index.php or home.php controls how posts display. Whether the page's own content appears depends on the theme.
Does a static front page rank better?
The documentation makes no such claim. It lets you write your own content for the front page; ranking expectations should not be tied to the setting.
Conclusion
The static front page setting needs two filled dropdowns and two different Pages. An empty "Homepage" duplicates the post list, an empty "Posts page" leaves posts reachable only through archives, and a template named home.php can break the blog section. Open both URLs in a private window, confirm canonicals and the sitemap, and treat the check as recurring.
Once the front page and the blog have separate jobs, our content writing service can help you fill both with strong articles.
Post a comment
Please log in to leave a comment. Login