innanzi tutto vedo proprio che si deve basare tutto sulle variabili $_SESSION in modo che ad esempio puoi utilzizare lo stesso codice articolo in tutte le pagine che vuoi..nel caso del carrello ad esempio basta che memorizzi un array di session e fai un ciclo per ogni indice per vedere gli articoli nel carrello; potresti anche memroizzare la data di visualizzazione di ognuno in modo che tramite un altro ciclo crei una query per ogni articolo visualizzato nei giorni precedenti, ad esempio

Codice PHP:
// valori da mettere in un array di session quando visualizzi un prodotto
$_SESSION['prodotti'] = $row['id_prod'] . '*' date('g-m-Y'); 
per ogni riga fai un ciclo for, dividi in due la stringa e fai una query per cercare le info e la foto del prodotto e visualizzi la data con query come la seguente:

Codice PHP:
foreach($_SESSION['prodotti'] as $key=>$value) {
  
$arr explode('*'$value);
  
$query "SELECT * FROM prodotti WHERE id=" $arr[0] . " AND dataVisualizzazione <= '" $arr[1] . "'"

e prosegui così per tutte le pagine che vuoi facendo un uso massiccio di variabili ed array $_SESSION