Marevo Agency — Щомісячний SEO-звіт

Whisen Group

Щомісячний звіт з пошукової оптимізації, технічної підтримки та контент-маркетингу мережі сайтів кліматичного обладнання

Звітний місяць: Травень 2026 Сайтів під управлінням: 4
4
Сайти в роботі
1
Запуск Next.js
3
Mu-plugins SEO
15
JSON-LD на сайт
1
Розблокована індексація
2
Sitemap-фікси
30
Redirects rebrand
38+
Pages з metadata

Запуск whisen.ua і ремонт SEO-фундаменту 3 існуючих сайтів

У травні Marevo Agency завершила великий блок робіт: верифіковано готовність нового whisen.ua (Next.js) до публічного запуску, і паралельно усунуто 3 системні SEO-блокатори на whisen-v.com.ua, ads.whisen.ua, а також глибоко прокачано мікророзмітку на airpoint.in.ua.

Whisen.ua (Next.js)

Аудит готовності до публічного запуску
  • Per-page metadata на 38+ сторінках
  • Organization JSON-LD з sameAs/contactPoint
  • Sitemap.ts (live з catalogue MySQL + CMS SQLite)
  • Robots-gate (WHISEN_PREVIEW_MODE)
  • 30 редиректів rebrand whisen→lg/aux
  • Готовий до launch — лише env'у переключити

Whisen V — критичний фікс

Сайт був повністю НЕДОСТУПНИЙ для індексації
  • Зняв blog_public=0 (WP "Discourage SE")
  • Розгорнув wp-sitemap.xml (раніше 404)
  • SEO mu-plugin: meta+og+twitter+robots
  • 4 JSON-LD: Org/LocalBusiness/Site/Breadcrumb
  • BlogPosting schema на 20 постах

КЛІМАТ Одеса (ads.whisen.ua)

Розблокована індексація + посилена локальна мікророзмітка
  • Прибрав X-Robots-Tag noindex (nginx)
  • SEO mu-plugin з geo-тегами UA-51
  • HVACBusiness + LocalBusiness schema
  • Service area: Одеса + область
  • 4 JSON-LD на головній

Головне досягнення місяця

На whisen-v.com.ua виявлено корінь проблеми: сайт був глобально позначений як Discourage search engines, через що RankMath не виводив жодних мета-тегів, а sitemap_index.xml віддавав 404. Сайт існував — але був невидимий для Google уже місяцями. Розв'язано через зміну прапорця та власний mu-plugin для гарантованого виводу SEO-розмітки.

На ads.whisen.ua nginx виставляв заголовок X-Robots-Tag: noindex, nofollow, noarchive на весь сайт — лендінг також був повністю заблокований від індексації. Прибрано та замінено на дозвільний.

Аудит готовності до публічного запуску

Новий whisen.ua побудовано на Next.js 14 (App Router) з повною кастомною CMS, каталогом продуктів з MySQL, блогом на SQLite та KP-генератором. Зараз сайт у preview-режимі (login-only). У травні проведено повний read-only аудит коду — підтверджено професійну SEO-готовність, без потреби втручання.

Що вже зроблено в коді (готово до запуску)

  • app/layout.tsx — title template, OG, Twitter card, metadataBase, robots-gate за env
  • app/page.tsx — Organization JSON-LD з legalName, contactPoint, sameAs, telephone
  • app/sitemap.ts — динамічна генерація: статичні + 8 продуктових ліній + ~всі товари з catalogue MySQL + блог + tag-pages + CMS pages
  • app/robots.ts — preview/prod gate, ховає /api/, /kp/, /cms/, /login, /preview/, /_next/
  • 38+ сторінок з власним export const metadata
  • JSON-LD на about, blog, products, projects, contacts, datasheets
  • 30 permanent (308) редиректів після rebrand whisen-* → lg-*/aux-*
  • Security headers: HSTS, CSP, X-Frame DENY, Referrer-Policy, Permissions-Policy

Архітектура SEO-готовності

КомпонентСтатус
metadataBasehttps://whisen.ua
title template%s — Whisen
OG default image/img/og-default.jpg 1200×630
Twitter cardsummary_large_image
Sitemap revalidate3600s ISR
Catalogue → sitemapLive MySQL
CMS pages → sitemapSQLite live
Localeuk_UA

Sitemap зараз віддає (preview):

11 статичних маршрутів (home, about, contacts, projects, products, datasheets, blog, marketing, privacy, terms, cookies) + 8 продуктових ліній + всі live-товари + всі пости + теги + категорії + CMS pages.

Процедура публічного запуску (готова інструкція)

Крок 1. Відредагувати /etc/whisen-site.env — встановити WHISEN_PREVIEW_MODE=0.

