public function locate_template($template_names, $load = FALSE, $require_once = TRUE) { $located = FALSE; $dir = '/' . $this->constants['theme_templates_dir'] . '/'; foreach ((array) $template_names as $template_name) { if (empty($template_name)) { continue; } $name = gPluginUtils::untrail($template_name); if (file_exists(get_stylesheet_directory() . $dir . $name)) { $located = get_stylesheet_directory() . $dir . $name; } else { if (file_exists(get_template_directory() . $dir . $name)) { $located = get_template_directory() . $dir . $name; } else { if (file_exists($this->constants['plugin_dir'] . '/templates/' . $name)) { $located = $this->constants['plugin_dir'] . '/templates/' . $name; } } } if ($located) { break; } } if ($load && !empty($located)) { load_template($located, $require_once); } return $located; }