Build your WordPress website with Elementor.Discover Elementor Affiliate link
Français

Site appearance

Publishing and content · Intermediate

WordPress post published but missing from the blog: check the list that should display it

Find a WordPress post missing from the blog: check its status, the posts page, filters, sorting, and pagination before changing the theme or cache.

Source published: · Source updated: · Editorial policy

Read the French edition

Check the direct link before the blog list

Your post appears published in the administration interface, but you cannot find it on the blog page. The desired result is its presence in the expected list, with a usable link, without creating a second post or disrupting the presentation of other content.

From Posts, find the document and open its view link. Check the domain, title, and content. An editorial preview is not the same as a public address. Also compare a visit without an administrator login, using the access normally intended for this content.

If the direct link returns an error or a page not found, keep that symptom: the difficulty is not limited to the blog’s selection. If the link works but the post is missing only from a list, continue checking status, destination, and query.

Do not republish the post at a new address to move it up the list. A filtered list may exclude that duplicate too. Do not change the date immediately either: it may explain the position, but changing it would have editorial effects distinct from diagnosis.

Compare the missing post with a visible post

Choose a publication that appears on the same blog page. In the administration interface, record both items’ content type, status, visibility, date, author, categories, and tags. Also note whether either is sticky or has a site-specific setting.

On the public page, examine the order and links to subsequent pages. Content may appear further down because the list sorts by something other than newest date. A selection of a few publications is not necessarily the complete blog archive.

Keep the addresses of the missing post, reference publication, and list being viewed. A menu called Blog may lead to a category, custom page, or old address. Its label does not prove that it leads to the posts page defined in WordPress.

Compare both cases in the same login state and at the same list address. This small observation grid will help attribute the difference to a precise rule. Do not change every category or the template merely because the two posts differ: several differences may be entirely intentional.

Preserve settings and choose the right approach

Keep the initial values before each change: document status and date, Reading assignment, list parameters, and template used. For a structural or component change, arrange a recoverable backup and a test copy with the site owner.

Start with the first approach if the document has an unexpected state or type. The second identifies the blog’s real destination and the template building it. The third examines post selection once the correct list has been identified.

You need permission to edit the post for its settings; Reading and templates require broader permissions. On WordPress.com, use the features actually available. In multisite, verify the relevant site and contact its owner about a component enforced across the network.

Make one change at a time on the copy when the scope is significant. Rollback must restore the precise recorded value without resetting the whole theme. An intervention that makes the post appear but removes other publications is not yet a satisfactory repair.

Approach 1: confirm status, visibility, and date

  1. Open the document in Posts and view its settings. Check the state actually saved: draft, pending review, scheduled, private, or published. Its text being present in the administration interface does not demonstrate that it is intended for all visitors.
  2. If the post should be published but remains pending, involve the person with publication permissions. If a future date is set, check whether scheduling is intentional. Do not make content public merely to test the list, and do not remove its protection without an editorial decision.
  3. For a public post, compare its saved date with the list’s sorting. An old date can place it far from the first results; a recent text edit does not necessarily mean it should become the blog’s first entry.
  4. Also check the content type. A published page does not automatically enter the ordinary post list. If the document was created in the wrong place, prepare a correction with the owner that preserves its content and useful address. Do not create a public duplicate or perform a bulk conversion to resolve this one case. After any authorized correction, save and check the direct link before the list.

Approach 2: identify the real posts page

  1. With the required permissions, open Settings, Reading. Record whether the site displays the latest posts on the homepage or uses a static homepage and a separate posts page. Compare the configured destination with the address you visit from the Blog menu.
  2. If the menu points to an old page while the posts page is correct, the problem may be limited to the navigation link. Correct that link through the procedure for your menu, preserving its previous value. Do not change Reading assignments to make the site match a bad link.
  3. If the posts page assignment is truly wrong, have the expected destination approved, record both initial choices, and change only what is necessary. Save, then check the homepage, list, and menu. A Reading correction can affect every visitor’s journey.
  4. A custom page may also deliberately display a selection of posts through a block. It does not need to become the posts page to work. Identify this arrangement before acting; to undo an assignment test, restore the exact initial choices and check the addresses again.

Find the template that builds the list

In a block theme, the blog display may belong to the Blog Home template or another template used according to the theme’s organization. With appearance permissions, open Appearance, Editor, Templates and identify the one corresponding to the observed list.

Do not confuse the page carrying the blog address with the template generating its list. Writing the missing post’s title in that page’s body does not add it to the automatic selection. Likewise, editing an individual post template does not necessarily correct its absence from the index.

