Conditionally display featured image on singular posts and pages

Beschreibung

Wichtiger Hinweis

Wenn dein Theme einen benutzerdefinierten Aufruf zum Laden des Beitragsbildes macht (wie das Twenty Seventeen Theme), könnte dieses Plugin nicht funktionieren! Verwende get_the_post_thumbnail() oder wp_get_attachment_image(), um sicherzustellen, dass es funktioniert.

Standardmäßig blendet das Plugin das Beitragsbildes auch nur dann aus, wenn es innerhalb des Loops geladen wird. Sehe in den FAQ nach, wie das Plugin verwendet werden kann, wenn dein Theme das Beitragsbild außerhalb des Loops lädt.

Beschreibung

Dieses Plugin lässt dich für jeden Beitrag oder Seite wählen, ob das Beitragsbild in der Einzelansicht angezeigt werden soll. Dies kann nützlich sein, wenn du das Beitragsbild als Vorschaubild auf Archiv- oder der Startseite nutzen möchtest, aber das Beitragsbild nicht in jedem einzelnen Beitrag selbst anzeigen möchtest.

Das Plugin fügt dem Beitragsbild-Panel (oder der Meta-Box, wenn du den klassischen Editor benutzt) ein einfaches Kontrollkästchen hinzu, mit dem du wählen kannst, ob das Beitragsbild in der Einzelansicht angezeigt wird oder nicht.

Screenshots

  • Backend
  • Frontend

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

Das Plugin funktioniert nicht mit meinem Theme. Was kann ich tun?

In der Regel gibt es zwei Möglichkeiten, warum das Plugin nicht mit deinem Theme kompatibel ist:

1) Das Theme lädt das Beitragsbild vor dem Loop (z.B. im Header).
2) Das Theme macht einen benutzerdefinierten Aufruf, um das Beitragsbild zu laden.

Im Fall 1 kannst du das Plugin frühzeitig initialisieren und die in_the_loop Prüfung deaktivieren. Dazu kannst du den folgenden Schnipsel in deine functions.php einfügen:

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' );

Bitte beachte, dass dies einige Nebeneffekte haben kann: Z.B. kann es das Beitragsbild auch vor Plugins verbergen, die es normalerweise sehen würden, wie z.B. SEO-Plugins oder das Plugin „Latest Posts“.

In Fall 2 entweder

  • Bitte den Entwickler des Themes, eine der folgenden WordPress-Funktionen zu verwenden (wp_get_attachment_image(), get_the_post_thumbnail(), the_post_thumbnail()), um das Beitragsbild in der Einzelansicht zu laden.
  • oder erstelle ein child theme, das den Aufruf, der das Beitragsbild lädt, durch eine der oben aufgeführten Methoden ersetzt.

Ist dieses Plugin GDPR-konform?

Dieses Plugin verarbeitet oder speichert keine personenbezogenen Daten. Daher ist es ohne Weiteres vollständig DSGVO-konform.

Kann ich das Beitragsbild standardmässig verbergen?

Ja. Füge einfach die folgende Zeile in dein functions.php ein:

add_filter('cybocfi_hide_by_default', '__return_true');

Alle neuen Beiträge und Seiten verbergen das Beitragsbild nun standartmässig (Kästchen ist standartmässig angekreuzt). Bestehende Beiträge und Seiten werden nicht geändert.

Du kannst auch unterschiedliche Standartwerte in Abhängigkeit des Inhaltstyps festlegen:

function cybocfi_set_default_hiding_state( $default, $post_type ) {
    if ( 'post' === $post_type ) {
        $default = true; // set the default state for posts
    } else if ( 'page' === $post_type ) {
        $default = false; // set the default state for pages
    }

    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)?

Ja. Standardmäßig ist das Plugin für jeden Inhaltstyp verfügbar, der ein Beitragsbild enthält. Es gibt aber einen Filter, mit dem du kontrollieren kannst, für welche Inhaltstypen das Plugin verfügbar sein soll. Das folgende Beispiel deaktiviert es für alles ausser Beiträge:

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 );

