$fields API variable / Fields class

Manages all custom fields in ProcessWire, independently of any Fieldgroup.

Each field returned is an object of type Field. The $fields API variable is iterable:

foreach($fields as $field) {
  echo "<p>Name: $field->name, Type: $field->type, Label: $field->label</p>";
}

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

Show $var?             Show args?        

Common

NameReturnSummary 
$fields->clone($item)
bool SaveableCreate and return a cloned copy of the given Field
$fields->delete($item)
boolDelete a Field from the database
$fields->findByTag(string $tag)
arrayReturn all fields that have the given $tag 
$fields->findByType($type)
array FieldFind fields by type 
$fields->get($key)
Field nullGet a field by name or id
$fields->getAllNames()
arrayGet all field names 
$fields->getNumPages(Field $field)
int arrayReturn a count of pages containing populated values for the given field 
$fields->getNumRows(Field $field)
int arrayReturn a count of database rows populated the given field 
$fields->getWireArray()
WireArrayGet WireArray container that items are stored in 
$fields->isNative(string $name)
boolIs the given field name native/permanent to the database? 
$fields->makeItem()
Saveable WireMake an item and populate with given data 
$fields->save($item)
boolSave a Field to the database

Additional methods and properties

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

API reference based on ProcessWire core version 3.0.200

Twitter updates

  • New TinyMCE 6.2.0 Inputfield released for ProcessWire— More
    28 October 2022
  • This week we take a look at a new rich text editor for ProcessWire, why we chose it, some highlights, screenshots, and why we think you’ll like it— More
    21 October 2022
  • This week we have ProcessWire 3.0.206 on the dev branch and a new version of the ProDevTools UserActivity module, which we'll take a closer look at in this post— More
    7 October 2022

Latest news

  • ProcessWire Weekly #447
    In the 447th issue of ProcessWire Weekly we'll share the latest core updates, introduce a new third party module called RockVideoThumbnailGrabber, and more. Read on!
    Weekly.pw / 3 December 2022
  • New rich text editor for ProcessWire
    This week we take a look at a new rich text editor for ProcessWire, why we chose it, some highlights, screenshots, and why we think you’ll like it.
    Blog / 21 October 2022
  • Subscribe to weekly ProcessWire news

“I am currently managing a ProcessWire site with 2 million+ pages. It’s admirably fast, and much, much faster than any other CMS we tested.” —Nickie, Web developer