For a classic theme or builder, consult the documented blog-page procedure. Labels and options vary. Ask the theme owner which template and selection are actually used, without replacing files as an experiment.

A template change can affect several pages. Make it on a copy and preserve the existing structure. If the interface saves several items, check the summary before confirming. To undo it, remove the targeted change or return to the preserved copy; a general reset could erase other customizations.

Approach 3: examine the loop selection

A query is the set of criteria selecting content to display. This approach concerns the native Query Loop block in the page or template already identified. Use the preserved copy if the template serves several pages; a title or image inside a card does not display settings for the entire list.

  1. Open the page or template, then List View at the top of the editor. Expand the structure and select the parent Query Loop block. Open its Settings using the icon near Save if the sidebar is closed.
  2. Under Query type, record Default or Custom; earlier versions refer to inheriting the template query. Default uses the template context. Do not switch an archive to custom mode merely to expose filters: you could lose that archive’s own selection.
  3. If the list should be an independent selection and is already custom, record Post type. Posts and Pages do not select the same content. Compare this type with the missing document before changing anything else; a type added by a plugin requires its documentation.
  4. Then record Order by, Sticky posts, Display, and Filters. Compare these criteria with the missing post and a visible post. The aim is a consistent rule that includes the desired publications, not removal of every criterion. Keep the initial values to undo each test separately.

Compare filters, order, and sticky posts

A list dedicated to one category may legitimately exclude a post filed elsewhere. Confirm its editorial purpose before correcting the selection or the document’s classification. Do not reassign all its categories to work around a misconfigured loop.

  1. With the custom loop selected, open Filters. The plus button exposes available controls: taxonomies such as categories and tags, authors, or keyword. Read the configured inclusions and exclusions without adding a filter solely for diagnosis. A criterion supplied by a plugin requires its own procedure.
  2. On the copy, record the suspected criterion, then change only that setting. Save, reopen the panel to confirm the retained value, and view the list. Check the missing post and control publications. If the result is unsuitable, restore the value before another test.
  3. Under Order by, compare newest date, oldest date, or alphabetical order with the expected position. Changing the post date to put it first would mask the cause if the list actually sorts by title. Also look on subsequent pages before concluding that it is excluded.
  4. Examine Sticky posts: including them, excluding them, ignoring their priority, or displaying only them produces different lists. Do not mark every publication sticky to bring it into the selection. After any correction, check a sticky publication and a non-sticky one, then retain the chosen setting.

Check the count, offset, and pagination

A limited item count does not mean that other posts have disappeared. On the public page, first check next-page links, numbers, and the last accessible page. For the posts page following the WordPress query, Settings → Reading → Blog pages show at most may also determine list size. Record it before any correction.

  1. In a custom loop, open Display. Its three-dot menu exposes available controls, including Items per page, Offset, and Max page to show. Translations may vary; compare their roles before entering a value. A maximum page count that is too low can stop navigation before the desired post.
  2. Record the Offset and its purpose. It may skip publications at the beginning. A deliberate value avoiding duplication with a selection at the top of the page must not be removed without checking both lists. For a test, change only this value on the copy, then restore it if the results become inconsistent.
  3. If pagination is missing, open List View and select the Query Loop. Inside this loop, after the repeated Post Template, add the Pagination block with the necessary previous, next, or number links. Do not insert it in every card. Preserve existing blocks and save only the intended change.
  4. View the public list, move to the next page, and return to the start. Check the resulting addresses and the presence of expected publications without repetition. Remove the added block or restore the preserved setting if the test worsens the journey. Navigation returning an error is a separate symptom; excessively increasing the post count does not repair it.

Recognize a Latest Posts list or a theme tool

The Latest Posts block does not have exactly the same settings as Query Loop. It displays a list where you can notably adjust sorting, categories, and post count. Select its parent block and examine those choices rather than looking for a panel belonging to another feature.

A small list in a column or footer may be deliberately limited to a few publications. Its lack of pagination does not prove a blog fault. Check whether visitors also have a link to a complete list. If this small selection is correct, the useful change may concern that navigation journey rather than its criteria.

If the theme or a builder supplies the list, record the feature name, its visible settings, and the component version. Consult its official documentation to understand exclusions and the selected content type. Do not automatically transfer options from the native block, and do not edit a PHP file on the active site to test a hypothesis.

Also examine the displayed cards: a post may be selected but hard to recognize if its title or link is missing from the presentation. Compare link destinations with that of the document sought. Correct the relevant card block on a copy, then check several results to avoid replacing their data with the same fixed text.

