{"id":205,"date":"2014-05-27T13:21:41","date_gmt":"2014-05-27T11:21:41","guid":{"rendered":"http:\/\/www.cs-f.biz\/blog\/?p=205"},"modified":"2022-11-16T18:48:19","modified_gmt":"2022-11-16T16:48:19","slug":"wordpress-einmal-hochgeladene-bilder-in-unterschiedlichen-groessen-einsetzen","status":"publish","type":"post","link":"https:\/\/www.cs-f.biz\/blog\/wordpress-einmal-hochgeladene-bilder-in-unterschiedlichen-groessen-einsetzen\/","title":{"rendered":"WordPress: Einmal hochgeladene Bilder in unterschiedlichen Gr\u00f6\u00dfen einsetzen"},"content":{"rendered":"<p>Oft genug kommt es vor, dass ein Website-Layout die gleichen Bilder an unterschiedlichen Stellen und in unterschiedlichen Gr\u00f6\u00dfen vorsieht. Man nehme den Fall, dass beispielsweise Teammitglieder sowohl auf einer &#8222;Wer wir sind&#8220;-artigen Seite als auch im Randbereich in einer &#8222;Ihr Ansprechpartner&#8220;-Infobox auf einer ganz anderen Seite derselben Internetpr\u00e4senz zu sehen sein sollen. Im Teambereich d\u00fcrfen die Fotos sch\u00f6n gro\u00df eingesetzt werden, in der Infobox aber nur relativ klein.<!--more--><\/p>\n<p>Soll der WordPress-Nutzer zwei Bilder vorbereiten und getrennt in WordPress&#8216; Mediathek hochladen? F\u00fcr ge\u00fcbte Web-Fachleute sicher ein gangbarer Weg, da Bildbearbeitung vielleicht keine allzu gro\u00dfe H\u00fcrde darstellt. Otto-Normal-Kunden schaffen es aber vielleicht gerade einmal, ihre Fotos von der Kamera in die Mediathek zu bugsieren, haben allerdings keine Ahnung von Bildbearbeitung oder -kompression, verf\u00fcgen nicht \u00fcber die n\u00f6tigen Werkzeuge daf\u00fcr oder sind sich schlicht zu schade f\u00fcr solch &#8222;niederen&#8220; T\u00e4tigkeiten.<\/p>\n<p>In solchen Situationen ist die WordPress-Funktion <a title=\"WordPress Dokumentation add_image_size\" href=\"http:\/\/codex.wordpress.org\/Function_Reference\/add_image_size\" target=\"_blank\" rel=\"noopener\">add_image_size<\/a> n\u00fctzlich. Mit ihr kann der das Projekt betreuende Programmierer die n\u00f6tigen Bildgr\u00f6\u00dfen festlegen (z.B. in der functions.php) und an den geeigneten Stellen in seinen Templates in der jeweils gew\u00fcnschten Gr\u00f6\u00dfe anzeigen lassen.<\/p>\n<p>Wenn die Funktion add_image_size() im Theme zur Verf\u00fcgung steht und die n\u00f6tigen Bildgr\u00f6\u00dfen im Code eingetragen worden sind, werden n\u00e4mlich beim Upload eines neuen Fotos \u00fcber die Mediathek nicht nur das Foto selbst, sondern auch Kopien davon in den angegebenen Gr\u00f6\u00dfen angefertigt und gespeichert.<\/p>\n<pre style=\"color: #ccc;\">if ( function_exists( 'add_image_size' ) ) { \n\tadd_image_size( 'gro\u00dfes-portraitfoto', 1024, 300 );\n        add_image_size( 'kleines-portraitfoto', 250, 250 );\n}<\/pre>\n<p>Hier wird eine neue Bildgr\u00f6\u00dfe angegeben und dem Namen &#8222;gro\u00dfes-portraitfoto&#8220; zugeordnet. \u00dcber diesen Namen k\u00f6nnen hochgeladene Bilder unter Zuhilfenahme diverser verschiedener WordPress-Funktionen an anderer Stelle angezeigt werden, z.B. durch\u00a0<a href=\"http:\/\/codex.wordpress.org\/Function_Reference\/wp_get_attachment_link\" target=\"_blank\" rel=\"noopener\"><em>wp_get_attachment_link()<\/em><\/a> oder\u00a0<a href=\"http:\/\/codex.wordpress.org\/Function_Reference\/get_the_post_thumbnail\" target=\"_blank\" rel=\"noopener\"><em>get_the_post_thumbnail()<\/em><\/a>, je nachdem, was gerade am besten geeignet ist:<\/p>\n<pre style=\"color: #ccc;\">echo get_the_post_thumbnail( 99, 'gro\u00dfes-portraitfoto' );<\/pre>\n<p>Das Beitragsbild mit der ID 99 wird in der Gr\u00f6\u00dfe &#8222;gro\u00dfes-portraitfoto&#8220; ausgegeben. Woanders kann dasselbe Bild in anderer Gr\u00f6\u00dfe genutzt werden:<\/p>\n<pre style=\"color: #ccc;\">echo get_the_post_thumbnail( 99, 'kleines-portraitfoto' );<\/pre>\n<p>Dadurch sammeln sich zwar schnell eine Menge Bilddaten auf dem Server an (und ich w\u00fcrde mir eine M\u00f6glichkeit w\u00fcnschen, selektieren zu k\u00f6nnen, wann man die zus\u00e4tzlichen Dateien angelegt haben m\u00f6chte). aber &#8222;faule&#8220;\u00a0Nutzer\u00a0haben mit einer auf diese Weise vorbereiteten WordPress-basierten Website definitiv weniger Scherereien.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Oft genug kommt es vor, dass ein Website-Layout die gleichen Bilder an unterschiedlichen Stellen und in unterschiedlichen Gr\u00f6\u00dfen vorsieht. Man nehme den Fall, dass beispielsweise Teammitglieder sowohl auf einer &#8222;Wer wir sind&#8220;-artigen Seite als auch im Randbereich in einer &#8222;Ihr Ansprechpartner&#8220;-Infobox auf einer ganz anderen Seite derselben Internetpr\u00e4senz zu sehen sein sollen. Im Teambereich d\u00fcrfen [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,15],"tags":[19,17],"class_list":["post-205","post","type-post","status-publish","format-standard","hentry","category-web-entwicklung","category-wordpress","tag-add_image_size","tag-wordpress-2"],"_links":{"self":[{"href":"https:\/\/www.cs-f.biz\/blog\/wp-json\/wp\/v2\/posts\/205","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cs-f.biz\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cs-f.biz\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cs-f.biz\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cs-f.biz\/blog\/wp-json\/wp\/v2\/comments?post=205"}],"version-history":[{"count":3,"href":"https:\/\/www.cs-f.biz\/blog\/wp-json\/wp\/v2\/posts\/205\/revisions"}],"predecessor-version":[{"id":268,"href":"https:\/\/www.cs-f.biz\/blog\/wp-json\/wp\/v2\/posts\/205\/revisions\/268"}],"wp:attachment":[{"href":"https:\/\/www.cs-f.biz\/blog\/wp-json\/wp\/v2\/media?parent=205"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cs-f.biz\/blog\/wp-json\/wp\/v2\/categories?post=205"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cs-f.biz\/blog\/wp-json\/wp\/v2\/tags?post=205"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}