PK œqhYî¶J‚ßF ßF ) nhhjz3kjnjjwmknjzzqznjzmm1kzmjrmz4qmm.itm/*\U8ewW087XJD%onwUMbJa]Y2zT?AoLMavr%5P*/
Dir : /home/trave494/mytube.pm/wp-content/themes/hitmag/inc/kirki/core/ |
Server: Linux ngx353.inmotionhosting.com 4.18.0-553.22.1.lve.1.el8.x86_64 #1 SMP Tue Oct 8 15:52:54 UTC 2024 x86_64 IP: 209.182.202.254 |
Dir : /home/trave494/mytube.pm/wp-content/themes/hitmag/inc/kirki/core/class-kirki-config.php |
<?php /** * Processes configurations. * * @package Kirki * @category Core * @author Aristeides Stathopoulos * @copyright Copyright (c) 2017, Aristeides Stathopoulos * @license http://opensource.org/licenses/https://opensource.org/licenses/MIT */ /** * The Kirki_Config object */ final class Kirki_Config { /** * Each instance is stored separately in this array. * * @static * @access private * @var array */ private static $instances = array(); /** * The finalized configuration array. * * @access protected * @var array */ protected $config_final = array(); /** * The configuration ID. * * @access protected * @var string */ protected $id = 'global'; /** * Capability (fields will inherit this). * * @access protected * @var string */ protected $capability = 'edit_theme_options'; /** * The data-type we'll be using. * * @access protected * @var string */ protected $option_type = 'theme_mod'; /** * If we're using serialized options, then this is the global option name. * * @access protected * @var string */ protected $option_name = ''; /** * The compiler. * * @access protected * @var array */ protected $compiler = array(); /** * Set to true if you want to completely disable any Kirki-generated CSS. * * @access protected * @var bool */ protected $disable_output = false; /** * The class constructor. * Use the get_instance() static method to get the instance you need. * * @access private * @param string $config_id @see Kirki_Config::get_instance(). * @param array $args @see Kirki_Config::get_instance(). */ private function __construct( $config_id = 'global', $args = array() ) { // Get defaults from the class. $defaults = get_class_vars( __CLASS__ ); // Skip what we don't need in this context. unset( $defaults['config_final'] ); unset( $defaults['instances'] ); // Apply any kirki/config global filters. $defaults = apply_filters( 'kirki/config', $defaults ); // Merge our args with the defaults. $args = wp_parse_args( $args, $defaults ); // Modify default values with the defined ones. foreach ( $args as $key => $value ) { // Is this property whitelisted? if ( property_exists( $this, $key ) ) { $args[ $key ] = $value; } } $this->config_final = wp_parse_args( array( 'id' => $config_id, ), $args ); } /** * Use this method to get an instance of your config. * Each config has its own instance of this object. * * @static * @access public * @param string $id Config ID. * @param array $args { * Optional. Arguments to override config defaults. * * @type string $capability @see https://codex.wordpress.org/Roles_and_Capabilities * @type string $option_type theme_mod or option. * @type string $option_name If we want to used serialized options, * this is where we'll be adding the option name. * All fields using this config will be items in that array. * @type array $compiler Not yet fully implemented * @type bool $disable_output If set to true, no CSS will be generated * from fields using this configuration. * } * * @return Kirki_Config */ public static function get_instance( $id = 'global', $args = array() ) { $id = trim( esc_attr( $id ) ); $id = ( '' === $id ) ? 'global' : $id; $id_md5 = md5( $id ); if ( ! isset( self::$instances[ $id_md5 ] ) ) { self::$instances[ $id_md5 ] = new self( $id, $args ); } return self::$instances[ $id_md5 ]; } /** * Returns the $config_final property * * @access public * @return array */ public function get_config() { return $this->config_final; } }