説明
多くの WebP プラグインは元の JPEG/PNG を残したまま条件付きで WebP を配信するため、すべての画像を 2 重に持ち続けることになります。Tanupom In-Place Converter for WebP はその逆のミニマルな方式で、元ファイルをその場で WebP に置き換え、ライブラリ全体を WebP ファイル 1 セットにします。リライトルールも .htaccess の小細工も、二重のストレージも不要です。
変換にはサーバーの Imagick (ImageMagick) を使うため、重い処理はサーバー側に任せて、プラグイン本体は小さく保たれています。
主な機能
- アップロード時の自動変換。新規アップロードされた JPEG・PNG・BMP・HEIC・HEIF は、
wp_handle_uploadフィルターでアップロード時に WebP へ変換し、元ファイルをその場で置き換えます。サーバーが WebP を出力できない場合 (または HEIC/HEIF のデリゲートが無い場合) は、無変換でそのまま通します。 - 棚卸しスキャン (非破壊)。何かを変更する前に、投稿本文・投稿メタ・オプションのどこで画像 URL が使われているかを一覧化し、変換の影響範囲を事前に把握できます。
- WebP 一括変換。既存のすべての JPEG・PNG 添付ファイルを、オリジナルと生成済みサブサイズも含めて WebP に変換し、古いファイルを削除します。AJAX の小さなバッチで実行するため共有サーバーの実行時間制限にも耐え、進捗もリアルタイムに表示します。
- 参照差し替え。変換後、投稿本文とオプション内の古い画像 URL を新しい
.webpURL に書き換えます。シリアライズされたオプション (ウィジェット、テーマ設定) はシリアライズを壊さない方式で置換するため、データは破損しません。
変換設定
- JPEG は非可逆 WebP にエンコードします。品質は設定で変更できます (既定 80)。
- PNG はアルファ (透過) を保持したままロスレス WebP にエンコードし、ロゴや文字の縁のにじみを防ぎます。
- EXIF の回転情報は変換前にピクセルへ焼き込みます (スマートフォンの写真が横倒しになりません)。
- EXIF メタデータは除去します (ファイルが小さくなり、GPS 位置情報の漏えいも防げます)。
この 3 つはいずれもプラグインの設定から変更できます。
WordPress 7.1 and client-side media processing
WordPress 7.1 moves image resizing and sub-size generation into the browser. This plugin works with it: the uploaded original still passes through the wp_handle_upload filter and is converted to WebP as before, and the browser then generates every sub-size in that same WebP format.
This also unlocks HEIC/HEIF on servers whose Imagick build has no HEIC delegate. On 7.1 the browser decodes the HEIC itself, using the operating system’s decoder, so the image reaches the server in a format Imagick can read. An iPhone photo then ends up as WebP rather than JPEG. Browser-side decoding depends on the platform doing the upload: Windows and macOS can do it, Linux currently cannot.
WordPress itself does not convert formats. Without this plugin a JPEG upload stays a JPEG, and a HEIC upload becomes a JPEG, on 7.1 just as on earlier versions.
重要: 変換はその場で行われ、元に戻せません
本プラグインは、アップロード時も一括変換時も、元画像を置き換えて削除します。自動で元に戻す機能はありません。一括変換を実行する前に、メディアライブラリ (とデータベース) をバックアップしてください。
必要要件
- WebP 対応でビルドされた Imagick PHP 拡張が必要です。サーバーが WebP を出力できない場合は、それを検出して変換を無効化し、通知を表示します。
スクリーンショット


