サポート » 使い方全般 » 記事の最初の画像を取得、トリミングしてサムネイルにしたい

  • kog

    (@kog)


    こちらの記事を参考に、
    http://www.wp-tech.net/wordpress_tips/1703/
    記事の一番最初の画像を取得してサムネイルにすることはできましたが、
    サムネイルのサイズが元画像のサイズになってしまいます。
    記事の最初の画像を取得し、
    設定した画像サイズ(例えば640px × 640px)にトリミングした画像を表示するようにする方法はありますでしょうか?

    おわかりの方がいらっしゃいましたら、
    ご教授いただければ助かります。
    よろしくお願いいたします。

    //記事の一番最初の画像を取得してサムネイルにする
    function catch_that_image() {
      global $post, $posts;
      $first_img = '';
      ob_start();
      ob_end_clean();
      $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
      $first_img = $matches [1][0];
      if (empty($first_img)) {
        $first_img = "/images/default.jpg"
      }
      return $first_img;
    }

    echo catch_that_image();

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • sysbird

    (@sysbird)

    リサイズでなく、トリミング(サイズは変えない)ということでしたら、
    こちらの「3」の方法でやったことがあります。

    【CSS】画像の上下中央配置とか画像配置に関するいろいろ

    WordPressとはあまり関係なくなってしまいますけど、
    おためしください

    ikaring

    (@ikaring)

    このプラグインだとどうでしょうか。
    過去投稿も一括でアイキャッチ画像の登録ができ、以後の投稿も自動で記事内の画像をアイキャッチとして保存してくれます。

    https://ja.wordpress.org/plugins/auto-post-thumbnail/

    画像のURLが判明しているのであれば、attachment_url_to_postid を使うと、それがWordPressでアップロードされた画像ならば、画像のIDが取得出来ます。

    後は、これを wp_get_attachment_image で出力するなり、 set_post_thumbnail で投稿サムネイルとして登録するなり、煮るなり焼くなり。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「記事の最初の画像を取得、トリミングしてサムネイルにしたい」には新たに返信することはできません。