/** * Function parsed template. * * @since 1.0.0 * @param string $template_name Template Name. * @param string|stdClass $class An instance or class name. * @param string $macros_callback The regular expression for the callback. * @param string $macros_variable The regular expression for the variable. * @access public * @return string|bool */ public function parsed_template($template_name = false, $class = false, $macros_callback = false, $macros_variable = false) { if ($template_name && $class) { if (!$macros_callback) { $macros_callback = $this->args['macros_callback']; } if (!$macros_variable) { $macros_variable = $this->args['macros_variable']; } $search_form_template = $this->cherry_template_manager_class->loader->get_template_by_name($template_name); if (!$search_form_template) { return false; } if ('string' === gettype($class) && class_exists($class)) { $class = new $class(); } if ($class !== self::$callbacks_class) { self::$callbacks_class = $class; } $ouput = preg_replace_callback($macros_callback, array($this, 'replace_callback'), $search_form_template); $ouput = preg_replace_callback($macros_variable, array($this, 'replace_variable'), $ouput); return $ouput; } else { return false; } }