SÄ hÀr fÄr du alla inlÀggsbilagor i WordPress förutom den utvalda bilden

Hur man skapar en anpassad mall för enstaka bilagor i WordPress

Nyligen nÀr vi arbetade med ett anpassat projekt för en klient, var vi tvungna att fÄ alla inlÀggsbilagor frÄn en anpassad inlÀggstyp och visa dem pÄ ett stÀlle. Eftersom vi skapade en rutnÀtskÀrm hade vi varje inlÀggs utvalda bild som tjÀnade syftet med en separator. Det var dÀrför som vi behövde utesluta den utvalda bilden nÀr vi fick alla inlÀggsbilagor sÄ att den inte visas tvÄ gÄnger. I den hÀr artikeln kommer vi att visa dig hur du fÄr alla bifogade inlÀgg i WordPress förutom den utvalda bilden.

Allt du behöver göra Àr att klistra in följande kod i en slinga.


<?php if ( $post->post_type == 'data-design' && $post->post_status == 'publish' ) {
		$attachments = get_posts( array(
			'post_type' => 'attachment',
			'posts_per_page' => -1,
			'post_parent' => $post->ID,
			'exclude'     => get_post_thumbnail_id()
		) );

		if ( $attachments ) {
			foreach ( $attachments as $attachment ) {
				$class = "post-attachment mime-" . sanitize_title( $attachment->post_mime_type );
				$thumbimg = wp_get_attachment_link( $attachment->ID, 'thumbnail-size', true );
				echo '<li class="' . $class . ' data-design-thumbnail">' . $thumbimg . '</li>';
			}
			
		}
	}
?>

Koden ovan kontrollerar först om posttypen Àr datadesign och poststatusen publiceras. Du kanske inte behöver den första villkorliga beroende pÄ vad du försöker göra. Sedan kör vi helt enkelt get_posts-frÄgan. Allt Àr ganska sjÀlvförklarande dÀr. Nyckeln som vi mÄste markera Àr exkluderingsfunktionen. Den linjen ser till att den utvalda bilden inte dyker upp. Om du tar den linjen bort kommer den presenterade bilden att visas. Efter att ha specificerat alla parametrar anger vi helt enkelt vad vi ska göra nÀr varje bilaga dras. Vi drar bifogningstyp för klassvariabeln. DÄ anvÀnder $ thumbimg-variabeln helt enkelt wp_get_attachment_link för att dra bilden med en viss miniatyrstorlek, och den hyperlÀnkar ocksÄ bilden till de enskilda bifogade sidorna. I det sista steget upprepar vi det helt enkelt.

Vi sprang den hÀr koden i en slinga med ett separat samtal för utvald bild som lÀnkar till det enskilda inlÀgget. Slutresultatet sÄg ut sÄ hÀr:

Varje utvald bild fungerade som en albumidentifierande bild som du kan se. De grÄ flÀckarna fylldes med bilagorna till inlÀgget. Vi hoppas att detta skulle hjÀlpa dem som vill driva WordPress bortom en bloggplattform.