Download the PHP package vis/articles_l5 without Composer
On this page you can find all versions of the php package vis/articles_l5. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download vis/articles_l5
More information about vis/articles_l5
Files in vis/articles_l5
Package articles_l5
Short Description Articles handler package for L5
License proprietary
Informations about the package articles_l5
Articles
Пакет для Laravel 5.2+ предназначенный работы с материалами, которые можно предоставить в виде "Каталог статей - Статья".
Разделы
- Установка
- Спецификация нефильтруемых статей
- Спецификация фильтруемых статей
Установка
Выполняем
Спецификация нефильтруемых статей
Для использования функционала нефильтруемых статей необходимо:
- Создать модель, которая наследует Vis\Articles\Models\AbstractArticle, которая в свою очередь наследует BaseModel
Описание свойств:
Путь к папке с view templates Если значение 'sub_folder.package_articles', тогда view должны лежать в папке /resources/views/pages/sub_folder/package_articles Значение: путь к папке через точки
Путь к папке с view templates Значение: название_поля:порядок, по умолчанию: created_at:desc
Количество статей на странице каталога Значение: целое число, по умолчанию: 12
Название опции в CMS, которая содержит количество статей на странице каталога. Если указано, то параметр $perPage игнорируется Значение: строка с названием опции в CMS
Массив названий дополнительных Eloquent связей, которые необходимо загрузить в каталоге Необходим для реализации Lazy Eager loading на страницах каталогов Значение: массив $relationsInCatalog['', ...]
Массив названий дополнительных Eloquent связей, которые необходимо загрузить в статье Необходим для реализации Lazy Eager loading на страницах статей Значение: массив $relationsInArticle['', ...]
Описание методов:
Метод получения свойства $viewFolder
Метод получения свойства $sortOrder
Метод получения свойства $perPage
Метод получения свойства $relationsInCatalog
Метод получения свойства $RelationsInArticle
Метод-фильтр выведения статей по признаку is_main = 1
Метод-фильтр сортировки статей Значение: строка $order = 'created_at:desc'
- Создать контроллер, который наследует Vis\Articles\Controllers\AbstractSimpleArticleController
Описание свойств:
Название модели, которая будет использоваться Значение: строка с названием модели
-
Создать шаблон в \config\builder\tree.php
-
Определить именной роут, по которому будут доступны статьи
- Создать два шаблона article.blade.php и catalog.blade.php в соответствующей параметру $viewFolder папке. Пример article.blade.php
Пример catalog.blade.php
Спецификация фильтруемых статей
Часть параметров наследуется от нефильтруемой модели, их описание опущено. Для использования функционала фильтруемых статей необходимо:
- Создать модель, которая наследует Vis\Articles\Models\AbstractFilterableArticle, которая в свою очередь наследует BaseModel
Описание дополнительных свойств:
Фильтры порядка сортировки Значение: массив $sortOptions['name' => '', 'description' => '','value' => '']
Фильтры количества отображения на странице Значение: массив $countOptions['name' => '', 'description' => '','value' => '']
Путь к папке с view templates Значение: название_поля:порядок, по умолчанию: created_at:desc
Название поля используемого для фильтрации по дате Значение: строка с названием_поля, по умолчанию: created_at
Описание дополнительных методов: Метод получения свойства $sortOptions
Метод получения свойства $countOptions
Метод получения свойства $dateField
Метод-фильтр по связи с другой моделью Значение: строка $relationName = 'filterModel', объект $relationSelected
Метод-фильтр статей по дню Значение: целое число $year, целое число $month, целое число $day
Метод-фильтр статей по месяцу Значение: целое число $year, целое число $month, целое число $day
Метод-фильтр статей по году Значение: целое число $year, целое число $month, целое число $day
Метод-фильтр статей по точной дате Y-M-D Значение: целое число $year, целое число $month, целое число $day
Метод-фильтр по промежутку дат Значение: Объект Carbon\Carbon $dateFrom, Объект Carbon\Carbon $dateTo
-
Создать контроллер, который наследует Vis\Articles\Controllers\AbstractFilterableArticleController. Определить в нём методы ShowSingle, ShowCatalog
- Создать шаблон в \config\builder\tree.php
Если модель фильтров является деревом, тогда создаем еще шаблон:
Если модель фильтров внешняя модель, тогда необходимо создать роут для отслеживания фильтра:
Примечание. Для корректной работы у внешней модели-фильтра необходимо наличие поля slug. Для его автоматического заполнения в definition`е этой модели можно определить
-
Определить именной роут, по которому будут доступны статьи
-
Создать два шаблона article.blade.php и catalog.blade.php в соответствующей параметру $viewFolder папке. Аналогично нефильтруемым статьям
- Создать шаблон фильтров, который необходимо будет подключить на странице каталога. Желательно разместить его в views/partials, для того чтобы можно было подключать один шаблон фильтров на всех каталогах. Неполный пример такого шаблона: