Here's an example of how you can use e-commerce cookies to store and retrieve data related to user shopping carts and preferences:
<script>
// Retrieve the shopping cart from the e-commerce cookie, or create a new one if it doesn't exist
var cart = getShoppingCart() || { items: [], total: 0 };
// Add an item to the shopping cart
function addToCart(item) {
cart.items.push(item);
cart.total += item.price;
// Update the e-commerce cookie with the new shopping cart data
setShoppingCart(cart);
}
// Get the user's preferred currency from the e-commerce cookie, or use the default currency if it doesn't exist
var currency = getPreferredCurrency() || "USD";
// Update the user's preferred currency
function setPreferredCurrency(newCurrency) {
currency = newCurrency;
// Update the e-commerce cookie with the new preferred currency
setPreferredCurrency(currency);
}
function getShoppingCart() {
// Get the value of the e-commerce cookie
var cookieName = "shoppingCart";
var cookies = document.cookie.split(';');
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i].trim();
if (cookie.indexOf(cookieName + '=') == 0) {
return JSON.parse(decodeURIComponent(cookie.substring(cookieName.length + 1)));
}
}
return null;
}
function setShoppingCart(cart) {
// Set the e-commerce cookie with the updated shopping cart data
document.cookie = "shoppingCart=" + encodeURIComponent(JSON.stringify(cart)) + "; path=/";
}
function getPreferredCurrency() {
// Get the value of the preferred currency cookie
var cookieName = "preferredCurrency";
var cookies = document.cookie.split(';');
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i].trim();
if (cookie.indexOf(cookieName + '=') == 0) {
return decodeURIComponent(cookie.substring(cookieName.length + 1));
}
}
return null;
}
function setPreferredCurrency(currency) {
// Set the preferred currency cookie
document.cookie = "preferredCurrency=" + encodeURIComponent(currency) + "; path=/";
}
</script>
In this example, we define a getShoppingCart()
function that retrieves the value of an e-commerce cookie and returns it as a JavaScript object. If the cookie doesn't exist, we return null
.
We also define a setShoppingCart()
function that updates the e-commerce cookie with new shopping cart data. We use JSON.stringify()
to convert the JavaScript object to a string before setting the cookie.
We define a similar pair of functions for the user's preferred currency, with getPreferredCurrency()
and setPreferredCurrency()
functions.
We use the addToCart()
function to add items to the shopping cart. We update the cart
object with the new item, and then call setShoppingCart()
to update the e-commerce cookie with the new shopping cart data.
Note that in this example, we set the path
attribute of the cookie to /
, which makes the cookie available to all pages on the same domain. If you want to restrict the cookie to a specific directory or set of pages, you can adjust this attribute accordingly.