【WordPress】投稿ページサムネイルのPHP・CSS設定【オリジナルテーマ】

WordPressオリジナルテーマのサムネイル画像設定のサムネイル
SIM

WordPressオリジナルテーマでレスポンシプでバグらない投稿ページのPHP・CSS設定を紹介します。

目次

投稿ページのPHP|single.php

投稿ページのメインコンテンツ部分の抜粋PHPを下記に載せておきます。

<main class="l-main --sidebar">

  <section class="l-section --sidebar">
    <?php if (have_posts()) : ?>
      <?php while (have_posts()) : the_post(); ?>
        <h1 class="c-single-h1"><?php the_title(); ?></h1>
        <div class="service-thumbnail-wrapper">
          <?php the_post_thumbnail('large'); ?>
        </div>
        <?php the_content(); ?>
      <?php endwhile; ?>
    <?php endif; ?>
  </section>
</main>

そして投稿ページの直接サムネイルに関係する箇所の抜粋が下記のとおりです。

<div class="service-thumbnail-wrapper">
  <?php the_post_thumbnail('large'); ?>
</div>

ここで、the_post_thumbnail()の引数がlargeになっていますが、画像サイズの上限を十分な大きさに設定して下さい。設定は、WordPress管理画面の設定>メディア設定>サムネイルのサイズ>大サイズで適切な数字を記入して下さい。

初期設定では中サイズが300px、大サイズが1024pxですので、余程ページ幅が大きい場合を除いて再設定の必要はないと思います。

投稿ページのCSS(SCSS)

CSSを追記しない初期状態では、サイドバー付きのマルチカラムの場合、レスポンシブにサムネイルが対応できずに表示がバグります

それを解消するために、下記のようにCSSに追記すると正常に表示されるようになります。

// ------------------------------------
// サムネイルの設定
// ------------------------------------
.service-thumbnail-wrapper {
  margin-top: 2em;
  margin-bottom: 5em;
  box-shadow: 6px 6px 16px fw.$shadow-black;
}
.attachment-large {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

パーツごとに解説していきます。

レスポンシブに関係するCSS

Chromeのデベロッパーツールで確認すると、サムネイル(大)のclassはattachment-largeです。これに対して、レスポンシブでバグらないようにCSSを書く必要あります。

attachment-large {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

なお、object-fitは、coverでもcontainでもどちらでも影響ありません。一般的にはcontainが無難かもしれませんね。

余白や装飾に関するCSS

オリジナルテーマの場合は要素の余白がゼロですので、新たに設定する必要があります。私の場合は、サムネイルを囲うタグを作りましたので、そのタグ(service-thumbnail-wrapper)に対して装飾を行いました。

この例では、上方余白を1文字分(1em)、下方余白を2文字分(2em)に設定しています。他にはサムネイルに影を付けるためにbox-shadowも設定しています。

.service-thumbnail-wrapper {
  margin-top: 2em;
  margin-bottom: 5em;
  box-shadow: 6px 6px 16px fw.$shadow-black;
}

さいごに

以上、簡単ですが、WordPressオリジナルテーマの投稿ページのサムネイル画像がレスポンシブでバグらない設定を紹介しました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

■清水WEB制作代表
■コーディング:WordPress(オリジナルテーマ制作等)・HTML・Sass・FLOCSS・JavaScript(jQuery)等
■集客力:YouTube/Instagram/ブログでそれぞれ登録者数16000人/フォロワー13000人/月間最大アクセス50000PVの集客実績があります
■文章作成:博士号所有、会社員時代は科学雑誌に寄稿していたので文章作成も得意です
■写真技術:Amazon Kindle出版で、写真集・撮影編集解説書を5冊好評発売中です

目次