BossBey File Manager
PHP:
8.2.30
OS:
Linux
User:
imagivibe
Root
/
home
/
imagivibe
/
www
/
wp-content
/
plugins
/
robin-image-optimizer
/
includes
/
classes
📤 Upload
📝 New File
📁 New Folder
Close
Editing: class-rio-views.php
<?php /** * Class that handles templates. * * @version 1.0 */ class WRIO_Views { /** * The single instance of the class. * * @since 1.3.0 * @access protected * @var array */ protected static $_instance = []; /** * @since 1.3.0 * @var string */ protected $plugin_dir; /** * WRIO_Views constructor. * * @param string $plugin_dir */ public function __construct( $plugin_dir ) { $this->plugin_dir = $plugin_dir; } /** * @since 1.3.6 - add instace id * @since 1.3.0 * * @param string $plugin_dir * * @return object|\WRIO_Views object Main instance. */ public static function get_instance( $plugin_dir ) { $instance_id = md5( $plugin_dir ); if ( ! isset( self::$_instance[ $instance_id ] ) ) { self::$_instance[ $instance_id ] = new self( $plugin_dir ); } return self::$_instance[ $instance_id ]; } /** * Get a template contents. * * @since 1.3.0 * * @param string $template The template name. * @param mixed $data Some data to pass to the template. * @param WRIO_Page $page * * @return bool|string The page contents. False if the template doesn't exist. */ public function get_template( $template, $data = [], WRIO_Page $page = null ) { $template = str_replace( '_', '-', $template ); $path = $this->plugin_dir . '/views/' . $template . '.php'; if ( ! file_exists( $path ) ) { return false; } ob_start(); include $path; $contents = ob_get_clean(); return trim( (string) $contents ); } /** * Print a template. * * @access public * * @since 1.3.0 * * @param string $template The template name. * @param mixed $data Some data to pass to the template. * @param WRIO_Page $page */ public function print_template( $template, $data = [], WRIO_Page $page = null ) { echo $this->get_template( $template, $data, $page ); } }
Save
Cancel