Libra Media работает на хостинге Beget. Хочешь свой сайт? Регистрируйся и получи любой тариф бесплатно на месяц!
Как вывести среднее время чтения текста в WordPress без плагинов

WordPress. Вывод среднего времени чтения без плагинов

Опубликовано: 14.06.2022
3 минуты на чтение

Наверняка вы уже замечали, что многие информационные сайты выводят информацию о времени, которое необходимо затратить на прочтение той или иной статьи. Бытует мнение, что в эпоху информационной перегруженности и вечной спешки такая информация положительно влияет на поведенческие факторы посетителей сайта и позволяет задержать их на сайте на более долгий период. Мол, человек видит, что чтение статьи отнимет всего лишь 2-3 минуты его драгоценного времени, успокаивается и спокойно проводит время на страницах вашего ресурса.

Трудно сказать как оно обстоит на самом деле. Однако реализовать строку с информацией о среднем времени прочтения нетрудно, во многих случаях она достаточно аккуратно вписывается на первый экран публикации, так что почему бы и нет?

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

Как рассчитывается среднее время чтения

Считается, что средний человек читает текст со скоростью 200-250 знаков в минуту. Конечно же реальная скорость чтение сильно зависит как от индивидуальных особенностей человека, так и от удобства восприятия текста на конкретной странице (шрифт и его размер, межстрочные интервалы, объемы параграфов, использование в текстах картинок или анимаций).

Однако, если мы подсчитаем общее количество слов в тексте и поделим их на 200, то у нас получится приблизительное время чтения статьи.

Подсчет количества слов и русскоязычные сайты

В Рунете легко наткнуться на позаимствованные с западных порталов инструкции, описывающие расчет времени чтения при использовании функции PHP str_word_count, позволяющей подсчитывать количество строк в строке.

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

Среднее время чтения на WordPress без плагинов

Я предлагаю использовать скорректированный код функции для подсчета времени чтения.

Нижеприведенную функцию нужно разместить в файле functions.php используемой темы:

function reading_time() {
  $content = get_post_field( 'post_content', $post->ID );
  $content_clean = strip_tags($content);
  $word_count = count(preg_split('/\s+/', $content_clean));
  $readingtime = ceil($word_count / 200);
  if ($readingtime == 1) {
    $timer = " минуту";
  } elseif ($readingtime == 2 || $readingtime == 3 || $readingtime == 4) {
    $timer = " минуты";
  } else {
    $timer = " минут";
  }
  $totalreadingtime = 'Чтение займет ' . $readingtime . $timer;

  return $totalreadingtime;
}

Данная функция получает общее количество слов в содержимом поста, удаляет HTML-теги и подсчитывает общее количество слов. Затем это количество делится на 200, и в зависимости от цифры выводится слово «минута» в нужном падеже.

А для вывода времени чтения нужно добавить вызов данной функции в нужном месте страницы:

<?php echo reading_time();?>

Вывод можно украсить, обернув функцию в контейнер с особым стилем оформления или добавив SVG-иконку перед текстом.

Заключение

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

Автор статьи:
Дмитрий
С 2013 года профессионально занимается созданием и продвижением коммерческих и информационных веб-сайтов. В 2018 году завел блог Libra Media, в котором делится опытом и практическими наработками в сфере SEO, администрирования серверов и доработок для сайтов на Bitrix и WordPress.
#WordPress

Оставьте комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *