$wire API variable / ProcessWire class

Represents an instance of ProcessWire connected with a set of API variables.

This class boots a ProcessWire instance. The current ProcessWire instance is represented by the $wire API variable.

// To create a new ProcessWire instance
$wire = new ProcessWire('/server/path/', 'https://hostname/url/');

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

Show $var?             Show args?        

Common

NameReturnSummary 
$wire->__construct()
(nothing)Create a new ProcessWire instance 
$wire->adminTheme AdminTheme AdminThemeFramework null 
$wire::buildConfig()
ConfigStatic method to build a Config object for booting ProcessWire 
$wire->cache WireCache 
$wire->classLoader WireClassLoader 
$wire->config Config 
$wire->database WireDatabasePDO 
$wire->datetime WireDateTime 
$wire->fieldgroups Fieldgroups 
$wire->fields Fields 
$wire->fieldtypes Fieldtypes 
$wire->files WireFileTools 
$wire->fuel Fuel 
$wire::getRootPath()
stringGet root path, check it, and optionally auto-detect it if not provided 
$wire->hooks WireHooks 
$wire->input WireInput 
$wire->languages Languages (present only if LanguageSupport installed) 
$wire->log WireLog 
$wire->mail WireMailTools 
$wire->modules Modules 
$wire->notices Notices 
$wire->page Page 
$wire->pages Pages 
$wire->permissions Permissions 
$wire->process Process ProcessPageView 
$wire->profiler WireProfilerInterface 
$wire->roles Roles 
$wire->sanitizer Sanitizer 
$wire->session Session 
$wire->set(string $key, $value)
$thisSet a new API variable 
$wire->setStatus(int $status)
(nothing)Set the system status to one of the ProcessWire::status* constants 
$wire->shutdown WireShutdown 
$wire->templates Templates 
$wire->urls Paths 
$wire->user User 
$wire->users Users 
$wire->wire ProcessWire 

Constants

NameReturnSummary 
ProcessWire::htaccessVersion const301Minimum required .htaccess file version 
ProcessWire::indexVersion const300Minimum required index.php version, represented by the PROCESSWIRE define 
ProcessWire::statusBoot const1Status when system is booting API variables available: $wire, $hooks, $config, $classLoader 
ProcessWire::statusDownload const32Status when current request will send a file download to client and exit (rather than rendering a page template file) All API variables available 
ProcessWire::statusExited const256Status when the request has finished abnormally (like a manual exit) @since 3.0.180 
ProcessWire::statusFailed const1024Status when the request failed due to an Exception or 404 API variables should be checked for availability before using. 
ProcessWire::statusFinished const128Status when the request has been fully delivered (but before a redirect) All API variables available 
ProcessWire::statusInit const2Status when system and modules are initializing All API variables available except for $page 
ProcessWire::statusNone const0Status prior to boot (no API variables available) 
ProcessWire::statusReady const4Status when system, $page and all API variables are ready All API variables available 
ProcessWire::statusRender const8Status when the current $page’s template file is being rendered, set right before render All API variables available 
ProcessWire::versionMajor const3Major version number 
ProcessWire::versionMinor const0Minor version number 
ProcessWire::versionRevision const185Reversion revision number 
ProcessWire::versionSuffix constdevVersion suffix string (when applicable) 

For hooks

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

NameReturnSummary 
$wire->finished()
(nothing)Hookable ready for anyone that wants to hook when the request is finished
$wire->init()
(nothing)Hookable init for anyone that wants to hook immediately before any autoload modules initialized or after all modules initialized
$wire->ready()
(nothing)Hookable ready for anyone that wants to hook immediately before any autoload modules ready or after all modules ready

Additional methods and properties

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

API reference based on ProcessWire core version 3.0.185

Twitter updates

  • ProcessWire 3.0.185 (dev) core updates, plus new Session Allow module— More
    17 September 2021
  • Three new ProcessWire Textformatter modules: Find/Replace, Markdown in Markup, and Emoji— More
    3 September 2021
  • This week we have a new master version released after a year in the making. With nearly 40 pull requests, hundreds of new additions and more than 100 issue reports resolved, this new version has a ton of great new stuff— More
    27 August 2021

Latest news

  • ProcessWire Weekly #388
    In the 388th issue of ProcessWire Weekly we'll check out the latest core update, introduce two new third party modules, and more. Read on!
    Weekly.pw / 16 October 2021
  • ProcessWire 3.0.184 new master/main version
    This week we have a new master/main version released after a full year in the making. As you might imagine, this new version has a ton of great new stuff and we’ll try to cover much of it here.
    Blog / 27 August 2021
  • Subscribe to weekly ProcessWire news

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