WordPressの投稿画像に任意のclassを自動的に追加する方法
MENU
  1. HOME
  2. WordPress / カスタマイズ
  3. WordPressの投稿画像に任意のclassを自動的に追加する方法

最近の作業実績

  • 2023年09月24日管理画面にログインできない不具合を解消いたしました。
  • 2023年09月23日カスタムフィールドを導入して更新しやすい環境を構築いたしました。
  • 2023年09月22日レスポンシブのデザインの微調整を行いました。
  • 2023年09月21日デザインの微調整を担当いたしました。
  • 2023年09月20日固定ページのタイトルにサブタイトルを設定できるようにいたしました。
  • 2023年09月19日管理画面にログインできない不具合を解決いたしました。
  • 2023年09月18日サイトが正常に表示される状態まで復旧いたしました。
  • 2023年09月18日各ページのレイアウトを組み変えました。
  • 2023年09月17日追従型のウィジェットエリアを実装いたしました。
  • 2023年09月16日セキュリティ対策を導入いたしました。
  • 2023年09月15日サイドバーにカテゴリー一覧を追加いたしました。
  • 2023年09月14日会員機能を修正いたしました。
  • 2023年09月13日スパム対策を導入いたしました。
  • 2023年09月12日常時SSL化の不具合を修正いたしました。
  • 2023年09月11日オリジナルテーマを作成いたしました。
  • 2023年09月10日PCとスマホで表示する画像を切り替えられる仕組みを導入いたしました。
  • 2023年09月09日既存サイトにスパム対策を導入いたしました。
  • 2023年09月08日トップページにスライダーを実装いたしました。
  • 2023年09月07日追尾型のウィジェットエリアを実装いたしました。
  • 2023年09月06日管理画面にログインできない不具合を解決いたしました。
  • このエリアには直近の制作実績を一部掲載しております。
  • 制作実績はリアルタイム反映ではありません。

WordPressの投稿画像に任意のclassを自動的に追加する方法

この投稿は2019/05/04に加筆修正いたしました。

WordPressの投稿画像に任意のclassを自動的に追加する方法をご紹介します。画像にオリジナルのクラスを追加しておけば、装飾の幅が広がるのではないでしょうか?ご興味のある方はご覧ください。6分間でマスターできます。

この記事は約 4 分で読めます。

WordPressサイトで投稿した画像にオリジナルのクラスを指定する方法

画像を投稿する時、その画像にオリジナルのクラスを指定したい。
とある案件で必要になったカスタマイズです。

WordPressのメディアに投稿した画像にオリジナルのクラス、例えば【class=”test”】を追加したいという希望がクライアント様から出てきました。

このカスタマイズは、色々な案件でよくご要望が出てくるのですが、これまでにその方法をご紹介したことがありませんでした。

備忘録もかねて、シェアをさせていただきます。

投稿した画像にオリジナルのクラスを付与するカスタマイズ

カスタマイズの方法は簡単です。
お馴染みのfunctions.phpにコードを1つ追記するだけでOKでした。

以下のコードをfunctions.phpに追記してください。
場所はどこでも構いません。


function add_image_class( $classes ) {
return $classes . ' test-class';
}
add_filter('get_image_tag_class', 'add_image_class');

参考:WordPressでメディアから投稿に挿入した画像に「好きなクラス名を追加する」方法

赤文字の【test-class】部分が付与したいクラス名になります。
この部分を付与したいクラス名に変更してください。

このコードを追記するだけで、投稿した画像のタグに【test-class】とオリジナルのクラスを付与できます。
実際にコードを追記して、画像タグを確認してみてください。

複数のクラスを指定したい場合

先ほどのコードは、【test-class】というクラスを一つだけ追加する方法でした。
複数のクラスを指定したい場合は、以下のようにします。


function add_image_class( $classes ) {
return $classes . ' test-class test-class2';
}
add_filter('get_image_tag_class', 'add_image_class');

【test-class2】というクラスが追加されています。
クラス名を複数指定したい場合、半角スペースで区切ってクラス名を増やしてください。

クラス名を半角スペースで区切らないと、不具合が生じてしまいます。
詳しくは後述しています。

投稿した画像にオリジナルのクラスを付与するカスタマイズの注意点

今回のカスタマイズを実践する場合、いくつかの注意が必要です。
個別に開設していきます。

注意:クラス名の区切りには半角スペースが必須

上記のコードを確認すると分かりますが、オリジナルクラスの前に【半角スペース】があります。
この半角スペースは、絶対に削除しないでください。

return $classes . ' test-class';
return $classes . ' test-class test-class2';

クラス名が一つだけの場合、複数の場合、いずれも各クラス名の前に半角スペースがあります。
この半角スペースは、絶対に削除しないでください。

この半角スペースを削除してしまうと、Wordpressが自動的に挿入する複数のクラスの最後と、今回のカスタマイズで自動挿入させるオリジナルクラスが合体してしまうためです。

半角スペースがある場合

class="alignnone size-large wp-image-11020 test-class"

半角スペースが無い場合

class="alignnone size-large wp-image-11020test-class"

半角スペースがないと、上記の赤文字部分のように、クラスが合体してしまいます。
そうなりますと、どちらのクラスに設定した装飾も反映されません。

半角スペースを削除しないように注意してください。

注意:過去の画像にクラスは付与されません

今回のカスタマイズでクラスが付与されるのは、コードをfunctions.phpに追記した後に投稿された画像だけです。過去に投稿された画像にクラスは付与されません。

過去の画像にクラスを付与したい場合は、過去記事の画像タグを個別に編集しなければなりません。

この点を理解していないと、過去記事の画像にもクラスが付与されていると考え、結果として付与されていないとガッカリすることになります。

過去記事の画像にはオリジナルクラスは付与されません。
この点をしっかりと認識してください。

まとめ

WordPressの投稿画像に任意のclassを自動的に追加する方法をご紹介しました。

画像周りの装飾をする時など、役立つカスタマイズかと思います。
過去に投稿した画像にはクラスが付与されませんので、この点だけ注意が必要です。

コピペだけでカスタマイズできますので、ぜひ挑戦してみてください。

Wordpressのカスタマイズや不具合など
何かお困りのことはありませんか?

Wordpressに関連するあなたのお悩み、解決いたします。
次のような方は、お気軽にご相談下さい。

  • Wordpressサイトをカスタマイズしたいが、やり方が分からないで困っている。カスタマイズの知識が豊富な人に任せたい。
  • Wordpressサイトに不具合が発生したが、直し方が分からない。不具合の修正経験が豊富な人に任せたい。
  • 既存サイトにWordPressを導入したいが、やり方が複雑で自分ではできそうにもない。経験が豊富な人に任せたい。
  • WordPressがハッキングされたが修正の仕方が分からない。サイトを元通りにできる人を探している。
  • Wordpressで0からサイトを制作したいが、自分ではできそうにもない。プロにサイト制作を委託したい。

一つでも該当する方は、以下のフォームからお気軽にご相談下さい。

WordPressに関して今すぐ相談する

著者:takaya kondo

岡山在住のWordPress専門フリーランサーです。Wordpressを使ったWEBサイト制作を中心に10年間ほど活動させていただいています。

Wordpress関連の記事でお役に立てれば幸いです。

【関連記事】あなたが興味のありそうな関連記事をご紹介します。

コメントを残す

(必須)

CAPTCHA