handle = $handle; self::$default[$handle] = get_theme_mods(); } return self::$_this[$handle]; } public function getDefault($key) { if ( isset(self::$default[$this->handle][$key]) ) { return self::$default[$this->handle][$key]; } } public function setDefault($key, $default) { if( $default === false ) $default = 0; self::$default[$this->handle][$key] = $default; $this->getMod($key); return self::$mods[$this->handle][$key]; } public function setDefaults(Array $array) { self::$defaults[$this->handle] = array_merge(self::$defaults[$this->handle],$array); } private function retrieveDefault($key) { if ( isset(self::$default[$this->handle][$key]) ) { return self::$default[$this->handle][$key]; } else { return null; } } /* * Get the theme mod setting * $key - the name of the modification * $default - overrides the set default * returns the value */ public function getMod($key, $default=null) { switch(true) { case isset($default): //Use the override default first if the key does not exist return get_theme_mod($key, $default); break; case isset(self::$default[$this->handle][$key]): //Use the preset override if the key does not exist return get_theme_mod($key, self::$default[$this->handle][$key]); break; default: return get_theme_mod($key); //Return the key } } public function getAll() { return self::$default[$this->handle]; } public function dumpAll() { var_dump(self::$default[$this->handle]); } } $sf_impact_Theme_Mods = sf_impact_Theme_Mods::get_instance('sf-impact');