$config->js() method

Set or retrieve a config value to be shared with javascript

Values are set to the Javascript variable ProcessWire.config[key].

  1. Specify a $key and $value to set a JS config value.

  2. Specify only a $key and omit the $value in order to retrieve an existing set value. The $key may also be an array of properties, which will return an array of values.

  3. Specify boolean true for $value to share the $key with the JS side. If the $key specified does not exist then $key=true will be added to the JS config (which can later be overwritten with another value, which will still be shared with the JS config). The $key property may also be an array of properties to specify multiple.

  4. Specify no params to retrieve in array of all existing set values.

Examples

// Set a property from PHP
$config->js('mySettings', [
  'foo' => 'bar',
  'bar' => 123,
]);

// Get a property (from PHP)
$mySettings = $config->js('mySettings'); 
// Get a property (from Javascript):
var mySettings = ProcessWire.config.mySettings;
console.log(mySettings.foo);
console.log(mySettings.bar); 

Usage

// basic usage
$array = $config->js();

// usage with all arguments
$array = $config->js($key = null, mixed $value = null);

Arguments

NameType(s)Description
key (optional)string, array

Property or array of properties

value (optional)mixed

Return value

array mixed null this


$config methods and properties

API reference based on ProcessWire core version 3.0.137

Twitter updates

  • ProcessWire 3.0.144 and 3.0.145 add improved field template context override settings and include a new Inputfields API, along with numerous other issue fixes, optimizations and improvements to the core. More
    8 November 2019
  • ProcessWire 3.0.144 core updates: Upgraded overrides section in the field editor, a new Inputfields JS API, and more— More
    1 November 2019
  • ProcessWire 3.0.143 core updates — 26 commits and 18 resolved issue reports, plus some other useful improvements and additions. More here: More
    25 October 2019

Latest news

  • ProcessWire Weekly #288
    In the 288th issue of ProcessWire Weekly we'll cover the latest core updates, introduce WireMailSendGrid, host a new weekly poll, and showcase a new site of the week. Read on!
    Weekly.pw / 16 November 2019
  • ProcessWire 3.0.145 core updates
    ProcessWire 3.0.144 and 3.0.145 add improved field template context override settings and include a new Inputfields API, along with numerous other issue fixes, optimizations and improvements to the core.
    Blog / 8 November 2019
  • Subscribe to weekly ProcessWire news

“To Drupal, or to ProcessWire? The million dollar choice. We decided to make an early switch to PW. And in retrospect, ProcessWire was probably the best decision we made. Thanks are due to ProcessWire and the amazing system and set of modules that are in place.” —Unni Krishnan, Founder of PigtailPundits