Update README with sorting, admin flow, covers and cache-busting
This commit is contained in:
parent
fa3fb2c77c
commit
9635859c2e
22
README.md
22
README.md
|
|
@ -13,15 +13,16 @@
|
|||
```text
|
||||
photo-gallery/
|
||||
├─ index.php # основной скрипт: индексация + HTML
|
||||
├─ style.css # стили (material-like, строгий)
|
||||
├─ app.js # лайтбокс
|
||||
├─ deploy.php # webhook-триггер деплоя
|
||||
├─ admin.php # закрытая админка (папки + загрузка фото)
|
||||
├─ deploy-config.php.example # пример конфига webhook
|
||||
├─ photos/ # исходные фото по категориям (папкам)
|
||||
├─ thumbs/ # автогенерируемые превью
|
||||
├─ style.css # стили (material-like, строгий)
|
||||
├─ app.js # лайтбокс + защита от простого скачивания
|
||||
├─ deploy.php # webhook-триггер деплоя
|
||||
├─ admin.php # закрытая админка (папки/фото/сортировка)
|
||||
├─ deploy-config.php.example # пример конфига webhook
|
||||
├─ photos/ # исходные фото по категориям (папкам)
|
||||
├─ thumbs/ # автогенерируемые превью
|
||||
└─ data/
|
||||
└─ last_indexed.txt # timestamp последней индексации
|
||||
├─ last_indexed.txt # timestamp последней индексации
|
||||
└─ sort.json # порядок категорий и фото
|
||||
```
|
||||
|
||||
## Как работает индексация
|
||||
|
|
@ -37,6 +38,8 @@ photo-gallery/
|
|||
|
||||
Индексация выполняется **на каждом обращении к `index.php`**.
|
||||
|
||||
Также на публичной странице категории показываются с обложкой (берётся превью первой фотографии по текущей сортировке).
|
||||
|
||||
## Требования
|
||||
|
||||
- PHP 8.2+ (8.3 тоже ок)
|
||||
|
|
@ -117,6 +120,8 @@ https://<домен>/admin.php?token=<твой_секрет>
|
|||
- максимум 3 МБ на файл,
|
||||
- MIME-тип и расширение проверяются на сервере.
|
||||
|
||||
Загрузка новых фото выполняется в секции выбранной категории (чтобы нельзя было загрузить в неправильную папку).
|
||||
|
||||
## Удалённый запуск деплоя по ссылке (webhook)
|
||||
|
||||
1. На хостинге создай конфиг из примера:
|
||||
|
|
@ -142,4 +147,5 @@ https://<домен>/deploy.php?token=<твой_секрет>
|
|||
|
||||
- Превью генерируются в формате JPEG с качеством ~82.
|
||||
- При первом заходе на большую папку возможно небольшое ожидание (генерация превью).
|
||||
- CSS/JS подключаются с cache-busting параметром `?v=<filemtime>`, чтобы после деплоя пользователю не приходилось чистить кеш вручную.
|
||||
- Для production обычно лучше вынести индексацию в cron/очередь, но для текущей задачи это intentionally on-request.
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user