Bakit Napakalaki ng Uploads Folder ng Iyong WordPress
Malaki ang iyong WordPress uploads folder dahil hindi kailanman nag-iimbak ang WordPress ng isang file kada larawan. Bawat upload ay bumubuo ng isang nakatakdang set ng mga resized na kopya kasabay ng
Nailathala
Malaki ang iyong WordPress uploads folder dahil hindi kailanman nag-iimbak ang WordPress ng isang file kada larawan. Bawat upload ay bumubuo ng isang nakatakdang set ng mga resized na kopya kasabay ng orihinal — pito nito para sa karaniwang laki ng litrato mula sa kamera, bago pa magdagdag ng iba ang anumang theme o plugin. Walang nasira; nakikita mo lang ang pagpaparami na nangyayari sa bawat upload. Ang solusyon ay ihinto ang pagbuo ng mga image size na hindi mo naman ginagamit, tapos i-regenerate para matanggal sa disk ang mga lumang kopya.
Gawin ang aritmetika
Mag-upload ng isang 4000×3000 JPEG at tingnan ang loob ng /wp-content/uploads/2026/07/. Hindi ka makakakita ng isang file lang. Makikita mo ang mga ito:
photo.jpg— ang orihinal, hindi ginalawphoto-scaled.jpg— isang 2560px na kopya na ihinahain ng WordPress sa halip na ang orihinalphoto-150x150.jpg—thumbnailphoto-300x225.jpg—mediumphoto-768x576.jpg—medium_largephoto-1024x768.jpg—largephoto-1536x1152.jpg— ang 2×medium_largephoto-2048x1536.jpg— ang 2×large
Iyon ang orihinal kasama ang pitong derivative, mula sa core lang. Ang isang 3 MB na upload ay maaaring maging 5–6 MB sa disk bago pa tumakbo ang kahit isang plugin. Ngayon dagdagan mo ng isang theme na nagrerehistro ng apat na sarili nitong size at ng WooCommerce (tatlo pa), at ang isang upload ay nagiging labing-apat o labinglimang file. Imultiplika sa isang library na may ilang libong larawan at hindi na misteryo ang laki ng folder.
Kung gusto mo ng eksaktong bilang para sa sarili mong mga dimensyon at nakarehistrong image size, ang image storage calculator ang gagawa ng multiplikasyon para sa iyo.
Bakit ito nangyayari
Kapag nag-upload ka, tinatawag ng wp_generate_attachment_metadata() ang wp_create_image_subsizes(), na nag-lo-loop sa bawat size na ibinabalik ng get_intermediate_image_sizes() at sumusulat ng file para sa bawat isa na kayang buuin ng orihinal dahil sapat itong laki. Nagrerehistro ang core ng thumbnail, medium, medium_large, large, kasama ang 1536x1536 at 2048x2048 na retina sizes na idinagdag sa WP 5.3. Anumang theme o plugin na tumatawag ng add_image_size() ay nagdaragdag sa parehong loop na iyon — permanente, para sa bawat upload sa hinaharap.
Ang -scaled na file ay nagmumula sa isang hiwalay na mekanismo: ang big_image_size_threshold na filter, default na 2560px. Ang anumang mas malapad dito ay nakakakuha ng scaled na kopya na siyang nagiging ihinahaing “full” na larawan, habang nananatili sa disk ang orihinal. Kaya ang isang malaking upload ay nagpapanatili ng parehong higanteng orihinal at ng 2560px na bersyon.
Makikita mo nang eksakto kung ano ang binubuo ng iyong setup para sa isang partikular na larawan sa pamamagitan ng image sizes inspector.
Paano ito ayusin, ayon sa pagkakasunod
1. Sukatin bago mo galawin ang kahit ano. Nag-aaksaya ng oras ang paghula. Mula sa root ng site:
du -sh wp-content/uploads
find wp-content/uploads -type f \( -name '*.jpg' -o -name '*.webp' -o -name '*.png' \) | wc -l
du -ah wp-content/uploads | sort -rh | head -20
2. I-deregister ang mga size na hindi mo ginagamit. Karamihan sa mga theme ay hindi kailanman naglalabas ng 1536 at 2048 na size, at marami ang hindi gumagamit ng medium_large. Alisin mo ang mga ito:
// functions.php — stop generating sizes this site never outputs
add_action( 'init', function () {
remove_image_size( '1536x1536' );
remove_image_size( '2048x2048' );
} );
// Drop medium_large too, if your theme doesn't use the 768px size
add_filter( 'intermediate_image_sizes_advanced', function ( $sizes ) {
unset( $sizes['medium_large'] );
return $sizes;
} );
3. Mag-regenerate para matanggal ang mga lumang kopya. Ang pag-deregister ay pumipigil lamang sa susunod na pagbuo — nananatili ang mga file na nasa disk na hanggang mag-regenerate ka:
wp media regenerate --yes
Ang mga kamakailang bersyon ng WP-CLI ay nagtatanggal ng mga file para sa mga size na hindi na nakarehistro habang tumatakbo ang proseso. Kung gumagamit ka naman ng Regenerate Thumbnails na plugin, i-tsek ang opsyon nitong “delete unregistered sizes” — kung hindi naka-tsek ang kahong iyon, nananatili ang mga lumang file.
4. Hanapin ang mga orphaned na file. Ang paglipat ng theme ay hindi kailanman naglilinis ng mga size na inirehistro ng lumang theme. Ang pagtanggal ng mga post ay hindi rin laging nag-aalis ng kanilang mga derivative. Pagkatapos ng hakbang 3, kung malayo pa rin ang du -sh sa hinuhula ng calculator, may mga orphan ka — mga file sa disk na walang attachment na tumutukoy sa kanila.
Ano ang hindi dapat gawin
Huwag i-disable ang scaled images para “makatipid ng espasyo.” Ang -scaled na file ay mas maliit kaysa sa iyong orihinal. Ang pag-off sa big_image_size_threshold ay walang tinatanggal — ipinapahain lang nito ang buong multi-megabyte na orihinal sa bawat bisita. Iyon ay desisyon tungkol sa bandwidth at kalidad, hindi paglilinis ng storage, at kadalasan pinapalala nito ang bigat ng page. Ipinapaliwanag ng disable-scaled-images tool kung kailan talaga ito ang tamang hakbang; ang pagpapaliit ng iyong uploads folder ay hindi isa doon.
Huwag magtanggal ng mga file nang direkta mula sa uploads sa pamamagitan ng SFTP. Ang listahan ng subsize ng bawat attachment ay nasa _wp_attachment_metadata nito. Ang manu-manong pagtanggal ng mga file ay nag-iiwan ng mga sirang reference, at hindi kayang muling buuin ng regeneration ang isang size kung tinanggal mo ang orihinal na pinagmulan nito. Tanggalin ang orihinal at tuluyan nang mawawala ang larawang iyon.
Huwag i-set sa 0 ang thumbnail/medium/large sa Settings → Media na inaasahang liliit ang folder. Ang pag-zero sa isang size ay pumipigil sa susunod na pagbuo pero walang ginagalaw na nasa disk na, at hindi maaabot ng UI ang medium_large, 1536, 2048, o anumang theme/plugin na size — wala roon ang mga iyon.
Huwag sisihin ang database. Ang isang mabigat na uploads folder ay mga image file, halos hindi kailanman ang DB. Ang pag-optimize ng mga table ay hindi magbabago sa bilang.
Naipit pa rin?
Kung mas malaki pa rin ang folder kaysa inaasahan pagkatapos mag-regenerate, ipasa ang iyong tunay na image dimensions at nakarehistrong size sa storage calculator at ihambing ang tantiya nito sa du -sh wp-content/uploads. Ang malaking agwat ay nangangahulugan ng mga orphaned na file mula sa lumang theme o tinanggal na mga post — hindi core, at hindi isang bagay na maaayos ng dagdag na pag-regenerate. Ang maliit na agwat ay nangangahulugang ganoon lang talaga ang matematika: pito-pataas na file kada upload, gumagana nang eksakto ayon sa disenyo.
FAQ
Mga Tanong
Bakit napakaraming kopya ang nililikha ng WordPress sa bawat larawang ini-upload ko?
Nagbubuo ang WordPress ng nakatakdang set ng mga na-resize na kopya sa bawat upload. Ang isang 4000x3000 na JPEG ay dumarating bilang orihinal kasama ang pitong file mula sa core lamang: -scaled, thumbnail, medium, medium_large, large, at ang dalawang retina size. Magdagdag ka ng theme at WooCommerce at ang isang upload ay nagiging labing-apat o labinlimang file.
Ano ang -scaled na bersyon ng aking larawan sa WordPress?
Ang -scaled na file ay isang 2560px na kopyang inihahain ng WordPress sa halip na ang orihinal mo, nilikha ng big_image_size_threshold filter tuwing mas malapad ang isang upload doon. Nananatili rin sa disk ang hindi nagalaw mong orihinal, kaya nagtatago ng dalawang file ang isang malaking upload.
Paano ko mapipigilan ang WordPress sa paglikha ng mga image size na hindi ko naman ginagamit?
I-deregister ang mga ito sa functions.php gamit ang remove_image_size para sa 1536x1536 at 2048x2048, at i-unset ang medium_large sa pamamagitan ng intermediate_image_sizes_advanced filter. Mga susunod na upload lang ang napipigilan niyon, kaya patakbuhin ang wp media regenerate --yes pagkatapos para burahin ang mga kopyang nasa disk na.
Puwede ko bang burahin ang mga file sa wp-content/uploads sa FTP para makatipid ng espasyo?
Hindi. Nakatira sa _wp_attachment_metadata ng bawat attachment ang listahan ng subsize nito, kaya ang manu-manong pagbura ng mga file ay nag-iiwan ng sirang reperensiya. Hindi mabubuo muli ng regeneration ang isang size kapag tinanggal mo na ang orihinal na pinagmulan nito, at ang pagbura ng orihinal ay tuluyang nagpapawala ng larawang iyon.
Pinapaliit ba ng pagtatakda ng image sizes sa 0 sa Settings Media ang uploads folder?
Hindi. Ang pag-zero sa thumbnail, medium, o large ay pumipigil sa paglikha sa hinaharap pero walang ginagalaw sa nasa disk na. Hindi rin naaabot ng Settings Media screen ang medium_large, 1536, 2048, o anumang size na inirehistro ng isang theme o plugin, kaya nananatili sa mismong kinalalagyan nila ang karamihan sa mga file.