$modules->findByPrefix() method

Find modules matching the given prefix (i.e. “Inputfield”)

By default this method returns module class names matching the given prefix. To instead retrieve instantiated (ready-to-use) modules, specify boolean true for the second argument. Regardless of $load argument all returned arrays are indexed by module name.

Example

// Retrieve array of all Textformatter module names
$items = $modules->findByPrefix('Textformatter');

// Retrieve array of all Textformatter modules (ready to use)
$items = $modules->findByPrefix('Textformatter', true); 

Usage

// basic usage
$array = $modules->findByPrefix(string $prefix);

// usage with all arguments
$array = $modules->findByPrefix(string $prefix, $load = false);

Arguments

NameType(s)Description
prefixstring

Specify prefix, i.e. "Process", "Fieldtype", "Inputfield", etc.

load (optional)bool, int

Specify one of the following (all indexed by module name):

  • Boolean true to return array of instantiated modules.
  • Boolean false to return array of module names (default).
  • Integer 1 to return array of module info for each matching module.
  • Integer 2 to return array of verbose module info for each matching module.
  • Integer 3 to return array of Module or ModulePlaceholder objects (whatever current state is). Added 3.0.146.

Return value

array

Returns array of module class names, module info arrays, or Module objects. In all cases, array indexes are class names.


$modules methods and properties

API reference based on ProcessWire core version 3.0.236

Latest news

  • ProcessWire Weekly #519
    In the 519th issue of ProcessWire Weekly we'll check out a new third party module called RockForms, introduce the latest ProcessWire core updates, and more. Read on!
    Weekly.pw / 20 April 2024
  • ProFields Table Field with Actions support
    This week we have some updates for the ProFields table field (FieldtypeTable). These updates are primarily focused on adding new tools for the editor to facilitate input and management of content in a table field.
    Blog / 12 April 2024
  • Subscribe to weekly ProcessWire news

“I am currently managing a ProcessWire site with 2 million+ pages. It’s admirably fast, and much, much faster than any other CMS we tested.” —Nickie, Web developer