Examine caching after selection criteria

After a correction, save and reopen the setting to confirm it was retained. Then visit the exact list address in a new logged-out session if it is public. Compare with your usual session and the post’s direct link. A difference between sessions is a clue to examine, not automatic proof of a faulty cache.

If the site already has a cache, use its documented procedure to refresh the affected page when this action exists. On a managed service, commands and possibilities depend on the plan and available permissions. Do not repeat general purges without results, and do not add a second cache plugin to resolve a selection rule.

Then recheck the missing post and a control publication. If the saved criteria should include both but the difference persists, look for a recent change to the theme or a plugin involved in lists. Prepare a reproduction on a backed-up copy, with sends and other external effects neutralized by that environment’s owner.

Isolate one suspected component at a time on that copy and restore it if the result does not confirm its role. Keep the recorded settings to provide a precise case to support. A theme change or general deactivation on the public site would have disproportionate scope for this diagnosis.

Reproduce a filter and pagination on a copy

If the list appears empty or a post seems to have disappeared, create a small acceptance-test case whose result can be predicted. On an authorized copy, prepare three fictional published posts with the same test author and three distinct past dates. Put posts A and B in a new category called “Recette blog.” Give A the more recent date of the two. Put C in another category and give it the most recent date of all three. Leave all three non-sticky. Use an author with no other posts on the copy, so the test remains readable when the category filter is removed.

In an independent test page, insert a Query Loop. Select the loop itself in List View, then choose Custom under Query type. Select posts, newest-to-oldest sorting, the test author, and the “Recette blog” category. In display options, set one item per page, a zero offset, and a limit of at least two pages if this setting is offered. Add the Pagination block inside the loop, after Post Template. Check that a link reaches the second page. A loop inheriting the actual archive is then tested on that archive using its own criteria.

On the test page only, remove the category filter while retaining the author, sorting, and pagination. If C becomes the first result, the filter does explain its initial absence. Then restore the category and open the second page. If B is missing while A appears, examine the page limit, presence of the pagination link, and offset. This test separates a post excluded from selection from a selected post inaccessible on the first page. Restore the initial settings, then remove the page and control posts created for the test.

  1. With the “Recette blog” filter, A appears on the first page.
  2. Opening the second page with the same filter shows B.
  3. Removing only the category filter and returning to the first page shows C.

Check the result and preserve rollback

The final check covers the entire list: find the post, open its link, and check a few previously visible publications. Browse the pagination and check the first cards on desktop and phone. The post should appear in the position dictated by sorting, with an identifiable title and the correct destination, without a duplicate added to bypass the problem.

Also check the homepage and menu links if you corrected their assignment. For a shared template, examine another page using it. Do not consider the repair complete if a category has lost its results or the Blog link no longer leads to the expected destination.

Record the identified cause and changed value: category filter, order, offset, menu link, or Reading choice. Note the observed result and previous value. If a regression appears, restore that targeted change; do not restore the whole site to undo a simple setting you have recorded.

If the problem persists, provide the owner with useful addresses, the check time, versions, and list criteria. Add the differences between the missing post and the control without revealing confidential content or credentials. This comparison allows diagnosis to continue without unnecessarily republishing the document.

Read the post and posts page with WP-CLI

If you already have authorized WP-CLI access, these reads let you check the content actually stored without changing its date or publication. Run them in the correct installation; in multisite, add --url= with the verified subsite address. Replace 123 with the known post ID.

A page type does not become a blog post because its title is correct. A future status indicates scheduling, and an old date may explain a distant position when the list sorts by date. The page_for_posts value designates an ID, not a URL; it does not by itself identify a custom page containing its own loop. With show_on_front=posts, the homepage displays posts and a separate page assignment does not control this journey.

Compare these reads with the block criteria already identified in the guide. They do not demonstrate what the public query returns after theme or plugin filters. If the content is eligible but remains absent, examine that query on a copy rather than running a republishing command.

The non-terminal procedure remains Posts and Settings → Reading; no extra plugin is essential. These commands change nothing and therefore require no restoration. After a correction in the interface, always check the direct link, list, and its pagination.

wp post get 123 --fields=ID,post_type,post_status,post_date,post_title --format=json
wp option get show_on_front
wp option get page_for_posts

Sources and references

Use these references to check the features, requirements and limitations described. Reading documentation is not a practical test.

View 15 references

English translation of the reviewed French edition. Code examples retain their original identifiers, comments and output strings for reproducibility. Linked exercise files and original screenshots may contain French. No new practical tests or price checks are implied by translation.

Continue reading in English