Sign Docs WP Registry grade A. No security issues foundWP RegistryNo security issues foundOpen the reportA
WordPress plugin for signed document registration and verification
Install
Upload it under Plugins → Add New Plugin → Upload Plugin, then activate.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/igor-blag/sign-docs/releases/download/v0.5.1/sign-docs.zipПлагин для фиксации и проверки подписанных PDF-документов простой электронной подписью в WordPress.
Скачать последний релиз · Все релизы
Описание
Sign Docs хранит исходный PDF как контрольную копию, вычисляет серверный SHA-256, создаёт публичную копию с визуальной отметкой (штамп + QR-код) и показывает страницу проверки для каждого документа.
Разработан для образовательных организаций, подпадающих под Постановление Правительства РФ № 1802 (20.10.2021), требующее подписывать локальные акты простой электронной подписью и публиковать на официальном сайте.
Возможности
- Загрузка PDF-документов с подписанием через браузер (pdf-lib на стороне клиента)
- Серверный SHA-64 исходного файла — главный источник истины
- Двухфазная подпись: prepare (сохранение исходника) → штамп в браузере → complete (сохранение подписанной копии)
- Публичная страница проверки по адресу
/signed/{id}/с деталями документа и хешем - Клиентская проверка PDF по SHA-256 без загрузки на сервер
- QR-код, ведущий на страницу проверки
- Gutenberg-блок
sign-docs/documentдля встраивания документов - AI-автозаполнение реквизитов (опционально, требует WP AI Client + OpenRouter)
- Настраиваемая матрица названий документов
- Замена документов (новый документ помечает старый как «Заменён»)
- Таксономии: категория, тип, подразделение, институция
- Архив документов: вкладки «Актуальные / Архив / Все» вместо стандартных статусов «Опубликованные / Личные»
- Безвозвратное удаление документов вместе с файлами (только из архива)
- Управление правами на загрузку для редакторов
Требования
- WordPress 6.5+
- PHP 8.1+
- Современный браузер с JavaScript (для подписания PDF)
Установка
- Скачайте последний релиз.
- В админке WordPress: Плагины → Добавить новый → Загрузить плагин.
- Загрузите ZIP и активируйте.
- Перейдите в Sign Docs → Настройки и укажите подписанта и параметры штампа.
Ручная установка
bash tools/build-dist.sh
cp -r sign-docs /путь/к/wp-content/plugins/
Использование
- Sign Docs → Добавить документ.
- Выберите PDF-файл.
- Заполните реквизиты (категория, тип, дата, номер, название).
- Нажмите «Сохранить и подписать» (браузер накладывает штамп через REST API) или «Сохранить без подписи».
- Страница проверки доступна по адресу
/signed/{id}/. - Используйте Gutenberg-блок «Документ» для встраивания документов в записи и страницы.
- Посетители могут проверить PDF на странице проверки, выбрав локальный файл.
Обновления
Плагин поддерживает самообновление из GitHub Releases. При публикации новой версии в админке появится уведомление об обновлении.
Структура проекта
sign-docs.php # Точка входа
includes/
class-plugin.php # Координатор, хуки
class-post-type.php # CPT
class-meta.php # Метаполя
class-taxonomies.php # Таксономии
class-storage.php # Файловое хранилище и SHA-256
class-translit.php # Транслитерация кириллицы в латинские имена
class-site-icon.php # Кэш иконки сайта для QR
class-title-template.php # Матрица названий
class-document-service.php # Создание и подписание документов
class-rest-controller.php # REST API
class-ai-metadata.php # AI-подсказки
class-verification-page.php # Страница проверки
class-settings.php # Настройки
class-admin.php # Админка
class-blocks.php # Gutenberg-блок
class-usage-index.php # Индекс использования
class-updater.php # Обновления из GitHub
assets/
js/ # Скрипты (admin-upload, document-block, public)
css/ # Стили
vendor/ # Сторонние библиотеки (pdf-lib, PDF.js, qrcode, fontkit)
docs/ # Документация модулей
tools/
build-dist.sh # Сборка дистрибутива
create-release.sh # Создание ZIP для релиза
Разработка
Сборка дистрибутива
bash tools/build-dist.sh
Создаёт чистую папку sign-docs/ с файлами, необходимыми для WordPress.
Создание релиза
bash tools/create-release.sh v0.3.0
gh release create v0.3.0 'sign-docs.zip#Sign Docs plugin' --title 'v0.3.0' --notes 'Что нового'
Тесты
php tests/run.php
Лицензия
GPL v2 или позднее.
Releases
10 releases. Each count is every asset in that release; expand a row for the breakdown.