WordPressの画像にフルサイズしかない!特にXAMPPの初期設定ではフルサイズのみで他の画像サイズが作成されない。

2021-02-26

XAMPP(ザンプ)をインストールしてローカル環境でWordpressを使用していたある日…アップロードした画像を記事に挿入する際に画像のサイズがフルサイズしかなく、サムネイルや中、大サイズの画像が出てこなかった…

メディア設定やfunctions.phpも確認したが解決に至らず…詰まっていたのですが、どうも初期状態のXAMPPでは画像の自動作成が行われないようで、アップロード時にサムネイルや中、大サイズを自動生成するように変更しました。

WordPressでフルサイズしかない場合に確認したい内容と、XAMPPでサムネイルや中、大サイズの画像を生成する方法を記載してます。

WordPressで画像サイズがフルサイズしかない場合の確認事項

Wordpress_画像がフルサイズしかない1XAMPPでインストールしたWordpressに画像をアップロードしたのはいいが、フルサイズ以外の画像サイズが出てこない…

メディア設定の確認

Wordpress_画像がフルサイズしかない2まず疑うべきはメディア設定。
ココの数字が0になっているとフルサイズ以外の画像サイズは自動生成されない。
(テーマで使用する別サイズの画像は生成される可能性あり)

インストール直後のXAMPPでは当然初期設定でサムネイル150px、中300px、大1024pxと数字が入力されていましたので問題なし!

functions.phpの確認

functions.phpにコードを追加しても画像のリサイズの制御ができるが、まっさらなWordpressをインストールした直後なので可能性はなし!

XAMPPでGDライブラリを有効化する

次にWordpressの画像処理で使われていそうなライブラリを確認。
するとPHPのGDライブラリがXAMPPで有効になっていないことが判明。
Windows10です。MacやLinuxでは異なる場合があるのでご了承ください。

Wordpress_画像がフルサイズしかない3

xampp > php > ext > php_gd.dll

インストール直後のXAMPPにも入っていました。
が、読み込んでいないようです。
コチラを有効にしないとWordpressに画像をアップロードした際にフルサイズ以外の画像が自動作成されません。

■php.gb.dllとは?
PHPでJPEGやPNGといった画像の処理を行えるGDライブラリというものを司る拡張ファイルです。
XAMPP内にもこのファイルはあるが初期設定では有効になっていない。
PHPのバージョンによって異なるファイル名に注意!
PHPバージョン7系:php.gb2.dll
PHPバージョン8系:php.gb.dll
新しいバージョンのXAMPPではPHPのバージョンが8.○○になっているので
「gb2」ではなく「gb」を有効にする必要があります。

続いてGDライブラリを読み込んで有効化するのですが、新しいザンプで同封されているPHPはバージョン8になっており、ファイル名が変更されていました。
gb2をダウンロードして有効化してもうまくいかなかったので注意です。
(もしdllファイルがない場合はネット上でダウンロード可能)

php.iniでphp.gb.dllを読み込む

では早速XAMPP内のphp.iniファイルを編集してGDライブラリを読み込むように設定変更します。

Wordpress_画像がフルサイズしかない4

xampp > php > php.ini

XAMPPインストールフォルダ > xampp > php > php.ini

に進み、php.iniファイルを開きましょう。多分メモ帳でも可能。

開いたら最終行(一番下)に以下を追加。

extension=php_gd.dll
Wordpress_画像がフルサイズしかない5

php.iniファイルの最終行にコードを追加

追加したら保存します。
Apacheを再起動しないと反映されないので注意!
これで画像をアップロードした際に、サムネイル、中、大サイズが自動生成されます。

GDライブラリの動作確認

先ほどの作業で無事にフルサイズ以外の画像が生成されるようになったかと思いますが、念のためGDライブラリが起動しているか確認する方法です。

Wordpress_画像がフルサイズしかない6

xampp > htdocs内にphpinfo.phpを作成

ザンプのルート直下にphpinfo.phpというファイルを作ります。
メモ帳などで作成する場合は拡張子が.txtではなく.phpになるように注意。

phpinfo.php内に下記を記入して保存する。

<?php
phpinfo();
?>
Wordpress_画像がフルサイズしかない7

作成したphpinfo.phpファイル内のコード

コチラのコードが記述されたファイルにアクセスすることでPHPに関する設定や動作環境を確認することができます。
XAMPPのルート直下にこのファイルを作成したので、
「http://localhost/phpinfo.php」
でアクセスすることができます。
同URLのリンクを作ったのでコチラでもOK!

Wordpress_画像がフルサイズしかない8少しスクロールしたところにgdという項目があります。
「GD Support」がenabledになっていればGDライブラリが有効になっています。
この項目自体がなければGDライブラリが読み込まれていない?

まとめ

Wordpress_画像がフルサイズしかない9今までWordpressを扱っていてアップロードした画像を記事に挿入する際にフルサイズしか存在しないということがなかったので戸惑いました。

レンタルサーバーでは初めからGDライブラリが有効になっているので、XAMPPのように自分でサーバーを立てたときに詰まる内容かと思います。
そもそも共有サーバーではPHPファイル内なんて触れませんし…

■フルサイズの画像が4032×3024から2560×1920に変更されていました。
自動リサイズする処理を担うのもこのGDライブラリのようですね。

-Wordpress

© 2021 ソロ学