Museum Exponaty Filter
WordPress plugin for exhibits: AJAX category filter, sidebar navigation, and pagination via shortcode. Built for a museum catalog.
by amals367 · github.com/amals367/museum-exponaty-filter · website
Install
No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:
wp plugin install https://github.com/amals367/museum-exponaty-filter/archive/refs/heads/main.zip📖 Обзор
Museum Exponaty Filter — плагин WordPress для вывода экспонатов (записей) с интерактивным фильтром по категориям, пагинацией и AJAX-подгрузкой контента без перезагрузки страницы.
✨ Возможности
- 🔴 Shortcode:
[museum_exponaty]— вставка блока на любую страницу - 🔴 Категории — фильтр по дочерним категориям родительской (например,
eksponaty) - 🔴 Плитки категорий — выбор категории с иконками (настраиваются в админке)
- 🔴 Каталог — карточки постов с миниатюрой, заголовком и отрывком
- ⚡ AJAX — смена категории и страницы без перезагрузки
- 🔴 Адаптив — мобильная панель фильтров, кнопка «Назад к категориям»
- 🔴 Настройки — исключение категорий из вывода, своя иконка на категорию
📁 Структура плагина
museum-exponaty-filter/
├── museum-exponaty-filter.php # Ядро плагина, shortcode, AJAX
├── includes/admin/ # Страница настроек (Экспонаты)
├── assets/ # CSS, JS для фронта и админки
│ ├── css/eksponaty-ui.css
│ ├── js/eksponaty-ui.js
│ └── exponaty.js # AJAX-логика
🚀 Установка и использование
📦 Установка[!TIP] Плагин подключается как обычный WordPress-плагин
1️⃣ Установка плагина
- Скопируйте папку
museum-exponaty-filterвwp-content/plugins/ - В админке WordPress: Плагины → Подключённые — включите Museum Exponaty Filter
2️⃣ Настройка категорий
- Создайте родительскую категорию (например, slug:
eksponaty) - Добавьте дочерние категории — они станут плитками и фильтрами
- Настройки → Экспонаты — исключите ненужные категории, загрузите иконки
3️⃣ Вывод на странице
Вставьте shortcode в контент страницы или шаблон:
[museum_exponaty]
С атрибутами:
[museum_exponaty base_category_slug="eksponaty" posts_per_page="20"]
| Атрибут | Описание | По умолчанию |
|---|---|---|
base_category_slug |
Slug родительской категории | eksponaty |
posts_per_page |
Записей на страницу | 20 |
🎨 Как это выглядит
graph LR
A[📄 Страница] -->|shortcode| B[🖼️ Плитки категорий]
B -->|клик| C[📂 Каталог + фильтры]
C -->|AJAX| D[📃 Карточки + пагинация]
style A fill:#4A90E2,stroke:#2c3e50,stroke-width:2px,color:#fff
style B fill:#FFD93D,stroke:#2c3e50,stroke-width:2px,color:#333
style C fill:#50C878,stroke:#2c3e50,stroke-width:2px,color:#fff
style D fill:#B19CD9,stroke:#2c3e50,stroke-width:2px,color:#fff
- Плитки — сетка категорий с иконками; при выборе открывается каталог
- Сайдбар — кнопки фильтров по категориям
- Сетка карточек — миниатюра, заголовок, отрывок; пагинация внизу
📸 Скриншоты
Страница «Экспонаты» — плитки категорий на фронте

Админка: Настройки → Экспонаты — настройка категорий и иконок

⚙️ Админка: Настройки → Экспонаты
[!NOTE] Доступно пользователям с правом
manage_options
| Действие | Описание |
|---|---|
| 🚫 Исключить из вывода | Категория не показывается в плитках и в фильтрах |
| 🖼️ Иконка категории | Загрузка изображения для плитки (Media Library) |
Опция хранится в museum_exponaty_exhibits_settings.
📜 Требования
- WordPress 5.0+
- PHP 7.4+
🤝 Участие в разработке
Мы рады контрибуциям! Ознакомьтесь с CONTRIBUTING.md — там описана настройка окружения, стиль кода и процесс Pull Request.
💬 Вопросы и идеи
Лицензия: MIT