Dove vengono memorizzati i dettagli del carrello nel database?

4 set 2017, 15:49:32
Visualizzazioni: 23.7K
Voti: 5

Sono nuovo su WooCommerce, qualcuno può dirmi dove vengono memorizzati gli articoli del carrello nel database? Quali tabelle contengono i dettagli del carrello?

0
Tutte le risposte alla domanda 2
0

WooCommerce memorizza varie informazioni sul carrello in due modi diversi:

  1. Nell'oggetto $woocommerce (informazioni sulla sessione, dati del carrello, subtotale ecc.)
  2. Nella tabella del database chiamata persistent_cart che è dinamica... viene eliminata non appena viene completato il checkout.

Vediamo ora come accedere a queste informazioni... Per il primo tipo, basta dichiarare l'oggetto globale $woocommerce e utilizzare il seguente codice per visualizzare tutti i dettagli:

global $woocommerce;
echo "<pre>";
print_r($woocommerce);
exit;

Per il secondo tipo, è necessario recuperare i dati dalla tabella... quindi prima dichiariamo l'oggetto $wpdb di WordPress e scriviamo una query SQL per ottenere il risultato. Una cosa importante da notare è che i dati vengono memorizzati in formato serializzato nella tabella woocommerce_persistent_cart, quindi è necessario deserializzarli prima di utilizzarli. Solo allora potrai usarli. Ecco il codice per ottenere le informazioni del carrello dalla tabella:

global $wpdb;
$array = $wpdb->get_results("select meta_value from ".$wpdb->prefix."usermeta where meta_key='_woocommerce_persistent_cart'");
//print_r($array);
$data =$array[0]->meta_value;
$de=unserialize($data); 
4 set 2017 15:55:22
0

Penso che tutti gli articoli del carrello di WooCommerce siano memorizzati nella colonna session_value della tabella wp_woocommerce_sessions.

8 gen 2018 12:56:38