Pageimage class

Represents an image item attached to a page, typically via an Image Fieldtype.

Pageimage objects are usually contained by a Pageimages object, which is a type of Pagefiles and WireArray. In addition to the methods and properties below, you'll also want to look at Pagefile which this class inherits several important methods and properties from.

// Example of outputting a thumbnail gallery of Pageimage objects
foreach($page->images as $image) {
  // $image and $thumb are both Pageimage objects
  $thumb = $image->size(200, 200);
  echo "<a href='$image->url'>";
  echo "<img src='$thumb->url' alt='$image->description' />";
  echo "</a>";
}

Click any linked item for full usage details and examples. Hookable methods are indicated with the icon. In addition to those shown below, the Pageimage class also inherits all the methods and properties of: Pagefile, WireData and Wire.

Show class?             Show args?        

Common

NameReturnSummary 
Pageimage::__construct($pagefiles, string $filename)
(nothing)Construct a new Pageimage 
Pageimage::alt string Convenient alias for the 'description' property, unless overridden (since 3.0.125). 
Pageimage::basename string Returns the filename without the path. 
Pageimage::description string Value of the file’s description field (string), if enabled. Note you can also set this property directly. 
Pageimage::ext string File’s extension (i.e. last 3 or so characters) 
Pageimage::filename()
stringReturns the full disk path to the image file
Can also be used as property: Pageimage::filename
 
Pageimage::filesize int File size (number of bytes). 
Pageimage::filesizeStr string File size as a formatted string, i.e. “123 Kb”. 
Pageimage::focusStr string Readable string containing focus information. 
Pageimage::hasFocus bool Does this image have custom focus settings? (i.e. $focus['default'] == true) 
Pageimage::hash string Get a unique hash (for the page) representing this Pagefile. 
Pageimage::height()
int PageimageReturn the height of this image OR return an image sized with a given height (and proportional width).
Can also be used as property: Pageimage::height
 
Pageimage::httpUrl string URL to the file on the server including scheme and hostname. 
Pageimage::name string Returns the filename without the path, same as the "basename" property. 
Pageimage::render()
stringRender markup for this image (optionally using a provided markup template string and/or image size options)
Pageimage::size(int $width, int $height)
PageimageReturn an image (Pageimage) sized/cropped to the specified dimensions. 
Pageimage::src string Convenient alias for the 'url' property, unless overridden (since 3.0.125). 
Pageimage::suffixStr string String of file suffix(es) separated by comma. 
Pageimage::url()
stringReturn the web accessible URL to this image file
Can also be used as property: Pageimage::url
 
Pageimage::width()
int PageimageReturn the width of this image OR return an image sized with a given width (and proportional height).
Can also be used as property: Pageimage::width
 

Resize and crop

NameReturnSummary 
Pageimage::crop(int $x, int $y, int $width, int $height)
PageimageCreate a crop and return it as a new Pageimage.
Pageimage::error string Last image resizing error message, when applicable.  
Pageimage::height()
int PageimageReturn the height of this image OR return an image sized with a given height (and proportional width).
Can also be used as property: Pageimage::height
 
Pageimage::maxHeight(int $n)
PageimageReturn an image no larger than the given height. 
Pageimage::maxSize(int $width, int $height)
PageimageReturn an image no larger than the given width and height 
Pageimage::maxWidth(int $n)
PageimageReturn an image no larger than the given width. 
Pageimage::size(int $width, int $height)
PageimageReturn an image (Pageimage) sized/cropped to the specified dimensions. 
Pageimage::width()
int PageimageReturn the width of this image OR return an image sized with a given width (and proportional height).
Can also be used as property: Pageimage::width
 

Variations

A variation refers to an image that is based upon another (like a resized or cropped version for example).

NameReturnSummary 
Pageimage::getOriginal()
Pageimage nullIf this image is a variation, return the original, otherwise return null. 
Pageimage::getVariations()
Pageimages arrayGet all size variations of this image 
Pageimage::isVariation(string $basename)
bool string arrayGiven a file name (basename), return array of info if this is a variation for this instance’s file, or false if not.
Pageimage::original Pageimage Reference to original $image, if this is a resized version.  
Pageimage::rebuildVariations()
arrayRebuilds variations of this image
Pageimage::removeVariations()
this arrayDelete all the alternate sizes associated with this Pageimage 
Pageimage::setOriginal(Pageimage $image)
$thisIdentify this Pageimage as a variation, by setting the Pageimage it was resized from. 

Other

NameReturnSummary 
Pageimage::HTTPURL string Same as the cache-busting uppercase “URL” property, but includes scheme and hostname.  
Pageimage::URL string Same as $url property but with browser cache busting query string appended.  
Pageimage::field Field The Field object that this file is part of.  
Pageimage::focus()
array bool PageimageGet or set focus area for crops to use
Can also be used as property: Pageimage::focus
 
Pageimage::page Page The Page object that this file is part of.  
Pageimage::pagefiles Pagefiles The Pagefiles WireArray that contains this file.  
Pageimage::sort int Sort order in database.  
Pageimage::suffix()
array boolReturns array of suffixes for this file, or true/false if this file has the given suffix.
Can also be used as property: Pageimage::suffix
 

Tags

NameReturnSummary 
Pageimage::tags string Value of the file’s tags field (string), if enabled.  
Pageimage::tagsArray array Get file tags as an array.  

Date time

NameReturnSummary 
Pageimage::created int Unix timestamp of when file was created.  
Pageimage::createdStr string Readable date/time string of when Pagefile was created  
Pageimage::modified int Unix timestamp of when Pagefile (file, description or tags) was last modified.  
Pageimage::modifiedStr string Readable date/time string of when Pagefile was last modified.  
Pageimage::mtime int Unix timestamp of when file (only) was last modified.  
Pageimage::mtimeStr string Readable date/time string when file (only) was last modified.  

Additional methods and properties

In addition to the methods and properties above, Pageimage also inherits the methods and properties of these classes:

API reference based on ProcessWire core version 3.0.130

Twitter updates

  • New post: ProcessWire 3.0.131 adds support for partial/resumable downloads and http stream delivery, and contains several updates to our comments system, among other updates— More
    3 May 2019
  • New post: Quietly and without interruption this week, the ProcessWire.com website (and all subdomains) moved from a single static server to a load-balanced multi-server environment, giving us even more horsepower and redundancy than before— More
    19 April 2019
  • New post: With ProcessWire 3.0.130, this week we’ll take a detailed look at a few useful new API additions made in the last few weeks, along with examples of each—More
    12 April 2019

Latest news

  • ProcessWire Weekly #262
    The 262nd issue of ProcessWire Weekly will cover the latest module updates, both Pro modules and non-commercial ones. We've also got some highlights from the support forum, and a beautiful new site of the week. Read on!
    Weekly.pw / 18 May 2019
  • Lots of module updates
    In this post we take a quick look at the new version of ProFields Repeater Matrix, yet another new version of FormBuilder, and a new version of the GoogleClientAPI module.
    Blog / 17 May 2019
  • Subscribe to weekly ProcessWire news

“Yesterday I sent the client a short documentation for their ProcessWire-powered website. Today all features already used with no questions. #cmsdoneright—Marc Hinse, Web designer/developer