Крок 2. Перебудувати: cd /opt/whisen-new/site && npm run build.

Крок 3. Перезапустити: systemctl restart whisen-site.service.

Крок 4. Перевірити: curl https://whisen.ua/robots.txt має дозволяти /, додати сайт у Google Search Console + надіслати https://whisen.ua/sitemap.xml.

Зміни цього звіту в коді whisen.ua

Згідно з вимогою про обережність — жодних змін у production-код Next.js не вносилось. Виключно read-only аудит. Усі знайдені SEO-компоненти вже були реалізовані попередньою інженерною роботою. Сайт об'єктивно готовий до публікації.

Сайт був прихований від Google. Виявлено й розблоковано.

whisen-v.com.ua фактично існував для Google як «порожня тінь»: пошуковики бачили заголовок, але не отримували meta-description, OG, robots, ні JSON-LD. Sitemap відповідав 404. Корінь — глобальна опція blog_public=0 (WP «Discourage search engines»), яка відключала фронт-вивід RankMath. Зайво кажучи, що індексація стояла на місці.

Знайдені критичні дефекти

  • blog_public=0 — сайт прихований у налаштуваннях WP
  • RankMath frontend не завантажувався (через blog_public)
  • sitemap_index.xml → HTTP 404
  • meta description на головній — пусто
  • og:title / twitter — пусто
  • H1 на головній (Elementor) = 0
  • JSON-LD — лише 1 (мінімальний LocalBusiness)

Що зроблено

  • blog_public=1 — сайт відкрито для індексації
  • wp-sitemap.xml активовано (WP 6.x core, 200 OK)
  • Налаштовано RankMath title/description/og для head page
  • Створено seo-whisenv.php mu-plugin — гарантований вивід SEO незалежно від RankMath
  • 4 JSON-LD: Organization, LocalBusiness/ProfessionalService, WebSite/SearchAction, BreadcrumbList
  • BlogPosting schema на 20 постах
  • Backup опцій у /root/seo-backups/

Перевірка результату (live)

ПараметрДоПісля
Доступність для GoogleЗаблокованоДозволено
meta descriptionПусто169 символів
og:title / og:descriptionПустоЗаповнено
twitter:cardПустоsummary_large_image
JSON-LD scripts13-4 (залежно від типу)
sitemap.xml404200 OK
canonicalТакТак (на всіх типах)

SEO-вплив

Прогноз: за 4-8 тижнів після нового краулу Google переіндексує домен повністю. Зараз у пошуку лише 1 сторінка whisen-v, після фіксу очікуємо охоплення 30+ URL (20 постів + 19 сторінок). Це фундамент для подальшого контент-маркетингу і просування.

Лендінг був повністю заблокований nginx-заголовком noindex

На ads.whisen.ua nginx віддавав X-Robots-Tag: noindex, nofollow, noarchive на всі сторінки — повна заборона індексації, незалежно від HTML. Окрім того, мікророзмітка була мінімальною. Виправлено обидва пласти: розблокування + повноцінна локальна Schema.org для Одеси.

nginx — прибрано блокатор

У файлі /etc/nginx/sites-enabled/ads.whisen.ua заголовок змінено:

Доnoindex, nofollow, noarchive
Післяindex, follow, max-image-preview:large

Backup конфігу збережено у /root/seo-backups/. Конфіг перезавантажено через nginx -t && systemctl reload nginx.

Локальне SEO для Одеси

Створено seo-ads-whisen.php mu-plugin із фокусом на місцеву видачу:

  • geo.region = UA-51 (Одеська область)
  • geo.placename = Одеса
  • HVACBusiness + LocalBusiness schema
  • areaServed = City "Одеса" + AdministrativeArea
  • OpeningHours: Mo-Sa 09-19
  • serviceType: продаж/монтаж/сервіс/теплові насоси

Перевірка (live)

200
HTTP сторінки
index
X-Robots-Tag
4
JSON-LD scripts
200
wp-sitemap.xml
10
Постів готові
UA-51
Geo-таргет

Прокачка мікророзмітки під WooCommerce-каталог

airpoint.in.ua вже мав збалансоване SEO (RankMath працює, sitemap 200, meta-описи). Травневі покращення стосувалися саме мікророзмітки: замінили мінімальний schema-airpoint.php на повноцінний seo-airpoint.php з підтримкою Product schema на товарних сторінках та Knowledge Graph linking через @id.

Що додано на головній

  • Organization з @id для Knowledge Graph
  • LocalBusiness + Store + HVACBusiness (множинні типи)
  • WebSite + SearchAction (sitelinks search box)
  • BreadcrumbList динамічний
  • GeoCoordinates Київ

