STERFIELD

【PHP】WordPress内でメディアに登録していない画像をリサイズ・切り抜きする方法

【PHP】WordPress内でメディアに登録していない画像をリサイズ・切り抜きする方法

WordPressサムネイルを出力する際、画像のサイズを自由に変更する方法として、

function.php内でadd_image_size()という関数を使って事前に変更するサイズを定義したり、

サムネイルを出力するときに使うthe_post_thumbnail()という関数等のサイズ指定で、

という風に、配列で直接大きさを指定する方法があります。

 

しかしこれらは基本的にWordPressのメディアで登録した画像ではない場合、出力することができないため、

メディアに登録していない画像をサムネイルとして出力したい場合などには、これらの方法は使うことができません。

 

先ほどWordPressで制作していたサイトで、旧サイトから新サイトへ記事を引っ越しさせなければならなかったのですが、

記事がとても多くファイルのサイズが大きすぎたためか、

メディアの内容をエクスポート→インポートによって一緒に移すことができなかったため、

FTPでメディア内の画像ファイルを直接移動する方法を取らざるを得ず、

旧サイトの記事内の画像がメディアに登録されていないという状態になってしまいました。

 

この状態では、先ほどご紹介した方法でサムネイルとして表示することができないため、

別の方法を探したところ、見つけることができましたので、ご紹介いたします。

 

↓コチラのサイトで公開されているPHPのクラスを利用した方法です。

Resizeimg Class(PHPクラス)

方法

1.上のご紹介しているサイトから、「resizeimg.class.php」をダウンロードして、resizeimg.class.phpをFTPからテーマの入っているフォルダ(例:wp/wp-content/themes/[選んでいるテーマのフォルダ]/)にアップロードします。

 

2.function.phpに以下のコードを記入します。

[ルートパス]と[選んでいるテーマのフォルダ] のところは、環境に合わせて変更してください。

 

3.出力する箇所に、以下のコードを記入します。

 

これで完了です。

 

大きさだけでなく、切り抜きの方法も選ぶことができ、指定方法もわかりやすいので、

とても便利です。

Author Profile

著者近影

NINOMIYA

Webデザイナー兼コーダー出身のフロントエンド開発者です。 UXデザインやチーム開発の効率化など、勉強中です。

SHARE

合わせて読みたい