Developing a site in ProcessWire
Cheatsheet
A quick reference of ProcessWire API variables, methods and properties – all on one page.
Concept
ProcessWire’s API is inspired by jQuery and its style and syntax. Learn more about the concept behind the API here.
What is the API?
ProcessWire’s API is a collection of variables, selectors, fluent interfaces and a modular plugin architecture. Read more about what makes up this API here.
Directories
This section outlines ProcessWire’s default directory structure, highlighting the locations where your site’s files go.
Template Files
Every time a page is loaded on your site, ProcessWire looks at what template is assigned to the page, loads it, gives it several API variables, and then runs it as a PHP script. This section covers the use of template files and serves as an introduction to using ProcessWire’s API with examples.
Variables
ProcessWire provides these variables to every template which provide full access to the API.
Selectors
A selector allows you to specify fields for finding a page or group of pages that match your criteria. Selectors in ProcessWire are loosely based around the idea and syntax of attribute selectors in jQuery.
Include & Bootstrap
ProcessWire’s API and data can be used from other PHP scripts, including command line PHP scripts. It’s very easy to do, here’s how…
Syntax
Previous versions of ProcessWire, as well as the CMSs that preceded it (like Dictator CMS) used a tagging syntax where you could reference a value in your template using a tag like {$title}. ProcessWire v2.0 works differently. Here’s why…
Hooks
ProcessWire contains many methods that you may hook into in order to modify the behavior of the method. Hooks are typically attached by modules (most often autoload modules).
Plugin Modules
Modules exist to enable a high level of extensibility and customization to an installation of ProcessWire. Modules are PHP files containing classes that adhere to ProcessWire’s Module interface.
Users & Access
ProcessWire uses a role-based access-control system (RBAC). Users, pages and permissions are assigned to roles.Users inherit the permissions of their roles on pages that have the role enabled.
Arrays
Nearly all collections of items in ProcessWire are derived from the WireArray. The WireArray interface is one you will be interacting with regularly in the ProcessWire API whether you know it or not. This page documents all of the methods that are common to all WireArrays.
Fieldtypes
Fieldtypes are modules that define a data type and field used to hold content for pages. Every field used in your site has a defined type that originates from a Fieldtype module.
Multi-Language Support
Supporting multiple languages with ProcessWire 2.2 and the Language Support modules.
Comments
Your e-mail is kept confidential and not included with your comment. Website is optional.