Server : LiteSpeed System : Linux server64.web-hosting.com 4.18.0-513.18.1.lve.el8.x86_64 #1 SMP Thu Feb 22 12:55:50 UTC 2024 x86_64 User : nimalaab ( 3358) PHP Version : 8.1.33 Disable Function : NONE Directory : /home/nimalaab/public_html/wp-content/themes/as/lib/colibriwp/src/Customizer/ |
<?php namespace ColibriWP\Theme\Customizer; use ColibriWP\Theme\Customizer\Sections\ColibriSection; use WP_Customize_Section; class SectionFactory { private static $sections = array( 'colibri_section' => ColibriSection::class, ); private static $register_exclusion = array(); private static $registered = false; public static function make( $id, $data ) { $data = array_merge( array( 'type' => 'default', ), $data ); $class = static::getClassByType( $data['type'] ); global $wp_customize; unset( $data['type'] ); $section = new $class( $wp_customize, $id, $data ); $wp_customize->add_section( $section ); return $section; } private static function register() { if ( ! static::$registered ) { foreach ( static::$sections as $key => $section ) { global $wp_customize; if ( ! in_array( $key, static::$register_exclusion ) ) { $wp_customize->register_section_type( $section ); } } static::$registered = true; } } private static function getClassByType( $type ) { static::register(); $class = isset( static::$sections[ $type ] ) ? static::$sections [ $type ] : WP_Customize_Section::class; return $class; } }