Введение в автоматические отчёты и их роль в WordPress
Автоматические отчёты позволяют систематизировать и регулярно получать важные данные с вашего сайта без ручного вмешательства. Это особенно полезно для сайтов с большим объёмом контента или активной пользовательской базой. В WordPress автоматизация отчётов может помочь в отслеживании активности, аналитике, статистике комментариев и многом другом.
Для реализации задачи можно использовать как собственный PHP-код, так и специализированные плагины, например, WPRemark, который хорошо подходит для сбора и визуализации отзывов и статистики.
Создание базовой системы автоматических отчётов на PHP
Запрос данных из базы WordPress
Для начала создадим функцию, которая будет вытягивать необходимые данные. Допустим, нам нужно получить количество комментариев за последние 7 дней.
function wptool_get_weekly_comments_count() {
global $wpdb;
$seven_days_ago = date('Y-m-d H:i:s', strtotime('-7 days'));
$count = $wpdb->get_var($wpdb->prepare(
"SELECT COUNT(*) FROM {$wpdb->comments} WHERE comment_date >= %s AND comment_approved = 1",
$seven_days_ago
));
return $count;
}Эта функция возвращает число одобренных комментариев за последнюю неделю. Такой подход можно применить и для других типов данных: постов, пользователей, заказов (если используется WooCommerce) и т.д.
Формирование отчёта и отправка по email
Чтобы отчёт приходил автоматически, создадим функцию для формирования текста и отправки письма.
function wptool_send_weekly_report() {
$comment_count = wptool_get_weekly_comments_count();
$to = get_option('admin_email');
$subject = 'Еженедельный отчёт сайта';
$message = "За последние 7 дней на сайте было оставлено {$comment_count} комментариев.";
wp_mail($to, $subject, $message);
}Для автоматизации вызова этой функции используем wp_cron — встроенный таск-менеджер WordPress.
Настройка wp_cron для автоматической отправки отчётов
function wptool_schedule_weekly_report() {
if (!wp_next_scheduled('wptool_weekly_report_event')) {
wp_schedule_event(time(), 'weekly', 'wptool_weekly_report_event');
}
}
add_action('wp', 'wptool_schedule_weekly_report');
add_action('wptool_weekly_report_event', 'wptool_send_weekly_report');Этот код будет запускать функцию отправки отчёта каждую неделю. Таким образом, администратор сайта будет получать актуальную статистику без лишних усилий.
Использование WPRemark для расширенной аналитики и отчётов
Возможности плагина WPRemark
WPRemark — плагин для сбора отзывов и аналитики пользовательской активности. Он позволяет автоматически собирать данные, генерировать отчёты и визуализировать статистику прямо в админке WordPress.
Если вы хотите расширить возможности базового PHP-скрипта, WPRemark станет отличным помощником. Он поддерживает экспорт статистики, фильтрацию по датам и интеграцию с другими плагинами.
Пример использования WPRemark для отчётов
После установки плагина можно настроить регулярный экспорт данных и отправку отчётов. Для этого:
- Перейдите в раздел WPRemark в админке.
- Настройте параметры сбора и фильтры данных (например, отзывы за последний месяц).
- Включите автоматическую отправку отчётов на email или экспорт CSV.
Для интеграции с собственным кодом WPRemark предоставляет API. Например, чтобы получить статистику по отзывам программно, можно использовать такой код:
function wptool_get_wpremark_stats() {
if (!class_exists('WPRemark\Stats')) {
return null;
}
$stats = WPRemark\Stats::get_instance();
$monthly_reviews = $stats->get_reviews_count(['period' => 'last_month']);
return $monthly_reviews;
}Этот пример показывает, как получить количество отзывов за последний месяц, чтобы включить данные в свои отчёты.
Расширенные идеи автоматизации отчётов в WordPress
Добавление графиков и визуализации
Для более наглядных отчётов можно интегрировать графики с помощью библиотек JavaScript, например Chart.js или Google Charts. С помощью wp_localize_script можно передать данные из PHP в JS и отобразить динамические диаграммы в административной панели или в письмах.
Отчёты по пользовательской активности и кастомным типам записей
Если на сайте используются кастомные типы записей (CPT) — например, проекты, товары или мероприятия — можно создавать отдельные отчёты по ним. Для этого достаточно адаптировать SQL-запросы и добавить соответствующие функции для сбора и обработки данных.
Пример функции для отчёта по кастомному типу записей
function wptool_get_custom_post_report($post_type = 'project') {
$args = [
'post_type' => $post_type,
'post_status' => 'publish',
'date_query' => [
['after' => '1 month ago']
],
'fields' => 'ids'
];
$query = new WP_Query($args);
return $query->found_posts;
}Эта функция возвращает количество опубликованных записей кастомного типа за последний месяц, что может быть полезно для отчётов по активности сайта.
Заключение по созданию автоматических отчётов в WordPress
Автоматизация отчётов — мощный инструмент для управления сайтом и анализа его работы. Используя PHP-код, wp_cron и плагины вроде WPRemark, вы можете создать гибкую и расширяемую систему, которая будет экономить время и предоставлять важную информацию в удобном формате.
Для удобства установки и настройки плагина WPRemark и других инструментов посетите официальную страницу плагина на WPSHOP.RU.