![]() Server : LiteSpeed System : Linux premium84.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 User : claqxcrl ( 523) PHP Version : 8.1.32 Disable Function : NONE Directory : /home/claqxcrl/renascerdoestoril.com/wp-content/themes/soccer-club/inc/ |
<?php /** * Patterns Handler. * * @since soccer-club 1.0 */ namespace soccer_club; use WP_Block_Pattern_Categories_Registry; /** * Class Block_Patterns * * @package soccer-club */ class Block_Patterns { /** * Patterns categories. * * @var array */ private $categories = array(); /** * The patterns array. * * These use the file names without termination inside the `inc/patterns` directory. * * @var array */ private $patterns = array(); /** * Block_Patterns constructor. */ public function __construct() { $this->setup_properties(); add_action( 'init', array( $this, 'run' ) ); } /** * Run the class functionality. * * @return void */ public function run() { $this->register_categories(); $this->register_patterns(); } /** * Setup class properties. * * @return void */ private function setup_properties() { $categories = array( 'soccer-club' => array( 'label' => __( 'Soccer Club Patterns', 'soccer-club' ) ), ); $patterns = array( 'header-default', 'about-section', 'primary-sidebar', '404-page', 'search', 'search-header', 'footer-default' ); $this->categories = apply_filters( 'soccer_club_block_patterns_categories', $categories ); $this->patterns = apply_filters( 'soccer_club_block_patterns', $patterns ); } /** * Register block patterns categories. * * @return void */ private function register_categories() { foreach ( $this->categories as $slug => $args ) { if ( WP_Block_Pattern_Categories_Registry::get_instance()->is_registered( $slug ) ) { continue; } register_block_pattern_category( $slug, $args ); } } /** * Register Patterns. * * @return void */ private function register_patterns() { foreach ( $this->patterns as $pattern ) { $file = get_theme_file_path( '/patterns/' . $pattern . '.php' ); if ( ! is_file( $file ) ) { continue; } register_block_pattern( 'soccer-club/' . $pattern, require $file ); } } } new Block_Patterns();