masterflash-ru / slider
为 Simba 提供的多种滑动器专属服务
dev-master / 0.0.1.x-dev
2020-01-06 15:00 UTC
Requires
- php: ^7.2
- laminas/laminas-cache: ^2.7
- masterflash-ru/ado: ^2.2
- masterflash-ru/imglib: *
- masterflash-ru/storage: ^1.2
This package is auto-updated.
Last update: 2024-09-07 01:13:01 UTC
README
非常原始,所有内容都在开发中,原理很简单 - 通过助手视图生成 HTML,列表元素以滑动器接受的格式
使用 composer require masterflash-ru/slider 安装后,从 data 文件夹中加载数据库备份到应用程序数据库中,或使用迁移添加到应用程序配置中(键 - 滑动器名称)类似配置
"slider"=>[ "layout_up"=>[ "name"=>"Слайдер в шапке", "options"=>[ /*сценарий вывода*/ "tpl"=>"mf/slider/bootstrap4", //Обязательный параметр "indicators"=>true, //индикаторы да/нет "control" => true, //кнопки листания по бокам да/нет "show_routes" =>[ //массив имен маршрутов для которых выводим, пусто - для всех ], "hide_routes" =>[ //массив маршрутов для которых скрываем, пусто - нет запретов ], ], ], ],
添加到 storage 部分
"storage"=>[ ... "items"=>[ "layout_up"=>[ "description"=>"Элементы слайдера", 'file_storage'=>'default', 'file_rules'=>[ 'admin_img'=>[ 'filters'=>[ CopyToStorage::class => [ 'folder_level'=>0, 'folder_name_size'=>3, 'strategy_new_name'=>'md5' ], ], ], 'img'=>[ 'filters'=>[ CopyToStorage::class => [ 'folder_level'=>0, 'folder_name_size'=>3, 'strategy_new_name'=>'md5' ], ImgResize::class=>[ "method"=>1, "width"=>160, "height"=>76, 'adapter'=>'gd', ], ], ], ], ], ] ]
提供滑动器助手视图输出,从应用程序输出脚本来调用
//echo $this->slider("имя_слайдера",[массив опций]); //пример для bootstrap4: echo $this->slider("layout_up",["container-carousel-css"=>"carousel slide carousel-fade"]);
参数数组包括配置中指定的内容,并覆盖它们,或者添加特定的滑动器参数,例如 "container-carousel-css" - 这是轮播容器中的样式字符串。选项直接传递给输出脚本。
修改设置后,请务必清除缓存!缓存中存储了已渲染的轮播 HTML。
可以在幻灯片上添加链接以进行跳转,可以指定跳转地址,或内部页面,内部页面与静态页面类似。链接处理算法
- 如果有跳转地址,设置它并退出处理
- 如果跳转地址为空,查看内部地址,如果存在,设置它
- 如果没有设置上述任一项,则只是图片幻灯片。
包提供内部页面,地址为 /adslider/:link,link 是在后台中指定的内部地址。
要使用数据库,应用程序配置中必须声明 DefaultSystemDb
...... "databases"=>[ //соединение с базой + имя драйвера 'DefaultSystemDb' => [ 'driver'=>'MysqlPdo', //"unix_socket"=>"/tmp/mysql.sock", "host"=>"localhost", 'login'=>"root", "password"=>"**********", "database"=>"simba4", "locale"=>"ru_RU", "character"=>"utf8" ], ], .....
与缓存类似
..... 'caches' => [ 'DefaultSystemCache' => [ 'adapter' => [ 'name' => Filesystem::class, 'options' => [ // Store cached data in this directory. 'cache_dir' => './data/cache', // Store cached data for 3 hour. 'ttl' => 60*60*2 ], ], 'plugins' => [ [ 'name' => Serializer::class, 'options' => [ ], ], ], ], ], .....