PagesType class

Provides an interface to the Pages class but specific to a given page class/type, with predefined parent and template.

This class is primarily used by the core as an alternative to $pages, providing an API for other Page types like User, Role, Permission, and Language. The $users, $roles, $permissions and $languages API variables are all instances of PagesType. This class is typically not instantiated on its own and instead acts as a base class which is extended.


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

Show class?             Show args?        

Family

NameReturnSummary 
PagesType::addParents($parents)
(nothing)Add one or more of parents that this PagesType represents 
PagesType::addTemplates($templates)
(nothing)Add one or more templates that this PagesType represents 
PagesType::getPageClass()
stringGet the PHP class name used by Page objects of this type 
PagesType::getParent()
Page NullPageGet the parent Page object (or first parent Page object if there are multiple) 
PagesType::getParentID()
intGet the parent page ID used by this type (or first parent ID if there are multiple) 
PagesType::getParentIDs()
arrayGet the parent page IDs used by this type 
PagesType::getParents()
PageArrayGet the parent Page objects in a PageArray 
PagesType::getTemplate()
TemplateGet the template used by this type (or first template if there are multiple) 
PagesType::getTemplates()
array TemplateGet the templates (plural) used by this type 
PagesType::setPageClass(string $class)
(nothing)Set the PHP class name to use for Page objects of this type 

For hooks

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

NameReturnSummary 
PagesType::added(Page $page)
(nothing)Hook called when a new page of this type has been added
PagesType::deleteReady(Page $page)
(nothing)Hook called when a page is about to be deleted, but before data has been touched
PagesType::deleted(Page $page)
(nothing)Hook called when a page and its data have been deleted
PagesType::saveReady(Page $page)
arrayHook called just before a page of this type is saved
PagesType::saved(Page $page)
(nothing)Hook called after a page of this type is successfully saved

Additional methods and properties

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

API reference based on ProcessWire core version 3.0.130

Twitter updates

  • New post: Quietly and without interruption this week, the ProcessWire.com website (and all subdomains) moved from a single static server to a load-balanced multi-server environment, giving us even more horsepower and redundancy than before— More
    19 April 2019
  • New post: With ProcessWire 3.0.130, this week we’ll take a detailed look at a few useful new API additions made in the last few weeks, along with examples of each—More
    12 April 2019
  • New post: This week ProcessWire ProMailer has been released, plus we’ve got a nice upgrade in our community support forum, and more— More
    15 March 2019

Latest news

  • ProcessWire Weekly #258
    In the 258th issue of ProcessWire Weekly we'll cover a hosting upgrade for the processwire.com site and it's subdomains, introduce PW Review and Terminal module, and feature the new site of O'Neil Cinema. Read on!
    Weekly.pw / 20 April 2019
  • ProcessWire.com website hosting upgrades
    Quietly and without interruption this week, our whole website moved from a single static server to a load-balanced multi-server environment, giving us even more horsepower and redundancy than before.
    Blog / 19 April 2019
  • Subscribe to weekly ProcessWire news

“Indeed, if ProcessWire can be considered as a CMS in its own right, it also offers all the advantages of a CMF (Content Management Framework). Unlike other solutions, the programmer is not forced to follow the proposed model and can integrate his/her ways of doing things.” —Guy Verville, Spiria Digital Inc.