Download the PHP package bug32/yii2-static-url without Composer
On this page you can find all versions of the php package bug32/yii2-static-url. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download bug32/yii2-static-url
More information about bug32/yii2-static-url
Files in bug32/yii2-static-url
Package yii2-static-url
Short Description Yii2 extension for managing static URLs with database storage and automatic URL routing
License MIT
Informations about the package yii2-static-url
Yii2 Static URL Extension
Yii2-расширение для управления статическими URL с хранением в базе данных и автоматической интеграцией с маршрутизацией URL.
Возможности
- Хранение в базе данных: Сохраняет статические URL с контроллером, действием и параметрами.
- Автоматическая маршрутизация: Бесшовная интеграция с urlManager Yii2.
- Кэширование: Встроенное кэширование для оптимальной производительности.
- Админка: Полноценный CRUD-интерфейс для управления статическими URL.
- Консольные команды: Инструменты для управления через консоль.
- Вспомогательные функции: Удобные хелперы для создания статических URL.
- SEO-дружелюбность: Создание чистых, SEO-оптимизированных URL.
- Гибкие параметры: Поддержка JSON-параметров и query-строк.
Установка
Через Composer
Ручная установка
- Скачайте расширение.
- Распакуйте в директорию
extensions/
вашего проекта. -
Добавьте в секцию autoload вашего composer.json:
- Выполните
composer dump-autoload
.
Конфигурация
Базовая настройка
Добавьте расширение в конфиг приложения:
Настройка для backend (опционально)
Для административного интерфейса:
Расширенная настройка
Вы можете тонко настроить модуль для разных окружений:
Пример: Конфиг для production
Пример: Конфиг для разработки
Пример: Консольный конфиг
Пример: интеграция с urlManager
Доступные параметры
enableAdminInterface
(bool) — Включить/выключить админкуenableConsoleCommands
(bool) — Включить/выключить консольные командыadminRoute
(string) — Маршрут для админкиdefaultStatus
(int) — Статус по умолчанию для новых URLurlValidationPattern
(string) — Регулярка для проверки URLcacheEnabled
(bool) — Включить/выключить кэшированиеcacheDuration
(int) — Время жизни кэша в секундахautoClearCache
(bool) — Автоочистка кэша при изменениях
Миграция базы данных
Выполните миграцию для создания нужной таблицы:
Использование
В представлениях и контроллерах
Консольные команды
Админка
Админка доступна по адресу: your-domain.com/static-url/backend/
Структура базы данных
Колонка | Тип | Описание |
---|---|---|
id | int | Первичный ключ |
url | varchar(255) | Статический URL (уникальный) |
controller | varchar(100) | Имя контроллера |
action | varchar(100) | Имя действия |
params | json | JSON-параметры |
status | smallint | Статус (10=активен, 0=неактивен) |
created_at | timestamp | Дата создания |
updated_at | timestamp | Дата обновления |
Примеры
Базовый статический URL
Статический URL с параметрами
Статический URL с дополнительными параметрами
API
StaticUrlHelper
to(string $route, array $params = [], bool $scheme = false): string
Создает статический URL для указанного маршрута.
$route
: Маршрут контроллер/действие (например, 'site/about')$params
: Дополнительные параметры$scheme
: Создавать абсолютный URL
toAbsolute(string $route, array $params = []): string
Создает абсолютный статический URL.
isStaticUrl(string $url): bool
Проверяет, является ли указанный URL статическим.
getRouteForUrl(string $url): ?string
Получает маршрут для статического URL.
getAllStaticUrls(): array
Получает все активные статические URL.
StaticUrl (модель)
getParamsArray(): array
Получает параметры как массив.
setParamsArray(array $params): void
Устанавливает параметры из массива.
getRoute(): string
Получает полный маршрут (контроллер/действие).
getStatusList(): array
Получает список доступных статусов.
Производительность
Расширение использует in-memory кэширование для статических URL для максимальной производительности. Кэш автоматически очищается при изменениях через админку или консольные команды.
Безопасность
- Валидация URL гарантирует, что разрешены только безопасные символы.
- Уникальность URL предотвращает дублирование.
- Статус позволяет временно отключать URL.
- JSON-параметры валидируются при сохранении.
Вклад
- Форкните репозиторий.
- Создайте ветку для новой фичи.
- Внесите изменения.
- Добавьте тесты.
- Оформите pull request.
Лицензия
Расширение распространяется под лицензией MIT. Подробнее см. LICENSE.
Поддержка
Changelog
1.0.0
- Первый релиз
- Базовая работа со статическими URL
- Админка
- Консольные команды
- Вспомогательные функции
- Поддержка кэширования