WordPress как на ладони

Плагин просмотренных записей

Не подскажете, есть ли плагин, который будет выводить просмотренные записи, от конкретного компьютера, то есть, на данном компьютере, если мы посмотрели записи, то допустим в футере будут выводиться - записи которые вы посмотрели

0
Гость
9 лет назад
  • 2

    Для этого необязателен плагин. Можно делать записи в куки. В файле шаблона "single.php":

    //устанавливаем в браузер юзера куки-массив, "живущий" 1 час
    //необязательно писать $post->ID индексом массива; главное, чтобы каждый индекс был уникален
    setcookie('viewedProd[' . $post->ID . ']', $post->ID, time()+3600);

    В "footer.php" выведем названия просмотр. постов. Но Вы-то можете что угодно здесь вывести, ведь у Вас есть id всех просмотренных постов (в куки):

    if ( $_COOKIE['viewedProd'] ){
    	echo 'Вы просмотрели следующие посты:<br>';
    	foreach ($_COOKIE['viewedProd'] as $viewedProdId ){
    		$viewedProd = get_post( $viewedProdId );
    		echo $viewedProd->post_title . '<br>';
    	}
    }
    Евгений 7.2 года назад

    Помогите разобраться, делаю все как описано но в массив получаю только одно значение(текущей записи)

    Boolean Type 7.1 год назад

    Трудно сказать, я давно не работал с WP. Наскоро могу предположить, что проблема кроется в одном из следующих моментов:
    1) Вы зашли на страницу лишь одного поста;
    2) Вы зашли на страницу другого поста, когда куки для зайденного ранее уже "протухли";
    3) задайте дополнительно параметры path и domain в setcookie().

    MyKey 5.2 года назад

    Спасибо за помощь. У меня заработало, когда в функцию я добавил дополнительные

    <?php setcookie('viewedProd['. $post->ID .']', $post->ID, time()+3600, COOKIEPATH, COOKIE_DOMAIN, false);?>
    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация