Filters & search
Two dropdowns in the table toolbar and one quiet change to the search box. All three are plain query arguments, so they combine with each other, with the built-in status/date filters, and with column sorting — and every view you reach is a URL you can bookmark or paste to a colleague.
The parent filter
Hierarchical post types only. The dropdown sits next to the existing filters and lists every page, plus two options of its own:
| Choice | What you get |
|---|---|
| All parents | No filtering — the normal view. |
| — Top level only — | Just the root pages (post_parent = 0), flat, no children. |
| a page | That page and its whole branch — children, grandchildren, all the way down — nested with the usual indentation. |
Two things about the branch view are deliberate:
- It is the whole branch, not the direct children. A section's third-level pages are the ones you can never find; showing one level down would have missed exactly them.
- Manual (menu) order is kept, not A–Z, so the branch reads in the order the site's navigation uses. Click a column header and your sort wins instead.
The chosen page is presented as the top of the tree so its descendants nest underneath it — WordPress' tree renderer only indents under a row whose parent is zero. That is a display detail: the Parent column still shows the page's real parent, and nothing about the stored data changes.
The whole branch is fetched in one query so the nesting is correct. On a section with thousands of descendants that is a large screen; filter to a narrower parent if you feel it.
The template filter
Shown only where the theme registers page templates for that post type.
| Choice | What you get |
|---|---|
| All templates | No filtering. |
| — Default template — | Everything with no explicit template — the meta is missing, empty, or literally default. |
| a template | Everything using that template file. |
The filter appends to whatever meta query is already on the screen rather than replacing it, so another plugin's meta filtering keeps working alongside it.
Path search
The list-table search box does what it always did — and additionally matches the full URL path: a post's own slug plus every ancestor slug.
- Search
pricingand you get every page whose path contains it, wherever it sits. - Search
about/teamand you get that branch. - Search a section slug and you get everything beneath it, not just the page whose own slug matches — which is the point on a site where "Overview" exists eleven times.
- Spaces are also tried as hyphens, so
about teamfindsabout-team.
Matching is case-insensitive and on any part of the path. It is added as an OR on top of the normal title and content search, so nothing you could find before stops being findable, and the view's own status scoping still applies — a search in Trash does not start returning published pages.
Next: Duplicate.