/** * @param wpdb $wpdb * @param SitePress $sitepress * @param string $language * @param null|object $existing_filter * @param null|WPML_ST_Db_Cache_Factory */ public function __construct(&$wpdb, &$sitepress, $language, $existing_filter = null, $db_cache_factory = null) { parent::__construct($wpdb, $sitepress); $this->language = $language; if ($db_cache_factory instanceof WPML_ST_DB_Cache_Factory) { $this->db_cache_factory = $db_cache_factory; } else { $this->db_cache_factory = new WPML_ST_DB_Cache_Factory($wpdb); } $this->db_cache = $this->db_cache_factory->create($language); }
/** * Clear ST db cache and data related to it */ public function clear_st_db_cache() { global $wpdb; $factory = new WPML_ST_DB_Cache_Factory($wpdb); $persist = $factory->create_persist(); $persist->clear_cache(); }
do_action('wpml_scan_theme_for_strings', true); } elseif ($icl_tl_type == 2) { $parent_theme = get_template_directory(); $child_theme = get_stylesheet_directory(); $languages_folders = array(); if ($found_folder = icl_tf_determine_mo_folder($parent_theme)) { $languages_folders['parent'] = $found_folder; } if ($parent_theme != $child_theme && ($found_folder = icl_tf_determine_mo_folder($child_theme))) { $languages_folders['child'] = $found_folder; } $iclsettings['theme_language_folders'] = $languages_folders; } $this->save_settings($iclsettings); // clear ST DB Cache $factory = new WPML_ST_DB_Cache_Factory($wpdb); $persist = $factory->create_persist(); $persist->clear_cache(); echo '1|' . $icl_tl_type; break; case 'dismiss_help': icl_set_setting('dont_show_help_admin_notice', true); icl_save_settings(); break; case 'dismiss_page_estimate_hint': icl_set_setting('dismiss_page_estimate_hint', !icl_get_setting('dismiss_page_estimate_hint')); icl_save_settings(); break; case 'dismiss_upgrade_notice': icl_set_setting('hide_upgrade_notice', implode('.', array_slice(explode('.', ICL_SITEPRESS_VERSION), 0, 3))); icl_save_settings();