/** * The class constructor. * * @var string the setting ID. * @var string theme_mod / option * @var array an array of arrays of the output arguments. * @var mixed a callable function. */ public static function css($field) { /** * Make sure the field is sanitized before proceeding any further. */ $field_sanitized = Kirki_Field_Sanitize::sanitize_field($field); /** * Set class vars */ self::$settings = $field_sanitized['settings']; self::$callback = $field_sanitized['sanitize_callback']; self::$field_type = $field_sanitized['type']; self::$output = $field_sanitized['output']; if (!is_array(self::$output)) { self::$output = array(array('element' => self::$output, 'sanitize_callback' => null)); } /** * Get the value of this field */ self::$value = Kirki_Values::get_sanitized_field_value($field_sanitized); /** * Returns the styles */ return self::styles(); }
/** * loop through all fields and create an array of style definitions */ public static function loop_controls() { $fields = Kirki::$fields; $css = array(); // Early exit if no fields are found. if (empty($fields)) { return; } foreach ($fields as $field) { // Only continue if $field['output'] is set if (isset($field['output']) && !empty($field['output']) && 'background' != $field['type']) { if (function_exists('array_replace_recursive')) { $css = array_replace_recursive($css, Kirki_Output_CSS::css($field)); } else { $css = Kirki_Helper::array_replace_recursive($css, Kirki_Output_CSS::css($field)); } } } if (is_array($css)) { return Kirki_Output_CSS::styles_parse(Kirki_Output_CSS::add_prefixes($css)); } return; }