Wordpress Performance Wordpress SEO Wordpress Security Wordpress Themes Wordpress Hosting Mein Setup Das Buch

Standard-Thumbnail für jede Kategorie

Standard-Thumbnail für jede Kategorie

Standard-Thumbnails für Kategorien

In einem normalen WordPress Blog hat jeder Artikel auch ein Thumbnail bzw. Featured Image zugewiesen. Dieses Bild wird dann in Archiven und auf Übersichtsseiten präsentiert, manchmal auch in den Beiträgen selbst. Doch hin und wieder gibt es eben auch noch alte Artikel ohne ein entsprechendes Bild, vielleicht soll aber auch nicht jeder Artikel ein extra Thumbnail erhalten. In solchen Fällen lassen sich Standards, also sogenannte Fallbacks festlegen. So kann WordPress immer das erste Bild aus Artikeln verwenden, oder als Thumbnail kommt grundsätzlich ein Platzhalter zum Einsatz, zumindest wenn es kein zugewiesenes Featured Image gibt. Doch noch besser ist die folgende Methode, denn hier kann für jede Kategorie ein eigenes Standard-Thumbnail gewählt werden. Statt also nur ein Bild zu hinterlegen, kann so für jede Kategorie ein Thumbnail gewählt werden, welches immer dann angezeigt wird, wenn ein Artikel in der entsprechenden Kategorie über kein eigenes Bild verfügt. Sehr praktisch.

Hinweis: Im Snippet unten müssen die entsprechenden IDs angegeben werden. Erst die ID der jeweiligen Kategorie, dann die ID für das verwendete Bild. Ganz unten ist noch ein Standard für alle anderen Fälle festgelegt, also ein gewöhnliches Fallback. Wie ihr die ID eurer Artikel und Bilder herausfindet, erfahrt ihr übrigens in diesem Artikel. Natürlich kann das Snippet mit zusätzlichen Zeilen, um einige Kategorien erweitert werden.

Folgendes in die Functions.php eures Themes kopieren:

function default_category_featured_image()
	{
	global $post;
	$featured_image_exists = has_post_thumbnail($post->ID);
	if (!$featured_image_exists)
		{
		$attached_image = get_children("post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1");
		if ($attached_image)
			{
			foreach($attached_image as $attachment_id => $attachment)
				{
				set_post_thumbnail($post->ID, $attachment);
				}
			}
		  else if (in_category('ID DER KATEGORIE 1'))
			{
			set_post_thumbnail($post->ID, 'BILD ID');
			}
		  else if (in_category('ID DER KATEGORIE 2'))
			{
			set_post_thumbnail($post->ID, 'BILD ID');
			}
		  else if (in_category('ID DER KATEGORIE 3'))
			{
			set_post_thumbnail($post->ID, 'BILD ID');
			}
		  else if (in_category('ID DER KATEGORIE 4'))
			{
			set_post_thumbnail($post->ID, 'BILD ID');
			}
		  else
			{
			set_post_thumbnail($post->ID, 'BILD ID FÜR ALLE ANDEREN FÄLLE');
			}
		}
	}
add_action('the_post', 'default_category_featured_image');
add_action('save_post', 'default_category_featured_image');
add_action('draft_to_publish', 'default_category_featured_image');
add_action('new_to_publish', 'default_category_featured_image');
add_action('pending_to_publish', 'default_category_featured_image');
add_action('future_to_publish', 'default_category_featured_image');

Eigenes Thumbnail für jede Kategorie

Das Snippet ist tatsächlich mal etwas anderes und mehr als sinnvoll. Ich habe zum Beispiel eine Website bei der ein Thumbnail oft kaum Sinn ergibt. Also habe ich jeweils ein Bild für die Kategorien angelegt, welches viele Themen der Kategorie optisch in einer einzigen Grafik darstellt. Dieses Bild wird nun immer dann angezeigt, wenn ich einem Artikel der jeweiligen Kategorie kein Thumbnail zugewiesen habe. Da es optisch passt und von mir extra für diese Kategorie erstellt wurde, fällt dies nicht weiter auf. So kann ich am Ende für jede Kategorie ein passendes Standard-Thumbnail anlegen, welches bei den Artikel ohne Featured Image angezeigt wird und welches nie unpassend wirkt, weil es sich ja immer nach der jeweiligen Kategorie richtet. Durchaus nützlich, vor allem für all diejenigen, die nicht unnötig Bilder hochladen möchten. Ihr wisst schon, zusätzliche Bilder sind zusätzliche Ladezeit und Speicher verbrauchen sie auch. Performance ist halt alles.



Wordpress Performance eBook