BSF_UTM_Analytics::update_referer( string $referer, string $product )

This function updates value of referer and product in option bsf_product_referer in form of key value pair as ‘product’ => ‘referer’


Description


Parameters

$referer

(string) (Required) slug of the product which is refering another product.

$product

(string) (Required) slug of the product which is refered.


Return

(void)


Source

File: inc/lib/bsf-analytics/modules/utm-analytics.php

		public static function update_referer( $referer, $product ) {
	
			$slugs       = [
				'referer' => $referer,
				'product' => $product,
			];
			$error_count = 0;
	
			foreach ( $slugs as $type => $slug ) {
				if ( ! self::is_valid_bsf_product_slug( $slug ) ) {
					error_log( sprintf( 'Invalid %1$s slug provided "%2$s", does not match bsf_product_slugs', $type, $slug ) ); // phpcs:ignore WordPress.PHP.DevelopmentFunctions.error_log_error_log -- adding logs in case of failure will help in debugging.
					$error_count++;
				}
			}
	
			if ( $error_count > 0 ) {
				return;
			}
	
			$slugs = array_map( 'sanitize_text_field', $slugs );
	
			$bsf_product_referers = get_option( BSF_UTM_ANALYTICS_REFERER, [] );
			if ( ! is_array( $bsf_product_referers ) ) {
				$bsf_product_referers = [];
			}
	
			$bsf_product_referers[ $slugs['product'] ] = $slugs['referer'];
	
			update_option( BSF_UTM_ANALYTICS_REFERER, $bsf_product_referers );
		}

Changelog

Changelog
Version Description
1.1.10 Introduced.


User Contributed Notes

You must log in before being able to contribute a note or feedback.