サポート » 使い方全般 » ライブラリの画像を一覧表示して、投稿記事にリンクさせたい

  • 解決済 san3san

    (@sansanko)


    何度もお世話になります。

    ・各投稿記事にはアイキャッチ画像に加えて複数の画像が挿入されている。
    ・ライブラリの画像は投稿に紐づいた画像のみ。
    ・画像挿入時のメディア設定ではサムネイルサイズを正方形にトリミング済み。
      という条件で

    全ての画像をサムネイルサイズで投稿記事ページ内(正確にはsingle-category.php)
    のループ外でランダム表示し、そこから投稿記事にリンクさせたい
    というのが目的です。

    wp-kougabuというプラグインが近いのですが、これだとthumbnailの指定ができず、
    元画像の比率を守ったまま縦横maxのピクセル指定になるので違う方法を探しています。
    (頑張ればcssで処理できそうではありますが…。)

    <?php query_posts('post_type=attachment&post_status=inherit&posts_per_page=10'); ?>
    <?php if( have_posts() ) : while ( have_posts() ) : the_post(); ?>
    	<li>
    	<a href="<?php the_permalink($post->post); ?>">
    	<?php $image = wp_get_attachment_image_src('','thumbnail') ?>
    	<img src="<?php echo $image[0]; ?>" />
    	</a>
    	</li>
    <?php endwhile; endif; ?>

    ↑これで画像自体は表示できましたがリンクがうまくいきません。
    シングルページのテンプレートに中サイズの画像が貼られたページにリンクしてしまいます。
    URLでいうと、<投稿記事のURL/画像のタイトル>という状態です。
    どこが間違っていますか?

    プラグインも含めていろいろ探してみましたが探し方が悪いのか解決できません。
    他にも質問中のトピックがあって恐縮ですが、よろしくお願いします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • $post->postは返り値には含まれていないはずです。
    親記事のIDでしたら、$post->post_parentになると思います。
    the_permalink()は引数を受け取りませんから、get_permalink()を使ってechoで表示します。
     
    テンプレートタグ/get_permalink – Codex 日本語版

    トピック投稿者 san3san

    (@sansanko)

    popupさん
    本当に何度もありがとうございます。

    ご指摘の修正でできました。
    $post->post_parent までは気がついたのですが
    またしても表示するものと取得するだけのものを混同していました。
    勉強になります。

    どうもありがとうございました!

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「ライブラリの画像を一覧表示して、投稿記事にリンクさせたい」には新たに返信することはできません。