WordPress GuidePost → Show All Post Types

How to show all post types on a specific page (WordPress)

WordPress makes it easy to create custom content types—but not so easy to display them together. By default, pages, posts, and custom post types (CPTs) live in separate silos. If you want to create a master listing page or show all content types in one feed, you’ll need to adjust how WordPress queries and displays them.

Let’s walk through the easiest ways to show all post types on a specific page, with or without code.

Get fast, reliable hosting for WordPress

Power your site with the industry’s fastest, most optimized WordPress hosting

Understanding WordPress post types

WordPress content is organized into post types. Each one represents a different structure of content.

To show multiple post types on one page, you’ll need to modify how WordPress fetches content—either by using a plugin or customizing the query.

1. Use a plugin to display all post types

If you’re not comfortable writing code, plugins are the easiest and safest way to show multiple post types on a page.

Popular plugins that support custom post types:

Example: using Content Views

This method is perfect for beginners and doesn’t require theme edits.

2. Show all post types using custom WP_Query

If you’re building a custom theme or want full control over the output, you can use WP_Query to include multiple post types.

Sample PHP code:

How to use it:

This gives you full control over the layout and post types included.

3. Use shortcodes to embed multiple post types

Many plugins offer shortcode options for showing mixed post types.

Example with Display Posts:

Shortcodes are ideal if you don’t want to write PHP but still want flexibility.

4. Make sure your post types are public and queryable

Some post types might not show up because they were registered without being public or queryable.

Check the code (or plugin) used to register the CPT. It should include:

If you’re using a plugin like Custom Post Type UI:

If your post type isn’t queryable, WordPress will skip it—even in a custom query.

5. Add pagination for better UX

If you’re displaying dozens or hundreds of posts across multiple types, pagination improves load time and usability.

Update your WP_Query:

Add pagination links:

Pagination helps keep your page organized and mobile-friendly.

6. Optimize display with custom layouts or page builders

Not all post types look good in the same format. You can improve usability by customizing the layout for each type.

Options:

Tailoring the layout makes mixed content easier to navigate.

Bonus: Include post types in WordPress search results

If you’re displaying all post types on one page, users may expect them to show up in site search too.

Method 1: Use a plugin

Method 2: Add a filter to functions.php

Just be sure to replace the post types with your own.

Ready to get started?

Get the fastest, most secure WordPress.org hosting on the market.