MAMPをPHP8にしたらWordPressでサムネイルが生成されない?

いつの間にかローカルのWordPressで、画像をアップロードしても、サムネイルなどの画像が生成されなくなってしまっていました。
気付いたキッカケはサムネイルサイズに指定した箇所にもかかわらず、Gifアニメが動いていました。
本来なら、トリミングされて静止画になるはずなのに…。

「uploads」フォルダを確認してみると、アップロードされているのは、画像1つのみ。
遡って確認すると、4月の中旬くらいから、この現象が起きていました。
念のため、他のサイトでも試してみましたが、同じ現象です。

uploadsフォルダ

4月の中旬くらいというと、MAMPをアップデートした時期だな、PHP8になってからが怪しい。
ということで、調べてみました。

画像処理をするためのGDライブラリがない!?

サイトヘルス

WordPressのツール「サイトヘルス」の「情報」で確認してみると、「メディア情報」の項目で「GDバージョン」が「利用できません」になっています。

画像処理を行うためのGDライブラリが無くなってしまったため、サムネイルを生成するなどの画像処理が出来なくなってしまったようです。
再び、使えるようにするには「GDライブラリ」をPHPにインストールするしなければならないようです。

何か面倒なことになってきたな…。
PHPの拡張モジュールなんて触ったことないぞ…。

WindowsではGDライブラリの設定が変わったっぽい

WindowsではPHP8から「php_gd2.dll」が「php_gd.dll」に変更になったようです。

MAMPにはちゃんと「GDライブラリ」はインストールされているのですが、今まで「php_gd2.dll」で呼び出していたものを「php_gd.dll」で呼び出さないと「GDライブラリ」が機能しなくなってしまったということらしいです。

Cドライブの「MAMP」→「conf」→「phpのバージョン」→「php.ini」を開いて「gd」で検索してみると、確かに667行目に「extension=php_gd2.dll」の記述がありました。

ただ、これでは動かないので、「2」を消して「extension=php_gd.dll」にすればよいのですが、念のため、ここはそのままにしておいて、最終行に「extension=php_gd.dll」の1行を追記しました。

MAMPを再起動後、WordPressのサイトヘルスで確認すると、「メディア情報」の項目の「GDバージョン」の内容が変わっています。
さらに、「GD対応ファイル形式」という項目が増えているではありませんか。

サイトヘルス

試しに同じGif画像をアップロードして、「uploads」フォルダを確認してみると、他の画像が生成されています。

uploadsフォルダ

コメントを残す

メールアドレスが公開されることはありません。