WC_Session_Handler::clone_session_dataprivateWC 1.0

Clones a session to the current session. Exclude customer details for privacy reasons.

Method of the class: WC_Session_Handler{}

No Hooks.

Returns

null. Nothing (null).

Usage

// private - for code of main (parent) class only
$result = $this->clone_session_data( $clone_from_customer_id );
$clone_from_customer_id(string) (required)
The customer ID to clone from.

WC_Session_Handler::clone_session_data() code WC 10.3.3

private function clone_session_data( string $clone_from_customer_id ) {
	$session_data                         = (array) $this->get_session( $clone_from_customer_id, array() );
	$session_data['previous_customer_id'] = $clone_from_customer_id;
	$session_data                         = array_diff_key( $session_data, array( 'customer' => true ) );
	$this->_data                          = $session_data;
	$this->_dirty                         = true;
	$this->save_data();
}