WireData class

WireData is the base data-storage class used by many ProcessWire object types and most modules.

WireData is very much like its parent Wire class with the fundamental difference being that it is designed for runtime data storage. It provides this primarily through the built-in get() and set() methods for getting and setting named properties to WireData objects. The most common example of a WireData object is Page, the type used for all pages in ProcessWire.

Properties set to a WireData object can also be set or accessed directly, like $item->property or using array access like $item[$property]. If you foreach() a WireData object, the default behavior is to iterate all of the properties/values present within it.


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

Show class?             Show args?        

Retrieval

NameReturnSummary 
WireData::and()
WireArrayTake the current item and append the given item(s), returning a new WireArray
WireData::data()
array WireData nullGet or set a low-level data value 
WireData::get($key)
mixed nullRetrieve the value for a previously set property, or retrieve an API variable 
WireData::getArray()
arrayReturns the full array of properties set to this object 
WireData::getDot(string $key)
null mixedGet a property via dot syntax: field.subfield.subfield 
WireData::getIterator()
ArrayObjectEnables the object data properties to be iterable as an array 
WireData::has(string $key)
boolDoes this object have the given property? 

Additional methods and properties

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

API reference based on ProcessWire core version 3.0.160

Twitter updates

  • ProcessWire 3.0.161 adds support for selector operator stacking, enabling you automatically broaden searches in a single pages.find() call— More
    26 June 2020
  • ProcessWire 3.0.160 adds powerful new text-searching operators, bringing a new level of power to page-finding API calls, especially when it comes to search engine type queries. Post also includes a demo search engine where you can test it all out live— More
    19 June 2020
  • Preview of ProcessWire 3.0.160 with auto-enable of two-factor authentication, new version of TfaEmail and TfaTotp, and new selector operators coming next week. More
    12 June 2020

Latest news

  • ProcessWire Weekly #320
    In the 320th issue of ProcessWire Weekly we're going to check out the latest core updates (ProcessWire 3.0.161), a new third party module called Fieldtype Runtime only, an IndieWeb themed article from Francesco Schwarz, and more. Read on!
    Weekly.pw / 27 June 2020
  • Powerful new text-searching abilities in 3.0.160
    In ProcessWire 3.0.160 we’ve got some major upgrades and additions to our text-search abilities. This brings a whole new level of power to $pages->find() and similar API calls, especially when it comes to search engine type queries.
    Blog / 19 June 2020
  • Subscribe to weekly ProcessWire news

“The end client and designer love the ease at which they can update the website. Training beyond how to log in wasn’t even necessary since ProcessWire’s default interface is straightforward.” —Jonathan Lahijani