You set the excerpt on a post, switch to the blog archive, and the excerpt simply does not appear — the theme shows the full post content, or nothing at all, or a placeholder. Or the excerpt shows in one template and vanishes in another. Or the auto-generated excerpt truncates mid-sentence and there is no way to override it. WordPress excerpt not showing is one of the more frustrating display problems because it sits at the intersection of theme templates, post settings, and WordPress’s excerpt generation — and the fix depends entirely on which layer is failing. For a broader walkthrough, our WordPress Errors Complete Guide is a good next read.
WordPress Excerpt Not Showing — Why Each Template Behaves Differently
A WordPress excerpt not showing correctly is almost always a theme template issue rather than a WordPress core problem. Whether an excerpt appears and how it is generated depends entirely on whether the template calls the_excerpt() or the_content() — a single function name difference that produces completely different output.
the_excerpt() outputs the post’s excerpt — the manually written text from the Excerpt meta box if one was written, or an automatically generated truncation of the post content if no manual excerpt exists. the_content() outputs the full post content regardless of the Excerpt field. Many themes use the_content() in their archive templates even though the archive should show summaries — designers assume the theme’s custom excerpt-like output is the real excerpt, but it is often a custom truncation function or the content split by a <!--more--> tag. When a site owner writes a manual excerpt expecting it to appear on archives, but the template uses the_content() or a custom function, the Excerpt field is simply ignored.
Identify which function the active theme uses: Appearance → Theme File Editor → find archive.php or content.php → search for “the_excerpt” or “the_content”. If the template uses the_content(), the WordPress excerpt not showing in the Excerpt field is by design — the theme was built to show full content on archives. Changing this requires either editing the child theme’s template override to use the_excerpt(), or switching to a theme that supports excerpt display natively. If the template already uses the_excerpt() and the excerpt still does not show, the problem is in WordPress’s excerpt generation or in the excerpt field data.
Enabling and Writing Excerpts in the Block Editor
The Excerpt meta box is not visible in the block editor by default for all users. If the Excerpt panel is not appearing in the right sidebar when editing a post, the panel has been hidden in the editor’s view settings — this is the most common cause of WordPress excerpt not showing for editors who cannot find where to write the excerpt.
Enable the Excerpt panel to fix WordPress excerpt not showing in the editor: in the block editor, click the three-dot menu (⋮) in the top-right corner → Preferences → Panels → ensure “Excerpt” is toggled On. Alternatively, open the Post tab in the right sidebar → scroll down — the Excerpt accordion panel appears below Categories and Tags. Click to expand it → write the excerpt text → it is saved with the post automatically. The Excerpt panel may also be hidden via Screen Options — click the Screen Options tab at the top right of the classic editor page → check “Excerpt” to make the meta box visible.
When a manual excerpt exists but WordPress excerpt not showing persists on the front-end problem persists on the front-end, the issue is usually the the_excerpt() function being called but the excerpt not being output due to a filter or theme modification. Check whether the theme applies a minimum character count filter that hides short excerpts — some themes suppress excerpts below a certain length. Also check whether the theme has a custom excerpt function that replaces the standard the_excerpt() — search the theme files for add_filter('the_excerpt' or a custom function named similarly to “get_excerpt” or “theme_excerpt”. A custom excerpt function that does not handle the case of a manual excerpt correctly falls back to auto-generation or returns empty. Our guide on fixing WordPress block editor issues covers the editor panel visibility settings that apply when the Excerpt meta box is missing from the editing interface.
Fixing Auto-Generated Excerpts
When no manual excerpt is written — a frequent cause of WordPress excerpt not showing — WordPress auto-generates one by stripping HTML from the post content and truncating to 55 words. WordPress excerpt not showing in this auto-generation mode occurs when the post content consists entirely of shortcodes, Gutenberg blocks that do not produce plain text, or embedded media with no prose text — WordPress auto-generates an excerpt from the raw content, which may be empty or contain meaningless block markup.
Change the auto-excerpt word count to fix short-text WordPress excerpt not showing: add to the child theme’s functions.php: add_filter('excerpt_length', function($length) { return 30; }, 999); — this changes the truncation from 55 to 30 words. Adjust the excerpt truncation suffix (the “…” that appears after the truncated text): add_filter('excerpt_more', function($more) { return ' Read more'; }, 999); — this replaces the ellipsis with a linked “Read more” text that follows the excerpt. Both filters have a priority of 999 to override any theme-applied filters of the same hooks that run at default priority.
For posts where auto-generation causes WordPress excerpt not showing due to non-text content because the content starts with a non-text element (an image block, a table, a callout box), the solution is to always write manual excerpts for those posts. Alternatively, change the auto-excerpt source: instead of stripping from the full post content, generate the excerpt from a specific custom field that always contains a clean, writable summary. Add to functions.php: add_filter('get_the_excerpt', function($excerpt, $post) { $custom = get_post_meta($post->ID, 'summary', true); return $custom ?: $excerpt; }, 10, 2); — this falls back to the standard excerpt if the custom field is empty, making it backward-compatible. For WooCommerce products where WordPress excerpt not showing affects the short description on product archive pages, the WooCommerce short description field (not the WordPress excerpt) populates the archive card — fill it in the Product data panel rather than the standard Excerpt panel. According to the WordPress developer reference, the_excerpt() applies the the_excerpt filter after generating the excerpt, giving theme developers a clean hook for any post-processing — this is the correct extension point rather than directly modifying the excerpt generation logic.
Template-Level Excerpt Display Problems
WordPress excerpt not showing on specific page types — visible on the blog archive but missing on category pages, tag pages, or search results — is caused by different template files being used for each page type, and not all of them calling the_excerpt().
WordPress’s template hierarchy means the blog index uses index.php or home.php, category archives use category.php or archive.php, tag archives use tag.php or archive.php, and search results use search.php. If the theme has a separate search.php that uses the_content() while archive.php uses the_excerpt(), excerpts appear on archives but not in search results. Create a child theme override for each template that needs excerpt support — copy the template from the parent theme to the child theme folder → replace the_content() with the_excerpt(). The child theme version takes precedence over the parent without modifying the parent theme’s files.
A quick-tip approach for adding excerpt support to any template without copying template files is to use the pre_get_posts filter to force excerpts to appear via output buffering, but this approach is fragile and not recommended for production sites. The correct approach is always the child theme template override. For WordPress excerpt not showing across an entire theme — where the theme genuinely uses the_content() everywhere and no child theme template override can be made to work with the theme’s CSS — switching to a theme that natively supports excerpt display or using a page builder that handles archive layouts independently of the theme’s template files is the pragmatic resolution. Reviews from the WordPress developer community confirm that the theme’s template using the_content instead of the_excerpt is by far the most common cause of WordPress excerpt not showing on blog and archive pages.
The More Tag and Excerpt Alternatives
The <!--more--> tag is an alternative for themes where WordPress excerpt not showing cannot be fixed through the template to the Excerpt field that splits post content into a teaser and a full version. When an archive template uses the_content() rather than the_excerpt(), the More tag controls where the content is split — everything above the More tag appears on the archive, and the “Read More” link loads the full post. This is a functional workaround for WordPress excerpt not showing on themes that use the_content on archives, without requiring template modifications.
Insert the More tag in the block editor by placing the cursor at the desired split point → click the “+” block inserter → search “More” → insert the Read More block. In the classic editor, the More button in the toolbar inserts the tag. The More tag and the Excerpt field serve different purposes: the Excerpt field is purely for archive display (and is never shown on the single post page), while the More tag splits the content on the single post page itself as well as archives. For SEO purposes, the Excerpt field produces cleaner archive markup because the archive page does not contain a truncated version of the content — it contains a completely separate summary. This distinction matters for duplicate content concerns when the same content appears (partially) on both archive and single post pages when the More tag is used versus a separate Excerpt field.
Custom excerpt template parts give maximum flexibility for WordPress excerpt not showing across different content types or displaying differently than needed. Create a template part file: wp-content/themes/your-child-theme/template-parts/excerpt-portfolio.php → output a custom combination of post thumbnail, title, excerpt, and metadata in the exact markup the design requires. Include this template part in the archive template: get_template_part('template-parts/excerpt', get_post_type()); — WordPress appends the post type to the function call automatically, loading the type-specific excerpt template when available and falling back to a generic excerpt template for all other post types. This template part pattern is how the most maintainable WordPress themes handle excerpt display across diverse content types without duplicating template logic. Our guide on creating WordPress custom post types covers the full template hierarchy that intersects with excerpt template parts when custom content types have different excerpt requirements from standard posts.
The excerpt character limit differs between the auto-generated excerpt and the manually written Excerpt field. The auto-generated excerpt uses a word count limit (55 words by default, adjustable via the excerpt_length filter). The manual Excerpt field has no enforced limit — you can write as long or short an excerpt as needed. However, themes sometimes apply their own truncation to excerpts retrieved via the_excerpt() regardless of whether the excerpt was manually written or auto-generated. Search the theme’s functions.php for any call to substr(get_the_excerpt()...) or wp_trim_words(the_excerpt()...) — a theme that manually truncates excerpt output overwrites the manual excerpt with a shorter version. Remove this theme-level truncation in the child theme’s functions.php using remove_filter('the_excerpt', 'theme_custom_excerpt_filter'); to restore the full manual excerpt display. This is a common cause of WordPress excerpt not showing the complete manually-written text even when the excerpt field contains the correct content.
Caching affects WordPress excerpt not showing diagnosis in a subtle way: if a page cache stores a version of the archive where excerpts were blank, clearing the cache is required before changes take effect. After fixing the template or writing a manual excerpt, purge all caches before testing — otherwise the cached version without excerpts continues to appear to browsers and search engines. After the cache is cleared, the correct excerpt display verifies that the fix was successful. For sites using a CDN, also purge the CDN cache for the archive and category pages affected by the excerpt fix, since CDN-cached pages ignore the WordPress-level cache purge and continue serving the old non-excerpt version to visitors at CDN edge nodes.
Using excerpt support for post types that do not have it enabled by default requires adding “excerpt” to the post type’s supports array. Custom post types registered without 'excerpt' in their supports array do not show the Excerpt meta box in the editor, producing a specific form of WordPress excerpt not showing where the field simply does not exist rather than failing to display. For post types registered by third-party plugins, add excerpt support without modifying the plugin: add_post_type_support('your_post_type', 'excerpt'); added to the child theme’s functions.php on the init hook after priority 10 (so it runs after the post type is registered). After adding this support, the Excerpt panel appears in the block editor for that post type and the_excerpt() returns the manual or auto-generated excerpt correctly in any template that calls it. You might also run into WordPress Media Library Not Loading.







