private function update_tm_settings(array $config) { $section_singular = $this->index_singular; $config = array_filter($config); $config[$section_singular] = isset($config[$section_singular]) ? $config[$section_singular] : array(); $this->sync_settings($config); // taxonomies - check what's been removed if (!empty($this->tm_instance->settings[$this->index_ro])) { $config_values = array(); foreach ($config[$section_singular] as $config_value) { $config_values[$config_value['value']] = $config_value['attr']['translate']; } foreach ($this->tm_instance->settings[$this->index_ro] as $key => $translation_option) { if (!isset($config_values[$key])) { unset($this->tm_instance->settings[$this->index_ro][$key]); } } $this->tm_instance->save_settings(); } }