インストール
tanupom-in-place-converter-for-webpフォルダーを/wp-content/plugins/にアップロードするか、プラグイン画面からインストールします。- WordPress の「プラグイン」画面でプラグインを有効化します。
- 「ツール In-Place WebP」を開きます。
- 先にメディアライブラリとデータベースをバックアップしてください。
- (任意) 「棚卸し」を実行して、画像 URL の参照箇所を確認します。
- 「一括変換を開始」をクリックして、完了まで実行します。
- 「参照差し替えを実行」をクリックして、コンテンツを新しい WebP の URL に更新します。
FAQ
-
元の JPEG/PNG ファイルは残りますか?
-
いいえ。本プラグインは意図的に「その場 (in place)」で変換する設計です。元ファイルを WebP に変換して古いファイルを削除し、ライブラリを 1 セットのファイルに保ちます。実行前に必ずバックアップを取ってください。
-
変換を元に戻せますか?
-
プラグインからは元に戻せません。元のファイルが必要な場合はバックアップから復元してください。変換前のバックアップが必須なのはこのためです。
-
サーバーの Imagick が WebP を出力できない状態です。ホスティング事業者に ImageMagick/Imagick の WebP 対応を依頼するか、対応済みのサーバーをご利用ください。
-
アップロード時に自動で変換されますか?
-
はい、0.2.0 から対応しています。新規アップロードされた JPEG・PNG・BMP・HEIC・HEIF は
wp_handle_uploadフィルターを通じて WebP としてディスクに書き込まれ、元ファイルを置き換えます。変換設定 (品質、PNG のロスレス、メタデータ除去) も共通です。サーバーの Imagick が WebP を出力できない場合や、HEIC/HEIF のデリゲートが無い場合は、アップロードは無変換でそのまま通すため、何かが壊れることはありません。
-
投稿内の画像 URL は壊れませんか?
-
変換後に「参照差し替えを実行」を実行してください。投稿本文とオプション内の古い画像 URL を新しい
.webpURL に書き換えます。シリアライズされたオプションも、シリアライズを壊さない方式で置換します。 -
HEIC・GIF・BMP や、すでに WebP のファイルはどうなりますか?
-
2 つの変換経路で対応形式が異なります。
- Automatic conversion on upload accepts JPEG, PNG, BMP, HEIC, and HEIF. BMP/HEIC/HEIF actually convert only when your server’s Imagick has the corresponding delegate; otherwise the upload is passed through unchanged. On WordPress 7.1 this no longer applies to HEIC/HEIF: the browser decodes them before they reach the server, so they convert even without a HEIC delegate.
- 既存ライブラリの一括変換は JPEG と PNG のみが対象です。
GIF (多くはアニメーション) と既存の WebP ファイルは常にそのまま残します。その他の MIME タイプは対象外です。
評価
このプラグインにはレビューがありません。
貢献者と開発者
変更履歴
0.3.1
- Verified against WordPress 7.1 and its client-side media processing. No code changes were required: uploads still pass through the
wp_handle_uploadfilter, and sub-sizes generated in the browser inherit the converted WebP format. - Documented the 7.1 behaviour, including HEIC/HEIF uploads now converting on servers whose Imagick has no HEIC delegate.
- Removed the bundled Japanese translation files. Translations are delivered as language packs from translate.wordpress.org. The bundled copies were never loaded, because the plugin declares no
Domain Pathand no longer callsload_plugin_textdomain().
0.3.0
- プラグイン名を「Tanupom In-Place Converter for WebP」に変更。内部プレフィックス、オプション名、
tanupom_ipc_replace_post_typesフィルターもあわせて改名。 - 翻訳が自動で読み込まれるようになり、明示的な
load_plugin_textdomain()呼び出しを削除。
0.2.0
wp_handle_uploadフィルターによる新規アップロード (JPEG、PNG、BMP、HEIC、HEIF) の自動 WebP 変換を追加。サーバーが WebP を出力できない場合は安全に素通しします。- 「参照差し替え」設定セクションを追加。URL 置換時に
post_contentをスキャンする公開カスタム投稿タイプを追加選択できます。 - 開発者がスキャン対象の投稿タイプをコードから上書きできる
tanupom_ipc_replace_post_typesフィルターを追加。 - 日本語翻訳 (.po / .mo) を追加。
- 内部整理: コードのドキュメントと一貫性を改善。
0.1.0
- 初回リリース。
- 本文・メタ・オプションを横断した、画像 URL 使用箇所の棚卸しスキャン。
- 既存の JPEG/PNG 添付ファイルとサブサイズの、その場での WebP 一括変換。
- 投稿本文とオプションの、シリアライズを壊さない参照差し替え。
- 変換設定を調整可能に (WebP 品質、PNG ロスレス、メタデータ除去)。
