the_dramatist’s answer will give you only top-level pages that have no children, which matches the example given in your description.
However, if you want to get ALL leaf pages, use the following:
SELECT *
FROM $wpdb->posts
WHERE
post_type="page" AND ID NOT in
(
SELECT ID
FROM $wpdb->posts
WHERE
post_type="page" AND ID in
(
SELECT post_parent
FROM $wpdb->posts
WHERE post_type="page"
)
) AND post_status="publish"
Related Posts:
- Set order of returned items in the WP_Query() class/function
- Search pages that are a child of the current page
- When listing child pages run out of memory
- Get list of all Grandchild Pages
- Get a page ancestor from a most viewed list
- wp query to get child pages of current page
- Page template query with WP_Query
- How to display page content in a page template?
- Does WordPress generate an automatic page for post formats?
- Single page theme that uses pages for the content
- Trying to list out child pages with WP_Query
- Order by menu structure
- Targeting specific pages in the loop
- What are the differences between “Latest Posts” and “Static Page”?
- List the 5 most recent child pages
- WP_Query not retrieving by random order under parent
- Set if condition with wp_nav_menu
- Pagination of a WP_Query Loop in a child-page page template
- Need wp_query to return all children and grandchildren
- How to get all child pages in their parent page?
- How to display summary content from a Page (Not a Post) on another page
- Serve specific “template” page at any URL that ends in its slug
- Display custom tags on pages that have a specific page parent
- Is there a reason why Pages are not publicly_queryable?
- Why post__not_in is ignored?
- Get Child Page IDs by Parent ID
- How to Create a Random List of Child Pages
- complex get_posts() query to select child pages
- Create a loop on my pages with new “WP_Query”
- All blog data on a page using custom query gives 404 for page 2 and onward
- How to Display Shortcode in the correct location, currently displaying before content after Page Title?
- WP_Query returns different results from get_posts() [closed]
- WPQuery calling specific posts problem
- WP_Query with multiple orderby NOT working with ASC and DESC, what’s wrong?
- Display specific page (that is child) content on parent page
- Get query results with a page title
- wp-query, pull children of parent page
- How to get current page nearest parent id?
- How to get main menu only with wp_nav_menu
- Unable to paginate a custom page query
- How to create single page site in WordPress
- Determine if ID is page or post and query the ID
- How to query for a page, get data, then query for child pages of that page
- Custom query does not find pages
- How to get pages of parent (non-recursive)?
- WP Query and multiple pages
- How to use custom page for all posts with custom url, call another directory?
- Show child by slug, while knowing parent ID
- display the children of the post using the current page as the main parent
- pages shortcode filtering by category
- Paginate nested query of child posts
- How to create page that lists tags by initial letter?
- WP_Query doesn’t return some child pages even though the database shows them
- How can I use a specific wordpress page template if certain words are used in page title [closed]
- Category Archive not working for pages
- Retrieving category pages from subcategory returns empty sets
- Issue in If else condition [closed]
- Show parent’s child and also child’s, child on a page?
- List of child pages fetch next results at link click
- get contents and permalink from a specified page
- Hierarchical List Pages as a table
- Get Child Custom Post Content on Single.php?
- Get next post when using pagination with WP_Query?
- How to get child pages and add unique class only to active page?
- WordPress pagination returns the same posts
- How to write short code with if else to get page_id?
- Rewrite URL custom search query
- Paginate_Links page 2 doesn’t work
- How to remove “MY WORDPRESS”” Label
- Why my query is not “Main_query”?
- Filter sub-category from checkbox form
- Exclude post with taxonomy and from the terms (taxonomy & tag) posts count
- WordPress search WP_Query to cover multiple post types and their custom fields?
- Tax Query on product_cat using NOT IN as operator does not exclude that category
- Woocommerce Shortcode which displays a table with product data
- Query ACF relationship field – Comparator IN – Value array
- Can I get one wp_query to double order like this?
- JOIN filter doesn’t work in WP_Query in wp-ajax calls
- Meta Box WP_Query array for showing items with a certain relationship
- wp-query and wp_get_post_terms on custom taxonomy archive page
- Multi-layered WP_Query
- Why is my pagination /page/2 taking me to index.php?
- `offset` WP_Query argument dont work via `pre_get_posts`
- Use get_cat_ID to retreive multiple category IDs
- Function the_posts_pagination() not compatible with WP_Query arguments
- Filter products on category AND tag
- Creating a query that get all posts but places meta items first
- Display posts ONLY from the current logged in user and current week/year/month Elementor posts
- In a WP_Query can I force the results’ is_singular() to be set to false?
- WP_Query orderby
- get all images from the wordpress media library with link to the post they are associated with
- Query to get result by Title or Meta along with tax_query parameter
- My combination of ‘post_type’ and ‘tax_query’ not working?
- Search anything from a Child and Sub-Pages of their Parent page
- Strange behaviour of hierarchical taxonomy archive
- Oxygen Repeater Advanced Query
- How to separate two columns from one content on a page template?
- Is it normal that get_post() gets run 300 times and the content of those posts aren’t visible?
- Get Post Title from different post type based on current loops post_parent using
- Replace wp_query with wp_user_query