2017 © Pedro Peláez
 

service stream

Разные ленты, например новостей

image

masterflash-ru/stream

Разные ленты, например новостей

  • Sunday, July 8, 2018
  • by masterflash-ru
  • Repository
  • 1 Watchers
  • 0 Stars
  • 51 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 14 Versions
  • 11 % Grown

The README.md

модуль работы с лентами статей, новостей.... После установки следует загрузить в базу дамп из папки data, скопируйте стили css из папки public в файл стилей приложения Если требуется удалить модуль, загрузите дамп deinstall.sql, он удаляет все из базы., (*1)

Установка composer require masterflash-ru/stream, (*2)

Добавьте в конфиг приложения:, (*3)

//определение вначале файла, для указания в маршруте
use Mf\Stream\Controller\IndexController as Stream;

....

'streams'=>[
        "config"=>[                                       /*если имена базы и кеша отличны от значения по умолчанию:*/
            "database"  =>  "DefaultSystemDb",            /*Имя базы данных с которой работаем*/
            "cache"     =>  "DefaultSystemCache",         /*имя кеша с которым работаем*/
        ],
        "categories"=>[
              'news'=>[                                   /*раздел ленты*/
                  'description'=>'Новости',               /*ОБЯЗАТЕЛЬНО Имя ленты*/
                  'pagination'=> [                        /*параметры вывода страниц, здесь указаны параметры по умолчанию*/
                       'paginationControl'=> [
                         'tpl'=>'simba',                  /*шаблон вывода номеров страниц, по умолчанию внутренний, можно bootstrap4, см. пакет masterflash-ru/navigation*/
                         'ScrollingStyle'=> 'Sliding',    /*стиль прокрутки номеров, допускается All, Elastic, Jumping, Sliding - по умолчанию*/
                        ],
                  'ItemCountPerPage' => 10,               /*кол-во элементов при просмотре анонсов*/
                  'PageRange' =>   10                     /*кол-во ссылок для перехода на другие страницы списка*/
                  ],
                 'tpl' => [                               /*НЕ обязательно, указаны параметры по умолчанию*/
                     'index' => 'stream/index/index',     /*шаблон вывода списка статей*/
                     'detal' => 'stream/index/detal',     /*шаблон вывода подробностей статьи*/
                 ],
                 'layout' => null,                        /*имя макета в котором выводится, по умолчанию текущий*/
              ],
        ],


],

Для хранения изображений используется masterflash-ru/storage, поэтому в конфиг приложения нужно добавить фрагмент, аналогичный данному:, (*4)

/*хранилище и обработка (ресайз) фото и других файлов*/
    "storage"=>[
        'data_folder'=>"data/datastorage",
        'file_storage'=>[
            'default'=>[
                'base_url'=>"media/pics/",
            ],
        ],

        'items'=>[
            /*хранилище для ленты новостей, ключ это имя секции, которая используется для работы
            он же является именем раздела, под которым записываются и считываются файлы*/
            "news"=>[
                "description"=>"Хранение фото новостей",
                'file_storage'=>'default',
                'file_rules'=>[
                            'admin_img'=>[
                                'filters'=>[
                                        CopyToStorage::class => [
                                                    'folder_level'=>0,
                                                    'folder_name_size'=>3,
                                                    'strategy_new_name'=>'md5'
                                        ],
                                        ImgResize::class=>[
                                                    "method"=>2,
                                                    "width"=>250,
                                                    "height"=>150,
                                                    'adapter'=>Gd::class,
                                        ],

                                ],
                                'validators' => [
                                        IsImage::class=>[],
                                        ImageSize::class => [
                                            'minWidth' => 222,
                                            'minHeight' => 166,
                                    ],
                                ],
                            ],
                            'anons'=>[
                                'filters'=>[
                                        CopyToStorage::class => [
                                                    'folder_level'=>0,
                                                    'folder_name_size'=>3,
                                                    'strategy_new_name'=>'md5'
                                        ],
                                        ImgResize::class=>[
                                                    "method"=>1,
                                                    "width"=>222,
                                                    "height"=>166,
                                                    'adapter'=>'gd',
                                        ],
                                ],
                            ],
                ],
            ],//news
        ],
    ],

Добавьте в конфиг приложения маршрут:, (*5)

        //маршрут для подробности
        'stream_detal_ru_RU' => [
             'type' => Segment::class,
             'options' => [
                  'route'    => '/:stream/:url',
                  'constraints' => [
                        'url' => '[a-zA-Z0-9_\-]+',
                         'stream' => 'news|articles',
                  ],
                 'defaults' => [
                     'controller' => Stream::class,
                     'action'     => 'detal',
                     'locale'=>'ru_RU'
                 ],
            ],
        ],

        //список новостей
        'stream_ru_RU' => [
            'type' => Segment::class,
                'options' => [
                    'route'    => '/:stream[/page/:page]',
                    'constraints' => [
                          'stream' => 'news|articles',
                          'page' => '\d+',
                    ],
                    'defaults' => [
                        'controller' => Stream::class,
                        'action'     => 'index',
                        'page'=>0,                /*<= обязательно 0 !!!!*/
                        'locale'=>'ru_RU'
                    ],
                ],
         ],

Модуль предоставляет помощник вывода последних статей, использование:, (*6)

/*сценарий view
Опции в помощник (массив):
[
     "locale"=>"ru_RU",          //имя локали
     "items"=>3,                 //кол-во элементов в выводе последних статей
     "tpl"=>"lastdefault",       //сценарий генерации HTML
]

*/

echo $this->laststream('имя_ленты',[опции]);

В конфиге приложения должны быть настройки кэша с именем 'DefaultSystemCache':, (*7)


'caches' => [ 'DefaultSystemCache' => [ 'adapter' => [ 'name' => Filesystem::class, 'options' => [ 'cache_dir' => './data/cache', 'ttl' => 60*60*2 ], ], 'plugins' => [ [ 'name' => Serializer::class, 'options' => [ ], ], ], ], ],

Для работы с базой в конфиге приложения должно быть объявлено DefaultSystemDb:, (*8)

......
    "databases"=>[
        //соединение с базой + имя драйвера
        'DefaultSystemDb' => [
            'driver'=>'MysqlPdo',
            //"unix_socket"=>"/tmp/mysql.sock",
            "host"=>"localhost",
            'login'=>"root",
            "password"=>"**********",
            "database"=>"simba4",
            "locale"=>"ru_RU",
            "character"=>"utf8"
        ],
    ],
.....

The Versions

08/07 2018

dev-master

9999999-dev https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash

15/05 2018

1.1.0

1.1.0.0 https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash

24/04 2018

1.0.11

1.0.11.0 https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash

19/03 2018

1.0.10

1.0.10.0 https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash

11/02 2018

1.0.9

1.0.9.0 https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash

11/02 2018

1.0.8

1.0.8.0 https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash

10/02 2018

1.0.7

1.0.7.0 https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash

09/02 2018

1.0.6

1.0.6.0 https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash

22/01 2018

1.0.5

1.0.5.0 https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash

05/01 2018

1.0.4

1.0.4.0 https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash

22/10 2017

1.0.3

1.0.3.0 https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash

16/10 2017

1.0.2

1.0.2.0 https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash

08/10 2017

1.0.1

1.0.1.0 https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash

08/10 2017

1.0.0

1.0.0.0 https://masterflash.ru/

Разные ленты, например новостей

  Sources   Download

BSD-3-Clause

The Requires

 

zendframework masterflash