質問: wordpressでの質問です。 投稿ページで投稿された画像を全て固定ページで表示させたいです。 今の所下記のように直接アップロードしたメディアのフォルダをみにいって画像を取得し表示するという 方法はわかったのですが、 「画像を直接メディアから取得して表示させる方法」 ``` ``` これではなく投稿ページに貼り付けた画像で「この投稿ページのこの画像を表示」という形にしたいのです。 全ての投稿に添付している画像を表示したいです。 また、「この画像はこのタイトルの投稿ページですよ」というのもわかるように記事のタイトルも表示させたいのですが、 何にか良い方策はありますでしょうか。 googleで検索しているのですが、中々「これだ!」というのが見つからず困っています。 参考サイトでも構いません!ご教授頂けると幸いです。 お願いします。どうしても仕事でつかわなければいけないんです。 本来なら書籍を買うなどして1から勉強すべきところではありますが私には時間がないのです。 少々丸投げ感のある質問内容にはなってしまいましたがご了承ください。 何から手を付けていいのかもわからず困っています。迷える子羊にぜひ救いの手を! 私はwordpress初心者なのですが、初心者なのに難しい事をしようとしてしまい申し訳ありませんがよろしくお願いします。
回答: とりあえず、考え方としては... 1. `$myposts = get_posts( array( 'posts_per_page' => -1 ) );` で全投稿を取得する。 2. `$myposts` をループで回して 個々の投稿IDを取得する。 3. 投稿IDを利用にして、`get_children( array( 'post_parent' => 投稿ID, 'post_type' => 'attachment' );` で、画像を取得する。 で、取得できないでしょうか? 参考URL * https://wpdocs.osdn.jp/テンプレートタグ/get_posts * http://wpdocs.osdn.jp/関数リファレンス/get_children とりあえず、こんな感じでエラーは出ないと思います。 ``` $myposts = get_posts('posts_per_page' => -1); foreach($myposts as $post){ setup_postdata( $post ); the_title(); $images = get_children( array( 'post_parent' => $post->ID, 'post_type' => 'attachment' ); foreach( (array) $images as $attach_id => $attach ){ echo wp_get_attachment_link( $attach_id ); } } ```