舒舒服服水电费多少发多少*(^&*(
<?php
namespace XTS\Modules;
use XTS\Modules\Header_Builder\Elements;
use XTS\Modules\Header_Builder\Header_Factory;
use XTS\Modules\Header_Builder\Headers_List;
use XTS\Modules\Header_Builder\Manager;
use XTS\Singleton;
if ( ! defined( 'WOODMART_THEME_DIR' ) ) {
exit( 'No direct script access allowed' );
}
/**
* ------------------------------------------------------------------------------------------------
* Include all required files, define constants
* ------------------------------------------------------------------------------------------------
*/
class Header_Builder extends Singleton {
/**
* Elements object classes.
*
* @var null
*/
public $elements = null;
/**
* Header list.
*
* @var null
*/
public $list = null;
/**
* Header factory object class.
*
* @var null
*/
public $factory = null;
/**
* Header manager object class.
*
* @var null
*/
public $manager = null;
/**
* Init.
*/
protected function init() {
$this->define_constants();
$this->include_files();
$this->init_classes();
}
/**
* Define constants.
*
* @return void
*/
private function define_constants() {
define( 'WOODMART_HB_DEFAULT_ID', 'default_header' );
define( 'WOODMART_HB_DEFAULT_NAME', 'Default header layout' );
define( 'WOODMART_HB_DIR', get_template_directory() . '/inc/modules/header-builder/' );
define( 'WOODMART_HB_TEMPLATES', get_template_directory() . '/header-elements/' );
}
/**
* Include files.
*
* @return void
*/
private function include_files() {
$classes = array(
'class-frontend',
'class-manager',
'class-header-factory',
'class-headers-list',
'class-header',
'class-elements',
'class-styles',
);
if ( ( current_user_can( 'administrator' ) && woodmart_is_header_frontend_editor() ) || is_admin() ) {
$classes[] = 'class-backend';
}
foreach ( $classes as $class ) {
require_once WOODMART_HB_DIR . $class . '.php';
}
}
/**
* Init classes.
*
* @return void
*/
private function init_classes() {
$this->elements = new Elements();
$this->list = new Headers_List();
$this->factory = new Header_Factory( $this->elements, $this->list );
$this->manager = new Manager( $this->factory, $this->list );
}
}
Header_Builder::get_instance();