Друзья, есть задача - необходимо сохранять просмотренные посты в Wordpress, например, есть страница, которая выдает рандомно одну запись, таких записей будет около 3000, собственно вопрос, как можно реализовать возможность, которая будет сохранять для определенного пользователя просмотренные записи и при последующем просмотре страницы, которая рандомно выдает 3000 записей по одному, исключить те, которые пользователь отметил как сохраненные.
ну например писать в сессию, а если вообще сохранить на максимально долгий срок, то проставить cookie и сохранять данные на уровне бд с привязкой к cookie
Записи большие? И как часто они меняются? Раз в день, раз в минуту.. Могу предположить сохранить массив ключей записей. Потом нечто
$arr = [1,2,3,...];
array_shuffle($arr);
$db->query("select * from posts where id = array_pop($arr)");
Пишите в базу, таблица:
user_id | article_id | datetime | type_id
type_id - integer метка просмотрена, в закладках, "больше не показывать" и т.д.
тогда выборку из БД проще делать, что бы вывести например только не просмотренные или только избранные, последние просмотренные и т.д.