Conditionally display featured image on singular posts and pages

Beschreibung

Easily control the visibility of the featured image on singular posts and pages–while keeping it visible in archive pages, query loops, and other list views. This plugin provides a simple checkbox option within the post editor, allowing you to enable or disable the display of the featured image on individual posts and pages.

Key Features

  • Show or hide the featured image on singular pages and posts.
  • Seamlessly integrates with the WordPress post editor.
  • Simple checkbox toggle—no technical knowledge needed.
  • Compatible with most themes.
  • Supports WooCommerce product pages.
  • Lightweight and optimized for performance.
  • 100% free—no ads, no upsells, no premium versions!

Perfect for bloggers, content creators, and developers who want precise control over the visibility of featured images on a per-post basis.

Important Notice

If your theme uses a custom method to load the featured image (such as the Twenty Seventeen theme), this plugin may not work. To ensure compatibility, use standard WordPress functions like get_the_post_thumbnail(), wp_get_attachment_image(), or the Post Featured Image block.

Additionally, by default, this plugin only hides the featured image when it is loaded inside the loop. If your theme loads it outside the loop check out the first FAQ entry for a solution.

Screenshots

  • Backend (Block Editor)
  • Frontend (Front Page / Post List / Query Loop Block / Archive View)
  • Frontend (Post / Page / Singular View)
  • Backend (Classic Editor)
  • Backend (WooCommerce Product)

Installation

  1. Lade die Plugin-Dateien in das Verzeichnis /wp-content/plugins/conditional-featured-image hoch oder installiere das Plugin direkt über die WordPress-Plugin-Seite.
  2. Aktiviere das Plugin über den Bildschirm Plugins in WordPress.

FAQ

The plugin doesn’t work with my theme. What can I do?

Some themes load featured images in custom ways, which may cause compatibility issues. The two most common reasons are:

1) The theme loads the featured image before the loop (e.g., in the header).
2) The theme manually calls the featured image using custom functions.

Solution for case 1

If your theme loads the featured image before the loop, you can modify the plugin’s behavior by adding the following snippet to your functions.php file:

function cybocfi_set_startup_hook() {
    return 'get_header';
}

add_filter( 'cybocfi_startup_hook', 'cybocfi_set_startup_hook' );
add_filter( 'cybocfi_only_hide_in_the_loop', '__return_false' );

Note: This may hide the featured image from other plugins that rely on it, such as SEO plugins or the ‚latest posts‘ plugin.

Solution for case 2

If your theme uses custom functions to display featured images, try the following options:

  • Ask the theme developer to use standard WordPress functions like wp_get_attachment_image(), get_the_post_thumbnail() or the_post_thumbnail().
  • Create a child theme and load the featured image with one of the functions above.

Ist dieses Plugin GDPR-konform?

Yes! This plugin does not collect, process, or store any personal information, making it fully GDPR-compliant.

Kann ich das Beitragsbild standardmässig verbergen?

Yes. Add the following code to your functions.php file to hide featured images by default:

add_filter('cybocfi_hide_by_default', '__return_true');

This will automatically check the „Hide Featured Image“ option for all new posts and pages. Existing content remains unchanged.

For different default behaviors based on the post type, use:

function cybocfi_set_default_hiding_state( $default, $post_type ) {
    if ( 'post' === $post_type ) {
        $default = true; // Hide featured images on posts by default
    } else if ( 'page' === $post_type ) {
        $default = false; // Show featured images on pages by default
    }
    return $default;
}
add_filter( 'cybocfi_hide_by_default', 'cybocfi_set_default_hiding_state', 10, 2 );

Kann ich dieses Plugin auf Beiträge beschränken (und andere Inhaltstypen ausschließen)?

Yes. By default, the plugin works on all post types that support featured images. To restrict it to posts only, add the following snippet to your functions.php:

function cybocfi_limit_to_posts( $enabled, $post_type ) {
    if ( 'post' === $post_type ) {
        return $enabled;
    }

    return false;
}
add_filter( 'cybocfi_enabled_for_post_type', 'cybocfi_limit_to_posts', 10, 2 );

If you want it to work for both posts and pages but disable it for other post types:

function cybocfi_limit_to_posts_and_pages( $enabled, $post_type ) {
    $allowed_post_types = array( 'post', 'page' ); // add any post type you want to use the plugin with
    return in_array( $post_type, $allowed_post_types );
}
add_filter( 'cybocfi_enabled_for_post_type', 'cybocfi_limit_to_posts_and_pages', 10, 2 );

WooCommerce: How does the plugin handle product images?

If the featured image is hidden for a WooCommerce product, it will still appear as a thumbnail in the cart, checkout, and product lists. However, it will not be displayed in the single product view. If a product gallery is available, all gallery images will be shown as usual, except for the hidden featured image.

WooCommerce: Can I remove empty space left by the hidden image?

Yes. The plugin applies CSS adjustments automatically for standard themes. If needed, customize it with this snippet:

function cybocfi_woocommerce_styles( $css ) {
    return '.wp-block-woocommerce-product-image-gallery {display: none;}';
}
add_filter( 'cybocfi_woocommerce_style_overrides', 'cybocfi_woocommerce_styles' );

These styles apply only when the featured image is hidden in WooCommerce product pages.

Can I translate this plugin into my language?

Absolutely! You can contribute a translation here. Keep in mind that translations need community approval before they go live.

Wie kann ich den Text der Checkbox ändern?

You can customize the checkbox label using this filter in your functions.php file:

function cybocfi_set_featured_image_label( $label ) {
    return 'Hide featured image in post'; // change this text
}
add_filter( 'cibocfi_checkbox_label', 'cybocfi_set_featured_image_label' );

I can’t save posts in WordPress 5.7.0

A WordPress core bug (#52787) may cause this issue when another plugin uses post meta values in a specific way. If you see the error „Updating failed. Could not delete meta value from database.“, try:

  • Downgrading to WordPress 5.6.2.
  • Upgrading to WordPress 5.7.1 or later.

I’m getting a deprecation notice. What should I do?

The cybocfi_post_type filter has been replaced with cybocfi_enabled_for_post_type. To update your code:

1) Change the filter hook from cybocfi_post_type to cybocfi_enabled_for_post_type.
2) Swap the filter functions arguments. $enabled is now the first argument $post_type the second.

In case you’ve only used one argument ($post_type), you must not only adapt the function signature, but also add the priority and number of arguments to your add_filter() function call.

Here’s an example:

// BEFORE UPDATE: Using the deprecated filter
function cybocfi_limit_to_posts( $post_type, $enabled ) {
    if ( 'post' === $post_type ) {
        return $enabled;
    }

    return false;
}
add_filter( 'cybocfi_post_type', 'cybocfi_limit_to_posts', 10, 2 );

// AFTER UPDATE: Using the new filter
function cybocfi_limit_to_posts( $enabled, $post_type ) {
    if ( 'post' === $post_type ) {
        return $enabled;
    }

    return false;
}
add_filter( 'cybocfi_enabled_for_post_type', 'cybocfi_limit_to_posts', 10, 2 );

Rezensionen

10. November 2024 1 Antwort
Thank you so much for creating this plugin. I have been using it for a couple of months and it works superbly. I didn’t think such a plugin would exist since it serves such a niche purpose and was so pleased to have found it and that it just works. It works so simply (just a check box, basically plug and play) and is perfect for my site. For those of you who want to know applications for how this plugin could be used: I have another plugin that displays content on a page using a shortcode, that content already contains an image but that image does not show up in lists of recent posts such as on the home page, so I have to add that image as a featured image in the post that contains the short code. Without this plugin, the page will show two instances of the same image at the same time and would not look so good. This plugin lets me add a featured image to a post, display it anywhere that lists recent posts for visual purposes, but then hide it on the actual page itself so only the image from the shortcode shows. Perfect.
20. August 2024 1 Antwort
For some reason, CSS to hide featured image wasn’t working, this plugin did the trick… Thanks so much!
23. Juli 2024 1 Antwort
Plug and play, straight forward, just works. Works on Wordpress 6.6, maybe it doesn’t need to be updated that often. Thank you for such a simple fix to a niche request!
6. April 2024
Finally. A plug-in that just works. Thank you for making my headache go away.
26. Januar 2024
В некоторых темах просто не работает совсем. Галочку ставишь — эффекта нуль.
Alle 38 Rezensionen lesen

Mitwirkende & Entwickler

„Conditionally display featured image on singular posts and pages“ ist Open-Source-Software. Folgende Menschen haben an diesem Plugin mitgewirkt:

Mitwirkende

„Conditionally display featured image on singular posts and pages“ wurde in 4 Sprachen übersetzt. Danke an die Übersetzerinnen und Übersetzer für ihre Mitwirkung.

Übersetze „Conditionally display featured image on singular posts and pages“ in deine Sprache.

Interessiert an der Entwicklung?

Durchstöbere den Code, sieh dir das SVN Repository an oder abonniere das Entwicklungsprotokoll per RSS.

Änderungsprotokoll

3.3.1

  • Fixed violation of the WordPress coding standards

3.3.0

  • Added support for WooCommerce
  • Fixed bottom margin deprecation notice
  • Abhängigkeiten aktualisiert

3.2.0

  • Requires at least WordPress 6.6
  • Compatibility up to WordPress 6.7
  • Fixed withState deprecation notice
  • Abhängigkeiten aktualisiert

3.1.1

  • Compatibility with Gutenberg 16.6.0
  • Abhängigkeiten aktualisiert

3.0.1

  • Fixes fatal error for users that customized the startup hook so the query could not be set.

