Как выделить новые записи для вернувшихся посетителей в WordPress

Вы когда-нибудь задумывались, каким образом популярные сайты выделяют новые записи для вернувшихся посетителей? Это замечательный способ помочь пользователям обнаружить новый контент и увеличить количество просмотров ваших страниц. В этой статье мы покажем вам как выделить новые записи для вернувшихся посетителей в WordPress.

new-since-last-visit[1]

Зачем выделять новые записи для вернувшихся посетителей?

Вернувшиеся посетители — это обычно те пользователи, которым по душе ваш контент и они пришли за свежей «порцией» новенького. Однако большинство из этих пользователей проведут несколько секунд на странице и уйдут, если не найдут для себя ничего интересного.

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

Подготовка

Первым делом вам необходимо скопировать и вставить следующий код в файл functions.php вашей темы или в плагин для сайта WordPress:

function wpb_lastvisit_the_title ( $title, $id ) {

if ( !in_the_loop() || is_singular() || get_post_type( $id ) == 'page' ) return $title;

// если нет куки, то просто возвращаем заголовок

if ( !isset($_COOKIE['lastvisit']) ||  $_COOKIE['lastvisit'] == '' ) return $title;
$lastvisit = $_COOKIE['lastvisit'];
$publish_date = get_post_time( 'U', true, $id );
if ($publish_date > $lastvisit) $title .= '<span class="new-article">Новое</span>';
return $title;

}

add_filter( 'the_title', 'wpb_lastvisit_the_title', 10, 2);

// Устанавливаем куки lastvisit

function wpb_lastvisit_set_cookie() {

if ( is_admin() ) return;
$current = current_time( 'timestamp', 1);
setcookie( 'lastvisit', $current, time()+60+60*24*7, COOKIEPATH, COOKIE_DOMAIN );
}

add_action( 'init', 'wpb_lastvisit_set_cookie' );

Этот код ищет куки под названием lastvisit, когда пользователь переходит на ваш сайт. Если код не находит куки, то он устанавливает новое — с текущим временем.

Если же он находит печеньку, то добавляет метку «Новое» к заголовку тех записей, которые были опубликованы со времени его последнего посещения.

Учтите, что в коде есть класс new-article в теге <span> вокруг метки «Новое». Мы будем использовать этот класс для стилизации текста с помощью CSS.

Следующий код CSS мы использовали на демо. Просто скопируйте и вставьте его в файл таблицы стилей вашей темы.

.new-article {
background: #feffdd;
padding: 3px;
border: 1px solid #eeefd2;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
margin-left:5px;
font-size: small;
font-weight: bold;
}

Мы надеемся, что эта статья помогла вам выделить новые записи для вернувшихся посетителей в WordPress. Экспериментируйте с кодом, изменяя выделенный текст и CSS до достижения необходимого вам результата.

Возможно, вам также пригодится наша статья о том, как вывести последние просмотренные записи для пользователя в WordPress для пользователя.

По всем вопросам и отзывам просьба писать в комментарии ниже.

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

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)

Об авторе ADv

Занимаюсь разработкой сайтов и магазинов на WordPress. Оказываю платные помощь и консультации. Skype: advokat_b
  • Сергей Трошин

    Вставил ваш код, все работает, но для вернувшихся посетителей заголовок статьи выводится так:
    Новое»>Заголовок Новое

    Как это исправить?

    • Сергей Трошин

      Проблему удалось решить заменив Новое на

      Новое

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

Scroll To Top