Skip to content

Image transformation query parameters

Many of the same filter parameters as Site Accelerator (previously Photon) can be applied to images loaded from a VIP Platform site’s wp-content/uploads/. Filter parameters can be applied on demand for resizing, cropping, and processing successive transformation functions for an image. This eliminates the need to process those effects on all source images in advance.

For example, the width (w=) or height (h=) parameters can be appended to an image’s source URL to dynamically resize the image at the time it is requested.

This image transformation method also allows a theme or plugin to load a modified image from the site’s wp-content/uploads/ directory.

Examples

To observe the effect of a query parameter by applying it to an example image, select one of the buttons labeled with a query argument (e.g. w=300) provided below.

Also included below the row of buttons is an example of the query parameter format when it is appended to an image URL.

homepage-video2.webp?w=500

Multiple parameters can be applied to a single image URL. Each parameter is applied to the image in the order in which it is appended to the URL. If the same argument is appended more than once, only the value of the last appended version of the argument will be applied to the image.

2-Content-Management.png?fit=500,500&w=400

Reference

This reference includes all available image transformation query arguments and a description for their usage. To toggle the application of a query parameter to the example image, select a button labeled with the query argument (e.g. w=300). An example of the query parameter format when appended to an image URL is displayed below the toggle buttons.

These query parameters are also compatible for images hosted on WordPress.com.

w=x,h=x

Set the width and/or height of an image in pixels.

If both w and h are present, the smaller axis will be used. These can also be combined into a central crop by adding crop=1.

VIPhoton_DSC01205.jpg?w=400

crop=x,y,w,h

Crop an image by percentages x-offset, y-offset, width, height (x, y, w, h). Percentages are used so that cropping does not need to be recalculated when transforming the image with other methods such as resizing.

For example, crop=12,25,50,50 takes a 50% by 50% rectangle from the source image starting at 12% offset from the left and 25% offset from the top.

Pixel (px) values are also available, as is mixing percent and pixel types in one crop.

VIPhoton_4-MCM_0830-1600×1064-1.jpg?crop=12,25,50,50

resize=x,y

Resize and crop an image to the exact width,height pixel dimensions. Set the first number as close to the target size as possible and then crop the rest. The direction in which it is resized and cropped depends on the aspect ratios of the original image and the target size. This works similarly to combining w, h and crop.

This is useful for taking an image of any size and making it fit into a certain location while losing as little of the image as possible.

VIPhoton_9-DSC01406-1600×1066-1.jpg?resize=500,300

fit=x,y

Fit an image to a containing box of width, height dimensions. Image aspect ratio is maintained.

For example, fit=100,100 on a landscape image with dimensions 400×300 will result in an image that is 100×75, while fit=100,100 on a portrait image with dimensions 300×400 will result in an image that is 75×100.

VIPhoton_MCM_4049.jpg?fit=500,300

lb=x,y

Add black letterboxing effect to images, by scaling the canvas to width, height while maintaining the image aspect ratio and filling the rest with black.

VIPhoton_letterboxing-example.jpg?lb=500,400

ulb=true

Remove black letterboxing effect from images with ulb. This function takes only one argument, true.

VIPhoton_black-letterboxing-example.jpg?ulb=true

filter=type

The filter parameter is used to apply one of multiple filters. Valid values are: negate, grayscale, sepia, edgedetect, emboss, blurgaussian, blurselective, meanremoval.

VIPhoton_MCM_5875-1600×1064-1.jpg?filter=sepia

brightness=range

Adjust the brightness of an image. Valid values are -255 through 255 where -255 is black and 255 is white. Higher is brighter. The default is0.

VIPhoton_MCM_9517-1600×1065-1.jpg?brightness=50

contrast=range

Adjust the contrast contrast of an image. Valid values are -100 through 100. The default is 0.

MCM_9517-1600×1065.jpg?contrast=50

colorize=r,g,b

Add color hues to an image with colorize by passing a comma separated list of red, green, and blue (RGB). For example, values such as 255,0,0 (red), 0,255,0 (green), 0,0,255 (blue).

VIPhoton_IMG_3775.jpeg?colorize=100,0,100

smooth=1

The smooth parameter can be used to smooth out the image.

According to the PHP manual, the function applies a 9-cell convolution matrix where the center pixel is weighted by the value of the first argument, and all surrounding pixels have a weight of 1. The result is normalized by dividing by the total weight. In simpler terms, a value of 0 results in maximum smoothing, while higher values reduce the smoothing effect. Values around 2048 or more have little to no visible impact.

VIPhoton_MCM_9230-1600×1064-1.jpg?smooth=1

zoom=1|1.5|2

Use zoom to size images for high pixel ratio devices and browsers when zoomed. Not available to use with crop. Zoom is intended for use by scripts such as devicepx.js which automatically set the zoom level. Valid zoom levels are 1, 1.5, 210.

VIPhoton_MCM_4246-1600×1064-1.jpg?zoom=2

quality=10-100

Use this parameter to manage the quality output of the images. Valid settings are between the values 10 and 100. The degree of compression depends on the image, its lossy or lossless nature, and the requesting web browser’s capabilities.

VIPhoton_8084136238_169f1ca1f0_o.jpg?quality=80

For lossless images, providing the quality input less than 100 will result in a lossy image provided the requested browser supports this image type. Below is an example that shows conversion of a non-transparent PNG (lossless) image to a JPEG (or lossy WebP if browser supports it) when quality is specified.

VIPhoton_image-1.png?quality=100

strip=all|info|color

Use the strip functionality to modify how metadata is preserved. If the strip parameter is not applied to an image served by the VIP File System, all EXIF, IPTC and XMP metadata is preserved.

Valid settings for this parameter:

  • all: (default) All data is stripped, with any existing orientation data being first applied to the image.
  • info: All non-essential EXIF metadata is stripped; color metadata is preserved..
  • color: Only EXIF color data is stripped.

If the strip query parameter is applied to an image served by Site Accelerator (loaded from the i0.wp.com domain instead of a site’s domain) only the setting values all and none are valid.

VIPhoton_13-MCM_0885.jpg?strip=all

Last updated: March 19, 2026

Relevant to

  • Node.js
  • WordPress