「e数字」が付くファイル名は回転や反転された後の画像ファイルです。オリジナルの内容が上書きされることはありません。
wp-config.php に
define( ‘IMAGE_EDIT_OVERWRITE', true );
を追加すると、「e数字」の最初のひとつは作られますが2つ以上にはなりません。
(最初のひとつも無くす方法は存じ上げません。)
https://codex.wordpress.org/Editing_wp-config.php#Cleanup_Image_Edits
128×128などのファイル名は、WordPress 本体および有効にしてあるテーマがサポートするサイズの画像が自動的に生成されたものです。
これを無くすと、オリジナルと回転/反転後のどちらに対しても、128×128などのファイルが作られなくなります。無くす方法は例えばテーマの functions.php に下記のコードを追加します。
function my_remove_all_image_sizes() {
return array();
}
add_filter( 'intermediate_image_sizes', 'my_remove_all_image_sizes' );
-
この返信は6年、 5ヶ月前にgblsmが編集しました。
gblsm さま
お返事ありがとうございます。
またヒントをいただきありがとうございます。
ただ
define( ‘IMAGE_EDIT_OVERWRITE', true );
を
if ( !defined('ABSPATH') )
define('ABSPATH', dirname(__FILE__) . '/');
define( 'IMAGE_EDIT_OVERWRITE', true );
/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');
というようにしましたが、なぜか
image.jpg
image-128×128.jpg
image-240×320.jpg
image-768×1024.jpg
image-e0123456789012.jpg
image-e0123456789012-128×128.jpg
image-e0123456789012-210×240.jpg
image-e0123456789012-1024×768.jpg
とファイルができてしまいました。
WordPress はプラグインも外した状態でしたが…。
もう少し奮闘してみますので解決済みまでもうしばらくお待ちください。
追記です。
128×128 、 240×320 、 768×1024 等は
ダッシュボード > 設定 > メディア
で設定されてある分です。
これは
define( ‘IMAGE_EDIT_OVERWRITE', true );
で作成を抑制できるわけではないのでしょうか?
これは
define( ‘IMAGE_EDIT_OVERWRITE’, true );
で作成を抑制できるわけではないのでしょうか?
それを追加するだけでは 128×128 などのファイル名を抑制できません。
128×128 などのファイル名を抑制する方法を最初のコメントの後半に書きました。
https://ja.wordpress.org/support/topic/画像の回転や反転時に追加されるファイルを抑制/#post-226729
gblsm さま
申し訳ありませんでした。
ご指摘の対応をしてみました。
image.jpg
image-e0123456789012.jpg
となりましたが他のサイズのものはなにも作成されませんでした。
ただこれだと
ダッシュボード > 設定 > メディア
でサイズを 0 にすることで作成されなくなります。
image.jpg をアップロードして回転した際に、
image.jpg → △:残しても残さなくてもいい(復元を考慮すると残すべき?)
image-128×128.jpg → ×:残したくない
image-240×320.jpg → ×:残したくない
image-768×1024.jpg → ×:残したくない
image-e0123456789012.jpg → ○:必要(※)
image-e0123456789012-128×128.jpg → ○:必要(※)
image-e0123456789012-210×240.jpg → ○:必要(※)
image-e0123456789012-1024×768.jpg → ○:必要(※)
※ ただしできれば e 以降 13 文字の数字はいらない…。
というのをやろうと思っているのですが難しそうですね。
WordPress コアの wp-admin/includes/image-edit.php をお読みになると、IMAGE_EDIT_OVERWRITE に応じて処理する(image-e数字のファイルを作ったり削除したり)ところが見つかります。そのときオリジナル (image.jpg) を削除しないようにわざわざ条件判定していたり、オリジナルを復元する処理を設けたりしています。なので変更するならここになると思いますが、アクションやフィルターが用意されていないので大変でしょうね。