| Server IP : 47.82.179.145 / Your IP : 216.73.217.129 Web Server : nginx/1.26.3 System : Linux iZt4n9czhka2zvqfajdlr2Z 6.8.0-63-generic #66-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 13 20:25:30 UTC 2025 x86_64 User : www ( 1001) PHP Version : 8.3.30 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /www/wwwroot/scuipturepactory.com/wp-content/themes/artist-art-gallery/inc/ |
Upload File : |
<?php
/**
* Patterns Handler.
*
* @since artist-art-gallery 1.0
*/
namespace artist_art_gallery;
use WP_Block_Pattern_Categories_Registry;
/**
* Class Block_Patterns
*
* @package artist-art-gallery
*/
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(
'artist-art-gallery' => array( 'label' => __( 'Artist Art Gallery Patterns', 'artist-art-gallery' ) ),
);
$patterns = array(
'header-default',
'banner',
'product-section',
'exhibition-section',
'our-features-section',
'testimonials-section',
'404-page',
'primary-sidebar',
'search',
'footer-default'
);
$this->categories = apply_filters( 'artist_art_gallery_block_patterns_categories', $categories );
$this->patterns = apply_filters( 'artist_art_gallery_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( 'artist-art-gallery/' . $pattern, require $file );
}
}
}
new Block_Patterns();