
內容簡介
Squishify 是一款專為優化圖片而設計的 WordPress 外掛,能在上傳前於瀏覽器中壓縮和調整圖片大小,避免原始檔案佔用伺服器空間,提升網站效能。
【主要功能】
• 上傳前在瀏覽器中壓縮圖片
• 自動優化功能,無需額外步驟
• 批次編輯,支持調整格式與品質
• 實時比較編輯前後效果
• 兼容 GIF 和 SVG 格式,不進行轉換
外掛標籤
開發者團隊
📦 歷史版本下載
原文外掛簡介
Prep your images. Nothing gets uploaded.
Every major image plugin optimizes images after they’re uploaded — the full-size originals still travel over the wire, still land on your server, and still eat disk space.
Squishify flips the order. It converts and resizes images in your browser, before they are sent — so the full-size original never reaches your server at all.
Switch it on once and forget it
Turn on auto-optimize, pick an output format and a maximum width, and every image added to your site from then on is handled on the way out: the Media Library, the block editor, anywhere WordPress takes an upload. No editor, no extra step, nothing to remember.
That is the part no other plugin can copy. Every one of them optimizes uploads after the file has landed on your server, because that is the only place they can reach it. Squishify is the only one where even the zero-effort path never uploads your original.
Images it can’t make smaller are uploaded exactly as they are, and GIFs and SVGs are never converted. Auto-optimize is free — it is not a Pro feature.
Or open the editor and work a batch by hand
Drag a batch of images into the Squishify editor, right inside wp-admin. Resize, crop, rename, and tune format and quality with a live before/after comparison — then nothing touches your site until you click Upload. Only the finished, optimized files reach your Media Library.
Work on the whole batch at once
Two views, one queue — a Grid / Preview switch sits in the header all session. Grid shows every image you queued at a glance; Preview works through them one at a time with the full before/after comparison
Batch settings apply to every image in one move — format, quality and effort, a max width, a crop ratio, and a numbered rename sequence
Jump straight to an image — click any tile in the grid to open it on its own, then switch back whenever you like
Batch settings stick — add more images later and they inherit the size, crop and rename sequence you already chose
Resize, crop and rename
Resize images individually or all at once, to the exact size you need
Crop to a fixed ratio (1:1, 4:3, 16:9) or to exact output dimensions — one image, or the same shape across the whole batch
Batch crop by ratio — every image gets the largest centred window at the ratio you pick, shown right in the thumbnails
Rotate and flip — turn left, turn right, flip horizontal or vertical, one image at a time — beside the zoom buttons in the editor and on each tile when you hover it in Grid
Batch rename three ways — rename one image, number a whole sequence, or type a name for every image in one pass
Numbered sequences with or without a prefix (gallery-01… or just 1, 2, 3), zero-padded so 12 images sort correctly instead of running 1, 10, 11, 12, 2
Real encoders, running on your own machine
libavif (AVIF), libwebp (WebP), MozJPEG, and Oxipng (PNG) — the same encoders behind Squoosh, compiled to WebAssembly and running in your browser
Per-image format, quality and effort controls, with a live before/after comparison loupe
No cloud API, no credits, no quotas, no account — there is no server to send anything to
Your images never leave your device until you choose to upload the finished files to your own site
Getting images in
Drag and drop a batch, or a whole folder — everything inside it gets queued at once, up to 50 images per batch
Paste from your clipboard — press Ctrl/Cmd+V to drop a screenshot straight into the queue, no saving to disk first
SVG files rasterize at a proper working size instead of their (often tiny) declared dimensions
HEIC photos straight from your iPhone — they open as sources with no converting first, in every browser, including the ones that can’t read HEIC themselves
TIFF files from scanners, print workflows and Photoshop exports open the same way
Upload straight to the Media Library when you’re ready
No duplicate -scaled files on your server
Images are capped at 2560px on the longest edge before encoding — the same threshold WordPress core itself uses (big_image_size_threshold). Because the file you upload is already at or under that size, WordPress never generates its own separate -scaled copy: what you see in the editor is what ends up in your Media Library. One file, no server-side duplicate.
Credits
Squishify bundles the following third-party code. All .wasm and compiled
JavaScript files are unmodified upstream builds, taken from the published
packages at the versions listed; each row links to the human-readable source
they were built from.
Image encoders (output), via jSquash (Apache-2.0, https://github.com/jamsinclair/jSquash):
@jsquash/avif 2.1.1 — wraps libavif (BSD-2-Clause), https://github.com/AOMediaCodec/libavif
@jsquash/webp 1.5.0 — wraps libwebp (BSD-3-Clause), https://github.com/webmproject/libwebp
@jsquash/jpeg 1.6.0 — wraps MozJPEG (BSD-3-Clause), https://github.com/mozilla/mozjpeg
@jsquash/oxipng 2.3.0 — wraps Oxipng (MIT), https://github.com/shssoichiro/oxipng
@jsquash/resize 2.1.1 — https://github.com/jamsinclair/jSquash
Source-format decoders (input), so HEIC and TIFF files can be opened in
browsers that cannot read them natively:
libheif-js 1.23.2 (LGPL-3.0) — https://github.com/catdad-experiments/libheif-js
An Emscripten build of libheif (LGPL-3.0, https://github.com/strukturag/libheif),
which contains the libde265 HEVC decoder (LGPL-3.0,
https://github.com/strukturag/libde265).
UTIF 4.1.0 (MIT) — https://github.com/photopea/UTIF.js
pako 1.0.11 (MIT AND Zlib) — https://github.com/nodeca/pako
Other libraries:
pica 10.0.2 (MIT) — https://github.com/nodeca/pica
Licensing note
This plugin is licensed GPLv3 or later. It was GPLv2 or later until version
1.13.0, when the HEIC decoder above was added: libheif is LGPL-3.0, which
cannot be combined with GPLv2, and the “or later” clause permits moving to
GPLv3. The full GPL-3.0 and LGPL-3.0 texts ship in the plugin’s licenses/
folder.
libheif is loaded as its own separate file (assets/chunks/libheif-bundle-*.js),
dynamically imported at runtime rather than linked into Squishify’s own code,
and it is used unmodified. A user may substitute their own build of libheif
by replacing that file.