3.0.0

  • Improved compatibility with the block editor
  • Abhängigkeiten aktualisiert

We’ve tested the release thoroughly – however depending on the theme and plugin you use, this release might be breaking in some exceptional cases.

2.14.0

  • The featured image is now displayed inside the query block
  • Small performance and readability improvement
  • Abhängigkeiten aktualisiert

2.13.0

  • Improved compatibility for block themes
  • The cybocfi_enabled_for_post_type filter now also applies directly to the output in the frontend
  • Refactored plugin architecture from single file to single class per file
  • Abhängigkeiten aktualisiert

2.12.0

  • Don’t hide featured image from oEmbed requests.
  • Abhängigkeiten aktualisiert

2.11.0

  • Show deprecation notice if cybocfi_post_type filter is used. Props to @swissspidy for bringing apply_filters_deprecated() to my attention.

2.10.0

  • Der Filter cybocfi_post_type wurde zugunsten des neuen Filters cybocfi_enabled_for_post_type deprecated. Vielen Dank an @swissspidy für den Hinweis auf die Probleme mit cybocfi_post_type.
  • Abhängigkeiten aktualisiert

2.9.0

  • Filter hinzugefügt, um den in_the_loop() Test zu umgehen, so dass das Plugin mit Themes kompatibel gemacht werden kann, die das Beitragsbild außerhalb des Loops laden.

2.8.2

  • Fehler behoben, der das Beitragsbild im Widget Latest Posts versteckte. Danke an @molcsa für den Hinweis.
  • Abhängigkeiten aktualisiert

2.8.1

  • FAQ erweitert
  • Abhängigkeiten aktualisiert
  • Getestet bis WordPress 5.2.2

2.8.0

  • Hook für frühe Initialisierung hinzugefügt
  • FAQ erweitert
  • Kleine Code Verbesserungen.
  • Abhängigkeiten aktualisiert

2.7.1

  • Getestet bis WordPress 5.7
  • Abhängigkeiten aktualisiert

2.7.0

  • Unterstützung für das Plugin Custom Post Type UI hinzugefügt
  • Abhängigkeiten aktualisiert

2.6.0

  • Unterstützung für das Theme Twentynineteen hinzugefügt

2.5.1

  • Fehlerbehebung: Entferne das Beitragsbild in Queries, die nach dem Main Query ausgeführt werden, nicht.
  • Abhängigkeiten aktualisiert

2.5.0

  • Berücksichtige den cybocfi_hide_by_default Filter für programmatisch hinzugefügte Beiträge
  • Kleine Code Verbesserungen.
  • Getestet bis WordPress 5.6.0
  • Abhängigkeiten aktualisiert

2.4.0

  • Filter hinzugefügt um Beitragsbilder standartmässig zu verbergen
  • Getestet bis WordPress 5.5.1
  • FAQ erweitert
  • Abhängigkeiten aktualisiert

2.3.1

  • Getestet bis WordPress 5.5 (RC1)
  • FAQ erweitert
  • Abhängigkeiten aktualisiert

2.3.0

  • Ermöglicht, das Plugin je nach Inhaltstyp ein-/auszuschalten

2.2.0

  • Erlaubt die Bezeichnung der Checkbox zu ändern
  • Aktualisierung des Readme
  • Abhängigkeiten aktualisiert

2.1.2

  • Entferne nicht notwendige Daten aus SVN

2.1.1

  • Abhängigkeiten aktualisiert

2.1.0

  • Unterstützung für Yoast SEO (Die Social-Header Bild-Daten werden nicht gefiltert)

2.0.0

  • Unterstützung für den Block-Editor (Gutenberg)
  • Getestet bis WordPress 5.2.2

1.4.0

  • Stellt sicher, dass wir nur den Hauptbeitrag ändern
  • Getested bis WordPress 5.0.0

1.3.0

  • Mache es robuster, damit es auch mit Elementor funktioniert.
  • Getestet bis WordPress 4.9.6

1.2.2

  • Getestet bis WordPress 4.7.3
  • Getestet bis WordPress 4.8.0
  • Getestet bis WordPress 4.9.0

1.2.1

  • Getestet bis WordPress 4.7.2

1.2.0

  • Vorbereitung für Sprachpakete (setzt die Text-Domain dem Ordnernamen des Plugins gleich, entfernt load_plugin_textdomain)

1.1.3

  • Getestet bis WordPress 4.7.0
  • Entfernt Sprachordner. Sprachen werden jetzt von wordpress.org geladen.

1.1.2

  • Verbessere Plugin Titel
  • Verbessere Kontrollkästchenbezeichnung
  • Verbessere die Dokumentation
  • Stable-Tag aktualisiert

1.1.1

  • Stable-Tag aktualisiert

1.1

  • Erweitere die Funktionalität auf Seiten

1.0

  • Erste Veröffentlichung