acf_add_url_utm_tags()ACF 6.0.0

Add UTM tracking tags to internal ACF URLs

Хуки из функции

Возвращает

Строку.

Использование

acf_add_url_utm_tags( $url, $campaign, $content, $anchor, $source, $medium );
$url(строка) (обязательный)
The URL to be tagged.
$campaign(строка) (обязательный)
The campaign tag.
$content(строка) (обязательный)
The UTM content tag.
$anchor(true|false)
An optional anchor ID.
По умолчанию: false
$source(строка)
An optional UTM source tag.
По умолчанию: ''
$medium(строка)
An optional UTM medium tag.
По умолчанию: ''

Список изменений

С версии 6.0.0 Введена.

Код acf_add_url_utm_tags() ACF 6.4.2

function acf_add_url_utm_tags( $url, $campaign, $content, $anchor = false, $source = '', $medium = '' ) {
	$anchor_url = $anchor ? '#' . $anchor : '';
	$medium     = ! empty( $medium ) ? $medium : 'insideplugin';

	if ( empty( $source ) ) {
		$source = acf_is_pro() ? 'ACF PRO' : 'ACF Free';
	}

	$query = http_build_query(
		apply_filters(
			'acf/admin/acf_url_utm_parameters',
			array(
				'utm_source'   => $source,
				'utm_medium'   => $medium,
				'utm_campaign' => $campaign,
				'utm_content'  => $content,
			)
		)
	);

	if ( $query ) {
		if ( strpos( $url, '?' ) !== false ) {
			$query = '&' . $query;
		} else {
			$query = '?' . $query;
		}
	}

	return esc_url( $url . $query . $anchor_url );
}