• いつもプラグインをご活用させていただいております。Plus WebP or AVIF(v5.21)を利用中に再現性のある不具合を発見しましたのでご報告いたします。

    ■ 症状
    ブロックエディタに画像を貼り付けてアップロードすると、メイン画像はWebPに変換されるが、各サムネイルサイズ(thumbnail, medium, medium_large等)はPNG/JPEGのまま変換されない。ファイル名の衝突が一切ない状態でも、ほぼ毎回この症状が発生する。

    ■ 原因(class-pluswebp.php generate_webp内)
    ブロックエディタのクライアントサイドアップロード処理では、wp_generate_attachment_metadataフィルターが1回のアップロードにつき2回発火します。

    1回目:アップロード直後。$metadata[‘sizes’]はまだ空配列。この時点でgenerate_webp()が実行され、メインファイルの変換には成功し、107行目のin_array判定を通過した後、151-157行目でpost_mime_typeが image/webp に更新されます。

    2回目:数秒後、コア側の非同期サブサイズ生成が完了したタイミングで再度発火。この時点でmetadata[‘sizes’]には実際のサムネイルファイル(png等)が入っていますが、107行目の
    $mime_type = get_post_mime_type( $attachment_id );
    if ( in_array( $mime_type, $pluswebp_settings[‘types’] ) ) {
    がDB上の現在のpost_mime_type(既にimage/webpに更新済み)を見てしまうため、この条件がfalseとなり、変換処理ブロック全体(107〜214行目)がスキップされます。結果として、非同期生成されたサムネイルは変換されないまま最終的なメタデータとして確定してしまいます。

    ■ 再現手順

    1. ブロックエディタで画像(png)を新規に貼り付ける
    2. アップロード完了後、記事のsrcsetを確認する
    3. フルサイズ画像はimage.webpになっているが、各サイズ(-150×150等)はpngのまま

    ご確認のほどよろしくお願いいたします。

Viewing 5 replies - 1 through 5 (of 5 total)
  • Plugin Author Katsushi Kawamori

    (@katsushi-kawamori)

    Plus WebP or AVIF の設定>画像やコンテンツの WebP または AVIF 置換を適用>On

    にすると、変換されます。OFFの場合だと、メイン画像も srcset も変換されません。

    ご指摘のような、メイン画像のみ変換されるというのは、自分の環境だと再現できませんでした。

    Thread Starter windorz

    (@windorz)

    ご確認ありがとうございます。

    ご報告した現象は、ファイルではなく、クリップボード経由でエディタに画像を張り付けた場合になります。

    Chromeの場合、クリップボード経由で画像を張りつけるとimage.pngという名前で張り付きますが、メイン画像はimage.webpとなるもののサムネイル画像はimage.pngのサムネイルのままになってしまいます。

    Plugin Author Katsushi Kawamori

    (@katsushi-kawamori)

    コピー&ペースト(クリップボード経由でエディタに画像を張り付けた場合)でも、ドラッグドロップでエディタに張り付けた場合でも、現象を再現できませんでした。問題無く、webp になりました。

    Thread Starter windorz

    (@windorz)

    ご確認ありがとうございます。

    プラグインページのライブプレビューでも再現するのですが、再現しないということで承知いたしました。
    https://wordpress.org/plugins/plus-webp/?preview=1

    Plugin Author Katsushi Kawamori

    (@katsushi-kawamori)

    ライブプレビューのChromeで再現しましたが、ライブプレビューのFirefoxで再現しませんでした。メインの開発がFirefoxなもので気付きませんでした。

    こういうのは面倒なので、これ以上関わりません。

Viewing 5 replies - 1 through 5 (of 5 total)

You must be logged in to reply to this topic.