Wire::hasHook() method

Returns true if the method or property is hooked, false if it isn’t.

  • This method checks for both static hooks and local hooks.
  • Accepts a method() or property name as an argument.
  • Class context is assumed to be the current class this method is called on.
  • Also considers the class parents for hooks.


if($pages->hasHook('find()')) {
  // the Pages::find() method is hooked


$bool = $wire->hasHook(string $name);



Method() name or property name:

  • If checking for a hooked method, it should be in the form method().
  • If checking for a hooked property, it should be in the form property.

Return value


True if this class instance has the hook, false if not.


Method can throw exceptions on error:

  • WireException - When you try to call it with a Class::something() type method, which is not supported.

Wire methods and properties

API reference based on ProcessWire core version 3.0.209

Twitter updates

  • Adding custom actions to ProcessWire image fields in the admin, part of this week’s dev branch additions: More
    27 January 2023
  • ProcessWire 3.0.210 new main/master version released— More
    6 January 2023
  • ProcessWire 3.0.209: Core updates and an interesting AI that knows ProcessWire– More
    30 December 2022

Latest news

  • ProcessWire Weekly #456
    The 456th issue of ProcessWire Weekly covers latest core updates, introduces a new third party module called TextformatterRockDown, and more. Read on!
    Weekly.pw / 4 February 2023
  • ProcessWire 3.0.210 new main/master version
    140 commits, 55 resolved issues, dozens of new features, eight contributors, and five new pull requests make yet another great new version of ProcessWire.
    Blog / 6 January 2023
  • Subscribe to weekly ProcessWire news

“…building with ProcessWire was a breeze, I really love all the flexibility the system provides. I can’t imagine using any other CMS in the future.” —Thomas Aull