Кейс07 / 18
VISARH
Архитектурное бюро · кастомная тема WordPress · RO/RU/EN
VISARH это архитектурное бюро в Молдове. Дизайн уже был готов в виде React-прототипа, а моей задачей в RocketSEO было превратить его в тему WordPress, которую бюро редактирует само на румынском, русском и английском.
- Роль
- WordPress-разработчик
- Период
- июнь – окт. 2026
- Контекст
- Агентство · RocketSEO
- Формат
- Гибрид · Кишинёв
- WordPress
- PHP
- ACF Pro
- WPML
- Vanilla JS
- pdf.js
- BEM
Код клиента закрыт
visarh.mdнепубличныйСайт клиента без публичной ссылки, поэтому скриншота здесь нет
Задача
Прототип выглядел готовым, но все тексты и фото были зашиты в React-компоненты. Бюро нужны были те же страницы на WordPress, чтобы проекты, услуги, команду и клиентов вести из админки, а любой текст можно было перевести.
- Сохранить вид и поведение прототипа страница в страницу
- Проекты, услуги, команда и клиенты как контент, который бюро ведёт само
- Три языка без дублирования шаблонов
- Документы проекта можно читать на странице, а не только скачать
Что я сделал
Из React в WordPress
- Перенёс прототип страница за страницей в PHP-шаблоны с BEM-разметкой и чистым CSS на custom properties. В комментариях к коду указано, из какого React-компонента взята каждая часть.
- Четыре типа записей (портфолио, услуги, команда, клиенты) и иерархическая категория проектов с фильтром на странице портфолио.
- У сотрудников и клиентов нет отдельных страниц, поэтому такие адреса перенаправляются 301-м редиректом в архив.
Контент и языки
- Семь групп полей ACF в локальном JSON и страница настроек темы с контактами, картой и соцсетями.
- Конфиг WPML на 4 типа записей, 1 таксономию, 23 поля и 5 строк настроек, плюс файлы перевода RO и RU примерно на 100 строк темы.
- Небольшой CLI-скрипт, который пересобирает .pot и компилирует .po и .mo.
Страницы проектов
- У каждого проекта есть галерея с лайтбоксом, видео YouTube в приватном режиме и PDF-документы во вкладках.
- PDF показываются прямо на странице через pdf.js. Библиотека грузится только при открытии вкладки с документом, а страницы рендерятся по мере прокрутки.
- Общие CSS и JS грузятся везде, а каждый шаблон добавляет только свои файлы.
Результат
- типа контента, которые ведёт бюро
- 4
- языка через WPML
- 3
- групп полей ACF в локальном JSON
- 7
Тема написана без конструкторов страниц и без jQuery. Весь JavaScript это шесть небольших скриптов на чистом JS для шапки, меню, FAQ, карточек проектов, галереи и модалки команды.