session = WP_Session::get_instance(); return $this->session; } /** * Retrieve session ID * * @access public * @since 2.9.18 * @return string Session ID */ public function get_id() { return $this->session->session_id; } /** * Retrieve a session variable * * @access public * @since 2.9.18 * @param string $key Session key * @return string Session variable */ public function get( $key ) { $key = sanitize_key( $key ); return isset( $this->session[ $key ] ) ? maybe_unserialize( $this->session[ $key ] ) : false; } /** * Set a session variable * * @since 2.9.18 * @param string $key Session key * @param integer $value Session variable * @return string Session variable */ public function set( $key, $value ) { /* * Manually Set Cookie */ $this->session->set_cookie(); $key = sanitize_key( $key ); if ( is_array( $value ) ) { $this->session[ $key ] = serialize( $value ); } else { $this->session[ $key ] = $value; } return $this->session[ $key ]; } /** * Delete a session variable * * @since 2.9.28 * @param string $key * @return void */ public function delete() { delete_option( '_wp_session_' . $this->session->session_id ); delete_option( '_wp_session_expires_' . $this->session->session_id ); } /** * Force the cookie expiration variant time to 23 minutes * * @access public * @since 2.9.18 * @param int $exp Default expiration (1 hour) * @return int */ public function set_expiration_variant_time( $exp ) { return 60 * 23; } /** * Force the cookie expiration time to 24 minutes * * @access public * @since 2.9.18 * @param int $exp Default expiration (1 hour) * @return int */ public function set_expiration_time( $exp ) { return 60 * 24; } }