Der Filter liefert dir den aktuellen Inhaltstyp und du kannst entscheiden, ob du das Plugin für diesen Inhaltstyp verwenden möchtest, indem du true zum Aktivieren und false zum Deaktivieren zurückgibst. Füge das folgende Snippet zu deiner functions.php hinzu, um das Plugin für Beiträge und Seiten zu aktivieren, es aber für alle anderen Inhaltstypen zu deaktivieren:

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 );

Gibt es das Plugin in meiner Sprache?

Absolut. Du bist eingeladen, eine Übersetzung in deine Sprache
beizusteuern. Bitte beachte, dass die Übersetzung von der Community geprüft werden muss, es wird deshalb eine Weile dauern bis die Übersetzung akzeptiert wird.

Wie kann ich den Text der Checkbox ändern?

Dafür gibt es einen Filter-Hook. Füge das folgende Snippet zu deiner functions.php hinzu:

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

In WordPress 5.7.0 kann ich keine Beiträge speichern

Ein Fehler im WordPress-Core #52787 kann dieses Plugin unbrauchbar machen, wenn ein zweites Plugin Post-Meta-Werte auf eine bestimmte Weise verwendet. Wer von diesem Problem betroffen ist, sieht folgende Fehlermeldung „Updating failed. Could not delete meta value from database.“. Da das Problem mit dem WordPress-Core zusammenhängt, besteht die Abhilfe darin, ein Downgrade auf WordPress 5.6.2 oder ein Upgrade auf WordPress 5.7.1 durchzuführen. Nach unserem derzeitigen Kenntnisstand sind nur sehr wenige Benutzer von diesem Fehler betroffen. Das Plugin „Conditionally display featured image on singular posts and pages“ selbst funktioniert in WordPress 5.7.0 wie erwartet und das Problem tritt nur auf, wenn ein zweites Plugin den Fehler im WordPress-Core auslöst.

I’m getting a deprecation notice, what must I do?

The cybocfi_post_type filter was deprecated in favor of cybocfi_enabled_for_post_type, as the filter arguments were used in an unusual way. Transitioning from the former to the latter is easy. Here an example:

// Using the deprecated filter - REMOVE THIS CALL
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 );

// Using the new filter - THIS IS HOW IT SHOULD BE DONE NOW
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 );

All you’ve got to do is:

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. Just as it is shown in the example above.

Rezensionen

2. Dezember 2021
I was able to get this working on Genesis Press themes by adding the following code. function wp234_featured_post_image($v) { global $post; if ( is_singular( 'post' ) && get_post_meta( $post->ID, 'cybocfi_hide_featured_image', true ) ) { return '<!-- hide featured image --> '; } return $v; } add_filter( 'genesis_pre_get_image', 'wp234_featured_post_image', 8 );
7. Oktober 2021
I like to have a featured image in the list of posts that people can see for a more 'at a glance' on what the post is about, but I don't always want the image showing twice, both as featured image before the content, and later on in the post as well. This solves my problem. Thanks for this great plugin!
19. Juli 2021
...it hides a featured image from a post ONLY while keeping it in lists. That's very important because if the image is used to create a thumbnail within project/portfolio lists/masonry views, the image won't be missing from there (which unfortunately is what happens with other plugins such as "Zi Hide Featured Image" by Zen Invader). That said though it defeats the purpose because the full space where the image and often page title are shown will remain there and since most themes are built to show a placeholder rather than keeping the area empty of collapse it (with a display:none for instance), then you'd be left with a missing featured image at the top of the post which will now show a placeholder with the title page over it. This happens with the theme Bauhaus by Highsea, but also with other themes when using a classic page mode which means a standard WP page where images and text can be added in the "usual" way. I'd suggest to improve by making the hide on single post to also have an option to collapse the featured image area on that very same post.
Alle 25 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 3 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

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