# blockspare/2.6.1/inc/pattern/pattern.php

BlockSpare – Gutenberg Blocks for News, Magazine, Blog &amp; Business Websites, version 2.6.1. 57 lines.

- Page: https://pluginprobe.com/plugins/blockspare/2.6.1/code/inc/pattern/pattern.php
- Raw: https://pluginprobe.com/plugins/blockspare/2.6.1/raw/inc/pattern/pattern.php
- Modified: 2023-05-11T08:51:00+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/blockspare/2.6.1/code/inc/pattern/pattern.php#L10-L20`.

```php
<?php 
include BLOCKSPARE_BASE_DIR .'/inc/template-library/init.php';
if(!function_exists('blockspare_register_block_pattern')){
function blockspare_register_block_pattern() {
               
                //Get all blocks from template library
                $blocks_lists = array();

                $templates_lists = apply_filters( 'blockspare_template_library', $blocks_lists );

                $templates_lists = apply_filters( 'blockspare_template_library', $blocks_lists );
                $block_pattern_categories =[];
                foreach($templates_lists as $tl){
                   array_push($block_pattern_categories,$tl['item']);
                }

                foreach($block_pattern_categories as $cat_name){
                   foreach(array_unique($cat_name) as $name){
                    if ( ! WP_Block_Pattern_Categories_Registry::get_instance()->is_registered( $name ) ) {
                        register_block_pattern_category(
                            $name,
                            array( 'label' => $name )
                        );
                    }
                    }
                }

                $empty_template_array = [];
                foreach($templates_lists as $template){
                    $new_template_array = [];
                    $new_template_array =  array(
                        'title'=>$template['name'],
                        'categories'=>$template['item'],
                        'content'=>$template['content']
                    );

                    array_push($empty_template_array,$new_template_array);
                    
                }
                // Register pattern
                if(!empty($empty_template_array)){
                    $i=0;
                    foreach($empty_template_array as $new_template){
                        $i++;
                            register_block_pattern(
                                'blockspare/blockspare-pattern-'.$i,
                                $new_template
                                
                            );
                        }
                }
        
    }
    add_action('init','blockspare_register_block_pattern');
}
    
    
```
