
WordPress を使用した安全なサイトを運営していると、特に記事の画像が多い場合、uploads フォルダ内に多くのサムネイル画像が生成されます。
これらのサムネイル画像はサイトにとって不要なため、サイトインストール直後にサムネイル生成を禁止、この問題に悩まされることはありません。
以下では、その方法を説明します。WordPressのサムネイルファイルを一括削除する方法。
注意:画像を削除する前に必ずバックアップを取ってください。誤削除を防ぐためです。
プラグインを使用して一括削除
WordPressのプラグインシステムは豊富ですが、サムネイルの一括削除に関するプラグインは多くありません。Naibaは市場で見つけられるものをすべてテストし、最終的に以下の3つに絞りました。
DNUI
DNUIこのプラグインは、オンラインで検索される資料で最も多く紹介されているWordPressのサムネイルを一括削除するプラグインです。しかし、実際のテストでは、Naiba サイト構築ノートDNUI の使用感は良くなく、現在の最新月の画像しかスキャンできず、テストサイトでは2017年や2018年のサムネイルをスキャンできませんでした。
ただし、スキャン済みのファイルは一括削除可能です。
Image Cleanup
Image CleanupこのWPプラグインは、テスト時に上部にエラー警告が表示されましたが、機能には影響しませんでした。Image Cleanupは、Naibaサイト構築ノートがWPサムネイルの一括削除をテストした際にすべてのサムネイル画像を完全にスキャンできた唯一のプラグイン。
プラグインで削除したい場合、こちらがおすすめです。
Media Cleaner
Media Cleanerはテストしたプラグインの中で最も新しいもので、WordPressとの互換性に問題はありませんでしたが、テストでは以前のフォルダの画像コンテンツをスキャンできないことが判明しました。
Force Regenerate Thumbnails
このプラグインは、サムネイルを強制的に再生成し、すべての古い画像サイズを削除して、画像添付ファイルのサムネイルを実際に再生成します。
特記事項:
上記のプラグインが以前の画像ファイルをスキャンできない理由は、Naibaのテストサイト上の以前の画像がデータベースに書き込まれていないため(サイト構築後にデータベースをリセットした)と推測されます。そのため、プラグインはデータベースに記録があり、記事で参照されていないファイルのみをスキャンしました。
手動で一括削除
手動での一括削除はより確実な方法で、FTP削除とSSHコマンドによる一括削除に分けられます。この方法で使用するソフトウェア:#サイト構築# 無料のVPS管理ソフトウェアXshell6/Xftp6中国語版
FTPソフトウェアを使用して削除
FTP ソフト(例:xftp)でサーバーに接続し、画像フォルダに移動して、末尾が„-数字x数字“の画像を一括選択し、右クリックで削除します。
この方法は時間と労力がかかるため、推奨度は低いです。
sshコマンドを使用して一括削除
この方法が最も迅速ですが、記事に挿入した画像がサムネイルで原図でない場合は使用しないでください。
この方法は以下の場合にのみ適しています。LinuxのVPSサーバーにのみ適しています。仮想ホストの場合は操作できません。
xshellを使用してサーバーに接続し、uploadsフォルダに移動して以下のコマンドを実行します:
find . -name '*-[0-9][0-9]x[0-9][0-9]*' 和 find . -name '*-[0-9][0-9][0-9]x[0-9][0-9][0-9]*'
上記2つのコマンドは、ファイル名に„-数字数字x数字数字“および„-数字数字数字x数字数字数字“を含むファイルを検索します。
WordPress のサムネイル命名形式はこの形式で、例えば上図の -75×75.jpg や -300×193.png です。
検索後、これらのファイルが削除可能と判断したら、以下のコマンドで削除します。
find . -name '*-[0-9][0-9]x[0-9][0-9]*' -exec rm -f {} \;
和
find . -name '*-[0-9][0-9][0-9]x[0-9][0-9][0-9]*' -exec rm -f {} \;ネットで見つけた別のコマンド
オプションを利用可能-regexを使用して正規表現を利用できます:
find . -regex '\./[0-9]+_[0-9]+\.zip'見つかったファイルを削除する必要がある場合は、xargs(削除前に確認してください):
find . -regex '\./[0-9]+_[0-9]+\.zip'|xargs rm -f削除だけでなく、削除された数を取得したい場合は、次のようにします:
find . -regex '\./[0-9]+_[0-9]+\.zip'|tee >(wc -l 1>&2)|xargs rm -f
以上、紹介した方法で、WordPressのサムネイル画像を一括削除することができます。最後に再度注意しますが、操作前にバックアップを取り、有用なファイルを削除しないように注意してください。



