﻿---
title: SEO-возможности и позиции
description: "Инструмент на Laravel + Filament: ключевые запросы с приоритетом, владельцем и статусом, отслеживание позиций и предупреждения о падении."
---

## Что это за сервис

Рабочий инструмент для SEO-специалиста, контент-редакторов и авторов. Он превращает список ключевых запросов в очередь задач: у каждого запроса есть приоритет, ответственный, следующее действие и статус, а позиции обновляются по расписанию. Данные о позициях и видимости по-прежнему приходят из панели для вебмастеров и SEO-сервисов.

Без такого сервиса выгрузки из поисковых консолей смотрят раз в неделю, и окно для быстрых улучшений закрывается. Запросы с высоким потенциалом висят в «сделать», потому что у них нет владельца. Страница проваливается на пять позиций, а это замечают по падению трафика. Авторы оптимизируют тексты под запросы, от которых SEO-команда отказалась два месяца назад.

Инструмент полезен сайтам с большим количеством страниц и несколькими авторами, где SEO — постоянная работа, а не разовый аудит.

## Что он делает

- **Ведёт реестр запросов.** Для каждого запроса видны целевая страница, текущая и прошлая позиция, частота, приоритет, тематический кластер и ответственный.
- **Превращает запрос в задачу.** Статусы — новый, в работе, заблокирован, достигнут, на поддержке — показывают, что происходит с каждой возможностью.
- **Предупреждает о падении.** Если запрос опустился на заданное число позиций за неделю, он переходит в «Под угрозой», а ответственный получает уведомление.
- **Держит данные свежими.** Позиции обновляются по расписанию, а запросы, которые не проверялись дольше трёх суток, помечаются.
- **Даёт авторам свой список.** Автор видит только запросы своего кластера и работает по тем же приоритетам, что и SEO-команда.

## Нюансы и особенности

- **Без владельца запрос не двигается.** Перевести запрос из «Новый» дальше можно только с назначенным ответственным; неназначенные возможности устаревают и уходят в архив.
- **«Под угрозой» определяется числом.** Порог вроде «минус пять позиций за семь дней» задают в настройках, чтобы статус ставили данные, а не интуиция.
- **Приоритеты пересчитывают регулярно.** Запрос, неважный в прошлом квартале, может стать быстрой победой в текущем. Пересчёт по частоте, позиции и ценности страницы запускают раз в неделю.
- **«Достигнут» — не конец.** Запрос, вышедший в первую десятку, переводят на поддержку и продолжают следить за ним; новое падение возвращает его в работу.
- **SEO-сервисы не заменяются.** Позиции загружают из поисковых консолей и SEO-сервисов через API или выгрузки. Готовые панели этих сервисов показывают данные, а здесь добавляется то, чего в них нет: владелец, статус и контроль зависших задач.
- **Несколько сайтов — одно поле.** Домен или кластер хранится колонкой, по ней строятся представления для каждой команды.
- **Доступ ограничивают на сервере.** Автор видит свой кластер, SEO-специалист — всё, выгрузка доступна только ему и руководителю.

## Как сгенерировать через ИИ-агентов

Промпты рассчитаны на AI-агента (Claude Code, Cursor и аналоги) в Laravel-проекте с установленным **Filament 4.x**. Отправляйте их по одному: каждый шаг даёт результат, который можно проверить до перехода к следующему.

### 1. Данные и модели

```text
Создай модели и миграции для реестра SEO-возможностей: Keyword (запрос,
домен, кластер, целевая страница, частота, приоритет, статус,
ответственный, следующее действие, дата последней проверки),
RankSnapshot (запрос, дата, позиция, источник), KeywordStatusChange
(запрос, из статуса, в статус, кто, когда). Добавь фабрики с демо-данными.
```

### 2. Ресурс и переходы статусов

```text
Сгенерируй Filament-ресурс для Keyword: таблица с позицией, изменением
за 7 дней, приоритетом, статусом и ответственным. Переход из «Новый»
запрещён без ответственного. В карточке покажи график позиций и историю
статусов. Добавь фильтры по домену, кластеру, статусу и ответственному.
```

### 3. Загрузка позиций

```text
Сделай фоновую задачу по расписанию, которая загружает позиции
из поисковой консоли и SEO-сервиса через API или CSV и пишет RankSnapshot.
Запросы без проверки дольше порога из конфига помечай «Данные устарели».
```

### 4. Предупреждения и пересчёт приоритета

```text
После каждой загрузки переводи в «Под угрозой» запросы, опустившиеся
на число позиций из конфига за 7 дней, и уведомляй ответственного.
Запрос на поддержке при таком падении возвращай в работу. Раз в неделю
пересчитывай приоритет по частоте, позиции и ценности страницы.
```

Проверьте на демо-данных, что запрос в первой десятке переходит на поддержку, а не пропадает из таблицы.

Проверьте, что повторная загрузка за тот же день не создаёт второй снимок позиций.

### 5. Роли и виджеты

```text
Настрой роли: автор видит запросы своего кластера, SEO-специалист —
все, выгрузка доступна SEO-специалисту и руководителю. Ограничение
действует в таблице, виджетах и экспорте. Добавь виджеты запросов
по статусам и списка «Под угрозой».
```

## Похожие сценарии

- [Эффективность контента](https://wpcraft.ru/kb/stacks/filament/use-cases/marketing/content-performance-dashboard.md) — как изменения позиций отражаются на трафике и лидах материалов.
- [Контент-календарь](https://wpcraft.ru/kb/stacks/filament/use-cases/marketing/content-calendar.md) — планирование новых и обновлённых материалов под выбранные запросы.
- [Сводка маркетинговых показателей](https://wpcraft.ru/kb/stacks/filament/use-cases/marketing/analytics-overview.md) — вклад органического поиска в общую картину.

## Материалы и источники

- [Refine: SEO Opportunity Tracker](https://refine.dev/use-cases/marketing/seo-opportunity-tracker/)
- [Filament 4.x: ресурсы](https://filamentphp.com/docs/4.x/resources/overview)
- [Filament 4.x: фильтры таблиц](https://filamentphp.com/docs/4.x/tables/filters/overview)
- [Filament 4.x: графики](https://filamentphp.com/docs/4.x/widgets/charts)
- [Filament 4.x: уведомления](https://filamentphp.com/docs/4.x/notifications/overview)