InputfieldImage class

One or more image uploads (sortable)

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

Show class?             Show args?        

Common

NameReturnSummary 
adminThumbScale int for backwards compatibility only 
clientQuality int Quality setting to use for client-side resize. 60=60%, 90=90%, etc. (default=90).  
dimensionsByAspectRatio bool int Switch min-/maxWidth and min-/maxHeight restriction for portrait images 
editFieldName string Field name to use for linking to image editor (default=current Inputfield name) 
extensions string Space separated list of allowed image extensions (default="JPG JPEG GIF PNG") 
focusMode string May be 'on', 'off', or 'zoom' 
get(string $key)
array bool mixed string nullGet setting or attribute 
getAdminThumb(Pageimage $img)
arrayGet thumbnail image info 
getConfigInputfields()
InputfieldWrapperConfigure field
gridMode string Default grid mode in admin, one of "grid", "left" or "list" (default="grid") 
gridSize int squared size of the admin thumbnails (default=130) 
imageSizerOptions array Options to pass along to the ImageSizer class. See /wire/config.php $imageSizerOptions for details. 
itemClass string Space separated CSS classes for items rendered by this Inputfield. Generally you should append rather than replace. 
maxHeight int string Max height for uploaded images, larger will be sized down (default='') 
maxReject bool int Reject images that exceed max allowed size? (default=false) 
maxSize float Maximum number of megapixels for client-side resize, i.e. 1.7 is ~1600x1000, alt. to maxWidth/maxHeight (default=0). 
maxWidth int string Max width for uploaded images, larger will be sized down (default='') 
minHeight int string Min height for uploaded images, smaller will be refused (default='') 
minWidth int string Min width for uploaded images, smaller will be refused (default='') 
okExtensions array Array of manually whitelisted extensions, for instance [ 'SVG' ] must be manually whitelisted if allowed. (default=[]) 
processInput(WireInputData $input)
$thisProcess input
render()
stringRender Inputfield
renderItem(Pageimage $pagefile, $id, $n)
string
renderList(Pageimages $value)
string
renderReady()
boolCalled right before Inputfield render 
renderSingleItem(Pageimage $pagefile, $id, $n)
string
renderUpload(Pageimages $value)
string
resizeServer int bool Resize to max width/height at server? 1=Server-only, 0=Use client-side resize when possible (default=0).  
useImageEditor int bool Whether or not the modal image editor is allowed for this field (default=true) 

For hooks

These methods are only useful for hooking and should not be called directly.

NameReturnSummary 
buildTooltipData($pagefile)
arrayBuild data for the tooltip that appears above the thumbnails
fileAdded(Pagefile $pagefile)
(nothing)Resize images to max width/height if specified in field config and image is larger than max
getFileActions(Pageimage $pagefile)
arrayGet array of actions (displayed in select dropdown) available for given Pagefile
getImageEditButtons($pagefile, string $id, int $n, string $buttonClass)
arrayGet array of buttons for image edit mode
getImageThumbnailActions(Pageimage $pagefile, string $id, int $n, string $class)
arrayGet the image thumbnail icon actions/links/buttons
processUnknownFileAction(Pageimage $pagefile, string $action, string $label)
bool nullCalled when a select dropdown action was received that InputfieldImage does not recognize (for hooking purposes)
renderAdditionalFields($pagefile, string $id, int $n)
(nothing)Render any additional fields (for hooks)
renderButtons($pagefile, string $id, int $n)
stringRender buttons for image edit mode

Additional methods and properties

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

API reference based on ProcessWire core version 3.0.244

I just love the easy and intuitive ProcessWire API. ProcessWire rocks!” —Jens Martsch, Web developer