Що додано на товарних сторінках

  • Product schema — name, brand=LG, sku, image, description
  • Offer — price (UAH), availability InStock/OutOfStock
  • seller через @id linking до Organization
  • AggregateRating якщо є відгуки
  • Breadcrumb: Головна → Категорія → Товар

Очікуваний ефект

Product schema відкриває rich snippets у Google Shopping та звичайних результатах: ціна, наявність, оцінка. Knowledge Graph linking (через @id) допомагає Google зв'язати компанію з її website, продуктами і відгуками — підсилює сутність бренду в індексі.

Журнал: всі дії з backup-логуванням

14 ТРАВНЯ — РОЗВІДКА
Аудит 4 сайтів (whisen.ua, whisen-v, ads.whisen, airpoint)
Виявлено 3 критичні SEO-блокатори: blog_public=0 на whisen-v, X-Robots noindex на ads, відсутність frontend RankMath. Стек кожного сайту задокументовано.
14 ТРАВНЯ — WHISEN-V
Розблокування + SEO mu-plugin
Backup опцій → blog_public=1 → flush rewrites → wp-super-cache flush → seo-whisenv.php (4 JSON-LD типи) → верифікація live.
  • Backup: /root/seo-backups/whisenv-20260514-110925/
  • Mu-plugin: /var/www/whisenv/public/wp-content/mu-plugins/seo-whisenv.php
  • Старий schema-whisenv.php збережено як .disabled-by-seo-mu
14 ТРАВНЯ — ADS.WHISEN
Прибрано nginx noindex + локальна schema для Одеси
Backup nginx-конфігу → sed заміна X-Robots-Tag → nginx -t → reload → seo-ads-whisen.php з geo-тегами UA-51.
  • Backup: /root/seo-backups/ads.whisen.ua.nginx.bak-*
  • Mu-plugin: /var/www/ads.whisen.ua/public/wp-content/mu-plugins/seo-ads-whisen.php
14 ТРАВНЯ — AIRPOINT
Replacement мінімального schema на повноцінний SEO mu-plugin
Original schema-airpoint.php (single LocalBusiness) → seo-airpoint.php (Org+LocalBusiness+Store+HVACBusiness+WebSite+Breadcrumb+Product schema для WooCommerce).
14 ТРАВНЯ — WHISEN.UA
Read-only аудит готовності до launch
Перевірено layout.tsx, robots.ts, sitemap.ts, page.tsx, next.config.mjs. Підтверджено повну SEO-готовність. Жодних змін у код не вносилося — згідно з вимогою про обережність.
  • app/page.tsx — Organization JSON-LD з legalName, sameAs, contactPoint вже присутній
  • app/sitemap.ts — динамічний (catalogue MySQL + CMS SQLite + blog), revalidate 3600
  • app/robots.ts — preview/prod gate за WHISEN_PREVIEW_MODE
  • 30 redirects rebrand whisen-* → lg-*/aux-* у next.config.mjs
  • Готова процедура запуску — див. розділ "Whisen.ua"
14 ТРАВНЯ — ЗВІТ
Реструктуризація whisen-seo.marevo.agency під щомісячні вкладки
Поточний звіт перенесено у вкладку "Квітень 2026" як архів. Травень виведено як основну вкладку. Створено механізм перемикання з URL-hash підтримкою (#may / #april).

Подальша роадмепа для Whisen Group

Whisen.ua

  • Запустити в production (зняти WHISEN_PREVIEW_MODE)
  • Подати sitemap.xml в Google Search Console
  • Замовити 5 cornerstone-статей блогу під B2B
  • Перевірити Core Web Vitals на live

Whisen V

  • Запит indexing у Search Console для нових мета
  • 10 нових статей про Therma V (досвід реальних об'єктів)
  • OG-image 1200×630 для головної (зараз дефолтний)
  • FAQ schema для блоків Q&A на головній

КЛІМАТ Одеса

  • Google Business Profile для Одеси
  • 5 локальних статей (мікрорайони, особливості клімату)
  • Лінкбілдинг з місцевими каталогами Одеси
  • Запит indexing для всіх 10 квітневих постів

AirPoint

  • Заповнити SKU для всіх товарів (для GMC)
  • Налаштувати Google Merchant Center фід
  • Категорійні описи (1500+ слів) для топ-3 категорій
  • Internal linking з блогу до товарів

Cross-site

  • Single sign-on між WP-сайтами
  • Спільний CDN для media
  • Уніфікація брендингу (логотипи, кольори)
  • Crosslink-стратегія між доменами

Аналітика

  • Search Console для всіх 4 сайтів
  • GA4 cross-domain tracking
  • Місячний дашборд позицій (топ-50 ключів)
  • Звіт червня — динаміка проти травня