MailPoet\EmailEditor\Engine\PersonalizationTags
Personalization_Tags_Registry{}
Registry for personalization tags.
Hooks from the class
Usage
$Personalization_Tags_Registry = new Personalization_Tags_Registry(); // use class methods
Methods
- public get_all()
- public get_by_token( string $token )
- public initialize()
- public register( Personalization_Tag $tag )
Personalization_Tags_Registry{} Personalization Tags Registry{} code WC 9.8.1
class Personalization_Tags_Registry { /** * List of registered personalization tags. * * @var Personalization_Tag[] */ private $tags = array(); /** * Initialize the personalization tags registry. * This method should be called only once. * * @return void */ public function initialize(): void { apply_filters( 'mailpoet_email_editor_register_personalization_tags', $this ); } /** * Register a new personalization instance in the registry. * * @param Personalization_Tag $tag The personalization tag to register. * @return void */ public function register( Personalization_Tag $tag ): void { if ( isset( $this->tags[ $tag->get_token() ] ) ) { return; } $this->tags[ $tag->get_token() ] = $tag; } /** * Retrieve a personalization tag by its token. * Example: get_by_token( 'user:first_name' ) will return the instance of Personalization_Tag with identical token. * * @param string $token The token of the personalization tag. * @return Personalization_Tag|null The array data or null if not found. */ public function get_by_token( string $token ): ?Personalization_Tag { return $this->tags[ $token ] ?? null; } /** * Retrieve all registered personalization tags. * * @return array List of all registered personalization tags. */ public function get_all() { return $this->tags; } }