「the_post_thumbnail()」のサイズやクラス名、altやtitleなどを変更したり消したりする方法

「the_post_thumbnail()」のサイズやクラス名、altやtitleなどを変更したり消したりする方法

こんにちわ。昨日、自宅で友人たちと餃子パーティーをして180個の餃子を作りました!絶賛二日酔い中のTAKA(@web_creativelab)です。

WordPressでサムネイル画像を表示する際に使用する関数「the_post_thumbnail()」ってとても便利ですよね。
「width」や「height」はもちろん「alt」や「class」を任意のものに指定することができるのでメモしておきます。

■ サイズを変更

横幅640px、縦幅480pxのサムネイル画像を出力したい場合は以下のようにします。

<?php the_post_thumbnail(array(640,480)); ?>

■ クラス名を変更

任意のクラス名(例:testClass)を追加したい場合は以下のようにします。

<?php the_post_thumbnail('thumbnail', array('class' => 'testClass')); ?>

■ titleを指定

titleを記事のタイトルにしたい場合は以下のようにします。

<?php the_post_thumbnail('thumbnail', 'title' => get_the_title()); ?>

■ altを指定

altを記事のタイトルにしたい場合は以下のようにします。

<?php the_post_thumbnail('thumbnail', 'alt' => get_the_title()); ?>

■ サイズ指定を完全に出力しない

サイズ指定を完全に削除(出力させたくない)したい場合は、functions.phpに以下を記入します。

<?php 
add_filter( 'post_thumbnail_html', 'custom_attribute' );
function custom_attribute( $html ){
	$html = preg_replace('/(width|height)="\d*"\s/', '', $html);
	return $html;
}
?>

■ クラス名を完全に出力しない

クラス名を完全に削除(出力させたくない)したい場合は、functions.phpに以下のように記入します。

<?php 
add_filter( 'post_thumbnail_html', 'custom_attribute' );
function custom_attribute( $html ){
	$html = preg_replace('/class=".*\w+"\s/', '', $html);
	return $html;
}
?>

もちろん上記のコードは複数同時に使うことも可能です。
WordPressは「これはさすがに出来ないだろうなー」ということが調べてみたら意外とできちゃったりするので、やりたいことがあったらとりあえずググってみることをおすすめします!