Smarty
Вопрос такого плана кстате. Что ты понимаешь под "вернувшимся гостем"?
Человек забил десяток позиций в корзину, случайно закрыл браузер - привет, все заново набирать (ведь человек "ушел и вернулся"). Человек повыбирал себе в корзину что-то, отложил на пару часов или отвлекся, потом рефрешит сайт и у него корзина опустела - но человек не "уходил" на самом деле.
Тут вопрос юзабилити - удобно ли это будет пользователю.
У меня например на экзисте в корзине уже 3-й день лежат запчасти которые я планирую оформить в заказ. И я надеюсь, что когда выберу время и вернусь на экзист - они все еще будут в корзине, т.к. впадлу искать каталожные номера.
То есть мое имхо (если тебе интересно) - я бы не хотел чтобы корзина сама чистилась. Лучше уж модальное окно какое сделать если я долго на сайте не был и у меня в корзине что-то есть.
Типа "У вас столько-то наименований в корзине, вы хотите продолжить покупки или очистить ее?"
А технически решать вопрос в том виде как он задан - это ставить куку на меньшее время скорее всего.