この記事では、WordPressの速度を測定するツールのPageSpeedInsightで次世代フォーマットでの画像配信と表示された場合に、webpファイルに一括して変換するスクリプトを作成したのでご利用ください。
- sample.png, sample.jpgからsample.png.webp, sample.jpg.webpを作成します(元ファイルは消えません。また、すでにwebpのファイルがあるものは変換しません)
[box02 title="この記事のINDEX"]
[/box02]
webpに一括して変換するスクリプト
1.スクリプト詳細
まず、cwebpをインストールします。
cwebpインストールの手順はこちらの記事を参照にしてください
以下のようなスクリプトを作成しました、若干手抜きで作りましたが、、wordpressの画像ファイルが格納されているフォルダの一番上に拡張子(.sh)のスクリプトファイルを作成して、この通りに記載して保存してください。
- do.sh(画像ファイルが格納されているフォルダの一番上に置く、(uploadsフォルダ))
#!/bin/sh path=`pwd` webp_file=`find $path -name *webp | sed -e "s/.webp\$//"` png_file=`find $path -name *png -o -name *jpg -o -name *jpeg` for i in $png_file do a=0 for j in $webp_file do if [ $i = $j ]; then a=1 fi done if [ $a = 0 ]; then ~/libwebp/bin/cwebp -q 90 $i -o $i.webp # cwebbのパスを記載 fi done
実行します。実行するには権限をつけます。権限は
chmod 755 ファイル名
などでつけてください
あとは、スクリプトを実行するだけです。実行は、ファイルへのパス/ファイル名.shだけです。
ファイルが多いとちょっと時間がかかるかもしれませんが、jpg,png,jpegのファイルの.webp版が作成されているかと思います。
webpをどのようにwordpressで読み込むかは別のサイトをご参照ください。
(後日記載したいと思います)