Зачем нужен автоматический отчет по аналитике на сайте WordPress
Любой владелец сайта на WordPress заинтересован в понимании поведения посетителей, эффективности маркетинговых кампаний и технических показателей ресурса. Автоматические отчеты по аналитике позволяют систематизировать данные и получать их без ручного сбора, что экономит время и помогает быстрее принимать решения.
В этой статье разберем, как настроить автоматическую генерацию отчетов с данными Google Analytics (или других систем аналитики) прямо в админке WordPress, а также рассмотри примеры плагинов и кастомных PHP-решений для выгрузки и форматирования информации.
Обзор популярных плагинов для автоматизации отчетов по аналитике
Для начала стоит рассмотреть несколько плагинов, которые уже умеют интегрироваться с Google Analytics и способны формировать отчеты с расписанием:
- Analytify — удобный плагин с понятным интерфейсом, умеет показывать статистику по страницам, кампаниям и трафику, а также отправлять автоматические письма с отчетами.
- Google Analytics Dashboard for WP (GADWP) — бесплатный и популярный инструмент с возможностью отображения отчетов в админке и экспортом данных.
- WP Statistics — плагин, который не использует внешние сервисы, а собирает статистику самостоятельно, подходит для сайтов с ограничениями по GDPR.
Все эти плагины поддерживают экспорт данных в CSV или PDF и могут быть настроены на автоматическую отправку отчетов с нужной периодичностью.
Пример настройки автоматической отправки отчетов в Analytify
После установки и подключения Google Analytics в Analytify, перейдите в Settings > Emails. Там можно включить ежедневную, еженедельную или ежемесячную рассылку отчетов на указанный e-mail. Плагин автоматически сформирует сводку по основным метрикам: посещения, источники трафика, поведение пользователей.
Как сделать кастомный отчет по аналитике с помощью Google Analytics API и WordPress
Если готовые плагины не подходят, можно написать собственное решение с использованием Google Analytics Reporting API. Это даст гибкость в выборе метрик, периодов и форматах вывода.
Для работы с API нужно выполнить несколько шагов:
- Создать проект в Google Cloud Console, включить API Google Analytics Reporting и получить JSON-файл с учетными данными.
- Установить библиотеку Google Client для PHP через Composer.
- Написать функцию, которая авторизуется и запрашивает данные.
- Создать шорткод или виджет в WordPress для отображения отчета.
- Настроить WP Cron для периодической генерации и отправки отчетов по почте.
Пример функции для запроса посещаемости за последние 7 дней
function wp_puzzle_get_ga_report() {
require_once __DIR__ . '/vendor/autoload.php';
$client = new Google_Client();
$client->setAuthConfig(__DIR__ . '/credentials.json');
$client->addScope(Google_Service_Analytics::ANALYTICS_READONLY);
$analytics = new Google_Service_AnalyticsReporting($client);
$dateRange = new Google_Service_AnalyticsReporting_DateRange();
$dateRange->setStartDate('7daysAgo');
$dateRange->setEndDate('today');
$sessions = new Google_Service_AnalyticsReporting_Metric();
$sessions->setExpression('ga:sessions');
$sessions->setAlias('sessions');
$request = new Google_Service_AnalyticsReporting_ReportRequest();
$request->setViewId('YOUR_VIEW_ID');
$request->setDateRanges($dateRange);
$request->setMetrics(array($sessions));
$body = new Google_Service_AnalyticsReporting_GetReportsRequest();
$body->setReportRequests(array($request));
$reports = $analytics->reports->batchGet($body);
$sessionsCount = 0;
foreach ($reports as $report) {
$rows = $report->getData()->getRows();
foreach ($rows as $row) {
$metrics = $row->getMetrics();
foreach ($metrics as $metric) {
$sessionsCount += $metric->getValues()[0];
}
}
}
return $sessionsCount;
}Замените YOUR_VIEW_ID на ID вашего представления Google Analytics.
Дальше вы можете использовать эту функцию, чтобы формировать письмо с отчетом и отправлять его через стандартную функцию WordPress wp_mail().
Организация автоматической отправки отчетов по расписанию в WordPress
Чтобы автоматизировать процесс, используйте WP Cron. Пример регистрации события и функции для отправки отчета:
add_action('wp_puzzle_send_report_event', 'wp_puzzle_send_analytics_report');
function wp_puzzle_send_analytics_report() {
$sessions = wp_puzzle_get_ga_report();
$to = 'you@example.com';
$subject = 'Автоматический отчет по аналитике сайта';
$message = 'За последние 7 дней посещений: ' . $sessions;
wp_mail($to, $subject, $message);
}
if (!wp_next_scheduled('wp_puzzle_send_report_event')) {
wp_schedule_event(time(), 'daily', 'wp_puzzle_send_report_event');
}Этот код настроит ежедневную отправку письма с числом сессий за неделю.
Визуализация отчетов в админке WordPress
Для удобства можно добавить страницу в меню админки с отчетом в виде графиков. Для этого используйте add_menu_page и JS-библиотеки, например Chart.js, чтобы отобразить метрики.
Пример добавления подменю и рендера простого графика:
add_action('admin_menu', function() {
add_menu_page('Аналитика', 'Аналитика', 'manage_options', 'wp-puzzle-analytics', 'wp_puzzle_render_analytics_page');
});
function wp_puzzle_render_analytics_page() {
$sessions = wp_puzzle_get_ga_report();
?>
<div class="wrap">
<h1>Отчет по аналитике</h1>
<canvas id="sessionsChart"></canvas>
</div>
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<script>
const ctx = document.getElementById('sessionsChart').getContext('2d');
const chart = new Chart(ctx, {
type: 'bar',
data: {
labels: ['Последние 7 дней'],
datasets: [{
label: 'Сессии',
data: [<?php echo esc_js($sessions); ?>],
backgroundColor: 'rgba(54, 162, 235, 0.5)'
}]
},
options: { scales: { y: { beginAtZero: true } } }
});
</script>
<?php
}Дополнительные советы по безопасности и производительности
При работе с Google API важно хранить учетные данные в безопасном месте вне публичного доступа. Не размещайте JSON-файл с ключами в корне сайта без ограничений.
Также стоит кешировать результаты запросов на стороне WordPress, чтобы не делать слишком частые обращения к API и не превысить лимиты.
Для кеширования можно использовать встроенный transient API:
function wp_puzzle_get_cached_ga_report() {
$cache_key = 'wp_puzzle_ga_report';
$cached = get_transient($cache_key);
if ($cached !== false) {
return $cached;
}
$report = wp_puzzle_get_ga_report();
set_transient($cache_key, $report, HOUR_IN_SECONDS);
return $report;
}Это позволит обновлять данные не чаще раза в час, что оптимально для большинства задач.
Выводы и практическое применение
Создание автоматических отчетов по аналитике в WordPress — задача вполне выполнимая как с помощью готовых плагинов, так и кастомных решений. Гибкость и удобство зависят от ваших целей и навыков.
Для большинства проектов достаточно настроить плагин Analytify или GADWP с автоматической рассылкой. Если же требуется индивидуальный набор метрик и формат отчетов, рекомендуем использовать Google Analytics API с собственным кодом, как показано в примерах выше.
При правильной организации вы получите регулярно обновляемые данные, которые помогут быстро оценивать эффективность сайта и принимать решения по развитию.
Для более продвинутых сайтов можно подключить плагин Clearfy Pro с функцией оптимизации и интеграции, а для создания интерактивных отчетов использовать WPCommunity или JournalX для оформления в админке.
Подробнее о полезных плагинах и сервисах для WordPress ищите на WPSHOP.ru.