情報を追記している場合はありますが、古い情報を訂正はしていませんので、公開年月日を参照してください。プラグイン・タグ、いずれもワードプレス・PHPのバージョン等によって動作しない場合もあります。
画像の一覧から投稿へリンクしたい、ということで調べてみた。
画像に紐付いた投稿はpost_parent としてデータベースに保存されているそうで、
$post = get_post(‘画像ID’); $ID = $post->post_parent; echo get_permalink($ID);
こんな感じで取得できるところまでは確認した。
画像自体をカテゴリー分けしたいということでMedia Library Categoriesなどを使用する想定だが、未実装なのでアイデアのみ。
追記
投稿タイプwork に添付された画像を投稿へのリンク付きで
<?php $query = new WP_Query( array( 'post_type' => 'work', 'posts_per_page' => -1, 'fields' => 'ids' ) ); $image_query = new WP_Query( array( 'post_type' => 'attachment', 'post_status' => 'inherit', 'post_mime_type' => 'image', 'posts_per_page' => -1, 'post_parent__in' => $query->posts, 'order' => 'DESC' ) ); if( $image_query->have_posts() ){ while( $image_query->have_posts() ) { $image_query->the_post(); $imgurl = wp_get_attachment_url( get_the_ID() ); $attachment_id = attachment_url_to_postid( $imgurl ); $post = get_post($attachment_id); $pid = $post->post_parent; $link = get_permalink($pid); echo '<a href="'.$link.'"><img src="'.$imgurl.'"></a>'; } } ?>
ACFで添付ファイルにカスタムフィールドを付けることも可能なので、ラジオボタン等で画像の分類も可能。
2019.7.17追記:
実装完了。これを、URLとかテーマファイルとか、どうやって実装するか悩みましたが、結局、
・画像はACFで分類を付ける
・アーカイブのURLに画像分類のパラメータを付け、パラメータの有無で読み込むテーマファイルを分岐
・上記image_queryの後でACFを取得しforeach
・パラメータの値とACFの値が同じなら画像を表示
としました。