如何獲取除特色圖片之外的WordPress中的所有帖子附件


最近,在為客戶進行自定義項目時,我們不得不從自定義帖子類型中獲取所有帖子附件,並將它們顯示在一個地方。 因為我們正在創建網格顯示,所以每個帖子的特色圖片都用作分隔符。 這就是為什麼在獲取所有帖子附件時,我們需要排除特色圖片,因此它不會出現兩次。 在本文中,我們將向您展示如何獲取WordPress中除特色圖片之外的所有帖子附件。

您所要做的就是將以下代碼粘貼到循環中。

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 '
  • ' . $thumbimg . '
  • '; } } } ?>

    上面的代碼首先檢查發布類型是否為數據設計,並且發布狀態為發布。 根據您要執行的操作,您可能不需要第一個條件。 然後,我們只需運行get_posts查詢。 那裡的一切都很自我解釋。 我們必須強調的關鍵是排除功能。 那條線確保沒有顯示特色圖像。 如果您將那條線拿走,則會顯示精選圖像。 指定所有參數後,我們只需指定拉出每個附件時的操作。 我們為類變量拉附件類型。 然後,$ thumbimg變量僅使用wp_get_attachment_link將圖像以特定的縮略圖大小拉出,並且還將圖像超鏈接到單個附件頁面。 在最後一步,我們簡單地迴聲它。

    我們在循環內運行此代碼,並單獨調用了鏈接到各個帖子的特色圖片。 最終結果如下所示:

    附件網格

    每個特色圖像都充當一個相冊識別圖像,您可以看到它。 灰色斑點中充滿了該郵件的附件。 我們希望這將對那些希望將WordPress超越博客平台的人們有所幫助。