Подумав некоторое время об этом, я обнаружил, что наилучшее решение (для меня) этого состоит в том, чтобы строка просто содержала все нужные мне аргументы в чистом URL.
Итак, когда пользователи впервые приходят на http://foo.com/, им предоставляется местоположение для выбора. На данный момент печенье пустое.
Итак, пользователь выбирает United-State, URL будет выглядеть как http://foo.com/12334_0_0_0/United-States/, а для файла cookie местоположения установлено значение 1234, которое является идентификатором местоположения United States.
Теперь пользователь выбирает Калифорнию, и URL меняется на http://foo.com/1235_0_0_0/United-States-California/, и cookie заменяется из Соединенных Штатов на 1235, который является идентификатором местоположения Калифорния. В этот момент пользователь выбирает категорию Электроника. поэтому URL меняется на http://foo.com/1235_3333_0_0/Electronics/, а 3333 сохраняется в категории Cookies.
Если пользователь опустится до зеркальной камеры, он увидит http://foo.com/1235_3344_0_0/SLR-Cameras/.
Таким образом, первая часть URL отслеживает до 4 аргументов, которые можно передавать, а имена (слагы) предназначены только для презентации и SEO.
Я думаю, это будет работать правильно? Было бы здорово, чтобы часть URL-адреса x_y_z_p была закодирована в некоторый случайный текст и декодирована обратно в аргументы и числа.
Дайте мне знать, что вы думаете?