8wired

とりあえずやってみるブログ

WordPressのアップロード画像の画質を向上させる

2016/06/14

P1010825

 WordPressに画像をアップロードすると、自動的にサムネイル、中サイズなどの縮小画像が作成されますが、お世辞にも綺麗な画像とは言えないので改善してみました。

 画像変換に利用するライブラリをGDからImageMagickに変更することで、画質をかなり改善することができますが、残念なことに、このサイトを運用しているサーバには、ImageMagickが導入されていないので、今回は縮小画像を作成するときの圧縮率を下げる(画質を上げる)方法で改善することにしました。

 WordPressで縮小画像を作成するときの圧縮率は、wp-includes/deprecated.phpファイルのimage_resizeという関数で指定されています。

1
 function image_resize( $file, $max_w, $max_h, $crop = false, $suffix = null, $dest_path = null, $jpeg_quality = 90 ) {

 圧縮率は、デフォルトでは90%になっています。この数値を修正すれば画質を変更することができますが、WordPressのアップデートで上書きされるたびに修正する必要が発生してしまうので、利用しているテーマファイルのfunction.phpの最後にfilterを追加します。

1
 add_filter( 'jpeg_quality', function( $arg ){ return 100; } );

 圧縮率を下げる(画質を上げる)と作成される画像サイズは大きくなりディスクスペースを消費してしまうので、単純に画質だけでなくディスクスペースとも相談しながら調整する必要があります。

-WordPress