Getting started

Minimum requirements

  • Evolution CMS 3.2.0
  • PHP 8.1.0
  • Composer 2.2.0
  • PostgreSQL 10.23.0
  • MySQL 8.0.3
  • MariaDB 10.5.2
  • SQLite 3.25.0

Install by artisan package

Go to You /core/ folder

cd core

Run php artisan commands

php artisan package:installrequire seiger/sgallery "*"
php artisan vendor:publish --provider="Seiger\sGallery\sGalleryServiceProvider"
php artisan migrate

Configuration

Templates for displaying gallery tabs are configured in the

../core/custom/config/seiger/settings/sGallery.php

file, where the array contains template IDs for connecting the gallery.

<?php return [1, 3, 5];

Usage in blade

Sow all files with Image filter:

@foreach(sGallery::all() as $item)
    @if(sGallery::hasImage($item->type))
        <a class="swiper-slide" @if(trim($item->link))href="{{$item->link}}"@endif>
            <div class="container">
                <img loading="lazy" class="intro__img" src="{{$item->src}}" alt="{{$item->alt}}" width="1440" height="456">
                <div class="intro__inner">
                    <div class="h1__title">{{$item->title}}</div>
                    <p class="intro__text">{{$item->description}}</p>
                    @if(trim($item->link_text))<div class="btn background__mod">{{$item->link_text}}</div>@endif
                </div>
            </div>
        </a>
    @endif
@endforeach

or YouTube filter

@foreach(sGallery::all() as $item)
    @if(sGallery::hasYoutube($item->type))
        <div class="item">
            <div class="video">
                <iframe width="560" height="315" src="https://www.youtube.com/embed/{{$item->file}}" title="YouTube video player" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
            </div>
            <p>{{$item->title}}</p>
        </div>
    @endif
@endforeach

or

@foreach(sGallery::all('product', $product->id) as $item)
    <div class="swiper-slide">
        <a class="js-trigger-fancybox" href="{{$item->src}}" data-fancybox="product-gallery">
            <img loading="lazy" src="{{$item->src}}" width="440" height="440" />
        </a>
    </div>
@endforeach

More examples in Use in Blade page

Use in Blade

Integration into the products module

Just paste this code in your View backend

{!! sGallery::initialise('section', 'product', 'i') !!}

Extra

If you write your own code that can integrate with the sGallery plugin, you can check the presence of this plugin in the system through a configuration variable.

if (evo()->getConfig('check_sGallery', false)) {
    // You code
}

If the plugin is installed, the result of evo()->getConfig('check_sGallery', false) will always be true. Otherwise, you will get an false.