Modules (plugins) and hooks

A module is a type of plugin that runs in ProcessWire, and they come in many flavors. At its core, ProcessWire is a platform for executing modules, and much ProcessWire is built upon these modules. Hooks enable you to intercept and modify events in ProcessWire and can be used both inside and outside of modules.

  • Introduction to modules

    Learn about what modules are, what different flavors of modules are available, how to install them, and where to get them.
  • Module development

    It is easy to develop a module in ProcessWire, though some PHP experience is helpful. This section introduces module development and guides you through a simple example to get you started.
  • Module types

    This page looks at the different predefined types of modules in ProcessWire and what they do. It also provides the recommended naming prefixes for modules so that ProcessWire can recognize your module type without actually loading it.
  • Using hooks

    ProcessWire contains many methods that you may easily hook in order to modify the behavior of the method. Hooks can also be used to add new methods to existing classes.
  • Pro modules

    Pro modules are commercial modules developed by Ryan Cramer (lead developer of ProcessWire) that support the development of the ProcessWire core.
  • About the /site/modules/ directory

    This directory /site/modules/ is where you may install additional 3rd party plugin modules, or create your own. Read on for more details.

Latest news

  • ProcessWire Weekly #582
    The 582nd issue of ProcessWire Weekly brings in all the latest news from the ProcessWire community. Modules, sites, and more. Read on!
    Weekly.pw / 5 July 2025
  • New ProcessWire admin redesign
    When you upgrade to ProcessWire 3.0.248 or newer (currently the dev branch), you’ll immediately notice something new and beautiful…
    Blog / 9 May 2025
  • Subscribe to weekly ProcessWire news

“We were really happy to build our new portfolio website on ProcessWire! We wanted something that gave us plenty of control on the back-end, without any bloat on the front end - just a nice, easy to access API for all our content that left us free to design and build however we liked.” —Castus, web design agency in Sheffield, UK