function siteorigin_widgets_init_and_register_field_class_loader() { $field_class_loader = new SiteOrigin_Widget_Field_Class_Loader(); $class_prefixes = array('SiteOrigin_Widget_Field_'); $class_prefixes = apply_filters('siteorigin_widgets_field_class_prefixes', $class_prefixes); $field_class_loader->add_class_prefixes($class_prefixes); $class_paths = array(plugin_dir_path(__FILE__)); $class_paths = apply_filters('siteorigin_widgets_field_class_paths', $class_paths); $field_class_loader->add_class_paths($class_paths); $field_class_loader->register(); }
function contactform_fields_class_paths($class_paths) { $loader = SiteOrigin_Widget_Field_Class_Loader::single(); $loader->add_class_prefixes(apply_filters('siteorigin_widgets_contact_form_field_class_prefixes', array('SiteOrigin_Widget_ContactForm_Field_')), 'contact-form'); $loader->add_class_paths(apply_filters('siteorigin_widgets_contact_form_field_class_paths', array(plugin_dir_path(__FILE__) . 'fields/')), 'contact-form'); return $class_paths; }
if ($valid_classname) { break 2; } } } if (!$valid_classname) { return; } $filename = strtolower(str_replace('_', '-', str_replace($class_prefix, '', $field_classname))); if (empty($this->class_paths[$class_group])) { return; } foreach ($this->class_paths[$class_group] as $class_path) { $filepath = $class_path . $filename . '.class.php'; if (file_exists($filepath)) { require_once $filepath; continue; } } } /** * Initialize and register the class field loader */ public function extend() { $this->add_class_prefixes(apply_filters('siteorigin_widgets_field_class_prefixes', array()), 'base'); $this->add_class_paths(apply_filters('siteorigin_widgets_field_class_paths', array()), 'base'); } } add_action('init', array(SiteOrigin_Widget_Field_Class_Loader::single(), 'extend'));