Automattic\WooCommerce\Internal\EmailEditor\PersonalizationTags

UnsubscribeTagsProvider::register_tags │ public │ WC 1.0

Register unsubscribe tags with the registry.

Method of the class: UnsubscribeTagsProvider{}

No Hooks.

Returns

void. Nothing (null).

Usage

$UnsubscribeTagsProvider = new UnsubscribeTagsProvider();
$UnsubscribeTagsProvider->register_tags( $registry ): void;
$registry(Personalization_Tags_Registry) (required)
The personalization tags registry.

UnsubscribeTagsProvider::register_tags() code WC 11.1.2

public function register_tags( Personalization_Tags_Registry $registry ): void {
	$registry->register(
		new Personalization_Tag(
			__( 'Unsubscribe URL', 'woocommerce' ),
			'woocommerce/email-unsubscribe-url',
			__( 'Unsubscribe', 'woocommerce' ),
			function ( array $context ): string {
				$wc_email = $context['wc_email'] ?? null;
				if ( ! $wc_email instanceof WC_Email ) {
					return '';
				}
				if ( ! is_callable( array( $wc_email, 'get_unsubscribe_url' ) ) ) {
					return '';
				}
				return (string) $wc_email->get_unsubscribe_url();
			},
			array(),
			null,
			array( Integration::EMAIL_POST_TYPE ),
		)
	);
}