サポート » 使い方全般 » エントリー内で使用している画像にリンクを貼りたい

  • お世話になっています。今回もよろしくお願いいたします。

    TOPページに、エントリー内で使用している画像にリンクを貼りたいと思っています。
    今は
    <a href="<?php the_permalink() ?>"><?php the_content(); ?></a>
    このようにしてあるのですが、このままだと
    <a><p>画像</p></a>という風になってしまい、
    pタグまで挿入されてしまうので、html構文的に良くないのが気になります…

    なにかいい方法はないでしょうか。

    投稿の最初の画像を抜き出して表示するプラグイン、
    Image Extractor
    http://www.dynamick.it/image-extractor-765.html
    を使ってみようかと思ったのですが、使い方が良く分からなくて…

    よろしくお願いいたします。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • モデレーター IKEDA Yuriko

    (@lilyfan)

    <a href="<?php the_permalink() ?>"><?php the_content(); ?></a>

    これだと、投稿に img 要素だけがある場合しか使えませんよね? 何か説明文章を書いてしまうと、根本的に破綻してしまいます。
    画像をメディアライブラリにアップロードしているならば、その画像をひっぱってくるようにすればよさそうです。ギャラリーショートコードを参考にして、

    global $id;
    $attachments = get_children("post_parent=$id&post_type=attachment&post_mime_type=image");
    $first_image = array_shift(array_keys($attachments));
    echo '<a href="' .  get_the_permalink() . '">' . wp_get_attachment_image($first_image) . '</a>';

    という感じでどうでしょう。

    トピック投稿者 kiske

    (@kiske)

    lilyfanさん回答ありがとうございます。
    moreより上の画像にリンクを貼ってくれるだけで良いんですが、難しいですね。

    抜粋機能を使ってみたのですが、これも<p>が挿入されてしまって、
    うまく表示されてくれませんでした。

    lilyfanの教えて頂いたコードでやってみますね。ありがとうございました。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「エントリー内で使用している画像にリンクを貼りたい」には新たに返信することはできません。