Обсудить задачу
← Все записи

Разработка

Региональность на WordPress: собственный плагин для сайта «Фасады & Пластики»

Разработали плагин WordPress для региональных версий сайта: переменные в текстах и шаблонах, контакты и дополнения к метаданным для каждого города.

Для сайта «Фасады & Пластики» возникла задача подготовить региональные версии под несколько городов. На страницах должны были меняться контакты, названия регионов в текстах, заголовки и метаданные. Для этого мы разработали собственный плагин WordPress с управлением регионами и переменными из панели сайта.

Задача: региональные страницы для SEO-продвижения

Основной сайт fasady76.ru ориентирован на Ярославль. План предусматривал версии для других городов на отдельных поддоменах: например, ivanovo.fasady76.ru для Иваново.

Региональность нужна была для дальнейшего SEO-продвижения. На странице мебельных фасадов следовало использовать название соответствующего города: «Мебельные фасады в Ярославле», «Мебельные фасады в Иваново» или «Мебельные фасады в Костроме». Аналогичный подход требовался для пластика HPL и других направлений каталога.

Вручную переписывать каждую страницу под каждый город было бы неудобно. Мы хотели сохранить общую структуру и содержание сайта, а региональные фрагменты задавать через переменные. Это касалось и видимого текста, и H1, и Title с Description.

Почему решили написать свой плагин

Мы искали готовое решение для WordPress под эту схему: добавление регионов, определение города по поддомену и подстановка собственных переменных в разные элементы сайта. Подходящего варианта для нашей задачи не нашли и приняли решение разработать свой плагин.

В основе оставили понятную модель: у каждого региона есть поддомен и набор значений. Владелец сайта управляет ими в админке, а плагин выбирает нужные данные при открытии региональной версии.

Регионы и переменные в панели управления

В настройках можно добавить город, указать его поддомен и заполнить региональные данные. Например, для Иваново — поддомен ivanovo, название города, телефон, адрес и другие значения.

Список переменных не ограничен контактами. Можно создавать свой набор под содержание сайта: название города, форму «в Иваново», подпись к блоку, региональную часть предложения или другой фрагмент текста.

Для каждого региона одна и та же переменная получает своё значение. Условно переменная city_in хранит «в Ярославле» для основной версии, «в Иваново» для Иваново и «в Костроме» для Костромы. Формы названий задаются отдельно — их не нужно автоматически склонять при выводе.

Воссозданный интерфейс плагина региональности WordPress: переменные и метаданные
Воссозданный интерфейс настроек: регионы, переменные и дополнения к метаданным. Контактные данные условные.

Подстановка в текстах, заголовках и шаблонах

После настройки переменные можно размещать в разных частях сайта. Одна используется в шапке для телефона, другая — на странице контактов, третья — в заголовке или описании категории каталога.

Например, в общем тексте страницы задаётся фраза «Мебельные фасады {city_in}». На версии для Ярославля посетитель видит «Мебельные фасады в Ярославле», а на версии для Иваново — «Мебельные фасады в Иваново». Так же можно составить региональный заголовок для пластика HPL.

Это иллюстрация принципа подстановки; запись {city_in} здесь условная.

Общую часть текста при этом сохраняем, а региональный фрагмент берём из настроек. Если телефон встречается в нескольких блоках, его достаточно изменить в данных нужного города: обновлённое значение будет использоваться во всех местах, где размещена соответствующая переменная.

Региональные дополнения к Title и Description

Отдельно предусмотрели настройки для метаданных. У каждого региона можно задать свои дополнения к Title и Description, которые используются при формировании региональной версии страницы.

Например, к названию категории «Мебельные фасады» добавляется «в Иваново». Для Description задаётся региональная приписка о продукции в этом городе. Данные для Ярославля и Костромы заполняются отдельно.

Так региональные элементы заголовков и описаний управляются через настройки плагина. Их не приходится вручную менять на каждой странице поддомена.

Что меняется для посетителя

Посетитель открывает региональный поддомен и видит знакомый сайт с данными выбранного города. На примере страницы контактов это телефон в шапке, название города и адрес. В каталоге тот же принцип применяется к региональным фрагментам заголовков и текстов.

Воссозданная региональная страница контактов для Иваново
Пример региональной страницы для Иваново. Интерфейс воссоздан, контактные данные условные.

Плагин разработан, но на основном сайте пока не внедрён. Поэтому в статье показываем воссозданные интерфейсы, которые объясняют его устройство. Разработка подготовила управление региональными данными для дальнейшего запуска поддоменов.

Сайт проекта: fasady76.ru.

Самолёт · цифровая студия

Расскажите о задаче.

Сайт, продвижение или программное решение — обсудим цель и следующий шаг.