# slider-blocks/2.2.1/includes/classes/class-enqueue-assets.php

GutSlider – All in One Slider and Carousel Blocks for Gutenberg, version 2.2.1. 100 lines.

- Page: https://pluginprobe.com/plugins/slider-blocks/2.2.1/code/includes/classes/class-enqueue-assets.php
- Raw: https://pluginprobe.com/plugins/slider-blocks/2.2.1/raw/includes/classes/class-enqueue-assets.php
- Modified: 2023-10-07T15:12:18+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/slider-blocks/2.2.1/code/includes/classes/class-enqueue-assets.php#L10-L20`.

```php
<?php
/**
 * Enqueue Assets 
 * @package GutSliderBlocks
 */
 
 if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly.

 if( ! class_exists( 'GutSlider_Assets' ) ) {

    class GutSlider_Assets {
        
        /**
         * Constructor
         * return void 
         */
        public function __construct() {
            add_action( 'enqueue_block_editor_assets', [ $this, 'enqueue_editor_assets' ] );
            add_action( 'enqueue_block_assets', [ $this, 'enqueue_assets' ] );
        }

        /**
         * Enqueue Block Assets [ Editor Only ]
         * return void
         */
        public function enqueue_editor_assets(){
            if( file_exists( GUTSLIDER_DIR_PATH . './build/global/global.asset.php' ) ){
                $dependency_file = include_once GUTSLIDER_DIR_PATH . './build/global/global.asset.php';
            }
    
            if( is_array( $dependency_file ) && ! empty( $dependency_file ) ) {
                wp_enqueue_script(
                    'gutslider-blocks-global-script',
                    GUTSLIDER_URL . './build/global/global.js',
                    isset( $dependency_file['dependencies'] ) ? $dependency_file['dependencies'] : [],
                    isset( $dependency_file['version'] ) ? $dependency_file['version'] : GUTSLIDER_VERSION,
                    true
                );
            }
    
            wp_enqueue_style(
                'gutslider-blocks-global-style',
                GUTSLIDER_URL . './build/global/global.css',
                [],
                GUTSLIDER_VERSION
            );
        }

        /**
         * Enqueue Block Assets [ Editor + Frontend ]
         * return void 
         */
        public function enqueue_assets() {

            if( is_admin() ) {
                // swiper style
                wp_enqueue_style(
                    'swiper-style',
                    GUTSLIDER_URL . 'assets/css/swiper-bundle.min.css',
                    [],
                    GUTSLIDER_VERSION
                );

                // swiper script
                wp_enqueue_script(
                    'swiper-script',
                    GUTSLIDER_URL . 'assets/js/swiper-bundle.min.js',
                    [],
                    GUTSLIDER_VERSION,
                    true
                );
            }

            // enqueue frontend scripts 
            $swiper_scripts = get_option( 'swiper_scripts', true );
            if( ! is_admin() && $swiper_scripts && ( has_block( 'gutsliders/content-slider' ) || has_block( 'gutsliders/any-content' ) )) {
                // swiper style
                wp_enqueue_style(
                    'swiper-style',
                    GUTSLIDER_URL . 'assets/css/swiper-bundle.min.css',
                    [],
                    GUTSLIDER_VERSION
                );

                // swiper script
                wp_enqueue_script(
                    'swiper-script',
                    GUTSLIDER_URL . 'assets/js/swiper-bundle.min.js',
                    [],
                    GUTSLIDER_VERSION,
                    true
                );
            }
        }

    }

 }

    new GutSlider_Assets();    // Initialize the class
```
