Если вы хотите помочь посетителям найти новое содержимое и повысить количество просмотров страниц, то можете воспользоваться способом, описанным ниже. Он не требует подключения новых плагинов, всего две правки кода темы, используемой в блоге.
Создадим две функции, которые будут проверять, является ли пост новым относительно последней даты посещения, и если является, то добавляющей к названию поста приставку, показывающую, что пост для посетителя действительно новый.
Добавьте в файл functions.php используемой вами темы:
function tpp_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', 'tpp_lastvisit_the_title', 10, 2); function tpp_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', 'tpp_lastvisit_set_cookie' );
Строчка 6 содержит приставку к названию поста, которая добавляется, если пост новый.
Строчка 15 этого кода содержит подсчет времени, на протяжении которого пост будет считаться новым. Можете поиграть с этой величиной, чтобы установить оптимальное для своего блога время новизны поста.
Давайте создадим оформление для элемента new-article. Для этого добавьте в файл style.css:
.new-article {color:#E51400;}
Тут вы можете проявить фантазию, придумав яркое оформление, сразу попадающее в поле зрения.
Как работает этот код? Для определения новизны поста используются куки. Посетитель заходит на сайт, и сайт, ориентируясь на куки, вычисляет, какие посты были опубликованы во время отсутствия посетителя с прошлого раза. Если куки посетителя не были обнаружены, то посты не выделяются, как новые.
