サポート » プラグイン » ギャラリーに表示される画像のリンク

  • 解決済 fuel100

    (@fuel100)


    はじめまして、fuel100と申します。
    現在以下のようなことを実現しようとしておりますが、上手くいかず
    苦慮しております。

    ・アップロードした画像一覧をギャラリーのようにサムネイルで一覧表示。
     通常はこの画像に元画像のリンクが張られそれをクリックすると元画像が
     拡大表示されるかと思います。
    ・元画像を拡大するのではなく、サムネイル画像をクリックすると自身で
     指定したリンク(例えば記事のURLだったり、ある会社のURLだったり)
     に遷移させたいのです。

    NextGEN、LightBoxなどいろいろトライしましたが、期待した結果は得られませんでした。
    もし、ご存知の方いらっしゃいましたら、ご教示頂けると幸いです。
    宜しくお願い致します。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • 自身で指定したリンク(例えば記事のURLだったり、ある会社のURLだったり)

    リンクの指定を、
    各画像の「説明」欄に「http://example.com」のようにURLを書く
    ことにした場合、

    functions.php に以下を追加して、〜.php のサムネイルを表示したい箇所で
    <?php my_images() ?> と書けばOKです。

    function my_images(){
      $images = &get_posts('numberposts=-1&post_type=attachment&post_mime_type=image');
      foreach((array) $images as $image){
    	$link = $image->post_content;
    	if(! $link) $link = get_permalink($image->post_parent);
    	echo  '<a href="' . $link . '">' . wp_get_attachment_image($image->ID) . '</a>';
      }
    }

    「説明」欄が空白の場合は、当該画像の親記事のリンクで代替しています。

    トピック投稿者 fuel100

    (@fuel100)

    kz様
    ご丁寧なご回答有難う御座います。
    ご指摘の方法で画像にリンクが張られることを確認致しました。
    本当にありがとうございます。
    すいませんが、1点だけお教え願いたいのですが、ギャラリーのように
    横3列X縦数列のようなギャラリーのようにサムネイルを並べたいのですが、
    これはHTMLをガリガリ記述すべきか、それともギャラリーのプラグインと
    上記のコードを組み合わせるべきでしょうか?見た目はギャラリーのように
    整然と並ぶようにしたいのですが。

    wordpress のギャラリーと同じで良いなら

    function my_images(){
      $images = &get_posts('numberposts=-1&post_type=attachment&post_mime_type=image');
      $i = 0;
      foreach((array) $images as $image){
        $link = $image->post_content;
        if(! $link) $link = get_permalink($image->post_parent);
        echo  '<a href="' . $link . '">' . wp_get_attachment_image($image->ID) . '</a>';
        if(++$i == 3){
          $i = 0;
          echo '<br style="clear: both;"/>';
        }
      }
    }

    で横3列X縦数列になります(未検証)。

    あとは <div class="my-gallery"></div> で全体を囲む等して css で

    .my-gallery{text-align:center;}
    .my-gallery a{
    width:150px;
    height:150px;
    padding:10px;
    display:block;
    }

    とかなんとか書けばOKです(未検証)。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「ギャラリーに表示される画像のリンク」には新たに返信することはできません。