ブログの始め方・WordPress・レンタルサーバー

WordPressにWebPをアップロードできない・サムネイルが表示されないとき

WordPressにWebPをアップロードできない・サムネイルが表示されないとき

WebPをWordPressにアップロードしようとしたらエラーが起こって失敗した。アップロードできたけどサムネイルが表示されない。

これらはWebPをWordPressで使おうとすると確実に起こる問題です。

この記事ではWordPressにWebPをアップロードできない・サムネイルが表示されないときの対処法を紹介します。プラグインを使わない方法です。

WebPをアップロード可能にする

WordPressにWebPをアップロードすると「このファイルタイプはセキュリティ上の理由から、許可されていません」というエラーメッセージが表示されます。

このファイルタイプはセキュリティ上の理由から、許可されていません

WordPressではセキュリティ上の理由からアップロードできるファイルの種類を制限しているのです。

そのためデフォルトの設定ではWebPをアップロードできません。

WebP画像のアップロードを許可

この問題はWordPressのアップロード可能ファイルを定義したリストにWebPを追加すれば解決できます。

下記コードを functions.php に追加してください。

functions.phpの編集方法と注意点

WebP画像のアップロード許可する

//WebPのアップロードを許可
function add_upload_mines($mines) {
  $mines['webp'] = 'image/webp';
  return $mines;
}
add_filter('mime_types', 'add_upload_mines');

これでWebP画像のアップロードが可能になります。

WebP画像のアップロードは可能になりましたが、これだけではサムネイルが表示されません。次にサムネイルを表示する方法を紹介します。

WebPのサムネイルが表示されない

WebPのサムネイルをメディアライブラリに表示する方法です。

サムネイルが表示するには下記コードを functions.php に追加してください。

WebPのサムネイルを表示する

//メディア画面のWebPサムネイルを表示する
function enable_webp_thumbnail ($result, $path) {
  if ($result === true) return $result;
  //ファイルがWebPかどうか判定する
  $info = getimagesize($path);
  if ($info[2] === IMAGETYPE_WEBP) {
    $result = true;
  }
  return $result;
}
add_filter('file_is_displayable_image', 'enable_webp_thumbnail', 10, 2);

アップロードした画像がWebPである場合にサムネイル表示を有効にしています。

コード追加後にアップロードしたWebP画像のサムネイルがメディアライブラリに表示されるようになります。

実際にアプロードして確認してみましょう。

WebPのアップロード

サムネイルがしっかり表示されているはずです。

最後に

プラグイン無しでWordPressにWebPをアップロードする方法・サムネイルを表示する方法を紹介しました。

WebPへ対応はWordPressプラグインを使えば簡単なのですが、WebPへの対応自体は難しいことではなく少しコードを追加するだけで可能です。

細かな調整はプラグインを使わずに行っていきたいですね。

プラグインを増やすことのデメリットはサイトが重くなることではなく、セキュリティ面の不安が増えることだと思うので。