Я думаю, что в основном есть 3 варианта.
Файлы cookie (отправка файла cookie пользователю с помощью JavaScript / jQuery или PHP (setcookie ())) и надежда на сохранение файла cookie максимально долго.
Хранение предпочтений на уровне базы данных для каждого пользователя. @valya дал такое решение. Очевидным недостатком здесь является то, что каждый пользователь сайта, для которого вы хотите иметь предпочтения, должен войти в систему.
Сохранение предпочтения в базе данных по IP-адресу . Это решение довольно плохое, но в зависимости от ваших пользователей это может сработать. Таким образом, вы храните настройки для каждого IP-адреса. Пользователи с динамическим IP-адресом или несколькими пользователями с одним и тем же IP-адресом будут иметь неприятные последствия.