inserting date into email template

SOLVE
vikram-mit
Participant

i have email template for our lead follow up emails where we usually suggest a date 2 business days of sending the email. currently, it is a pain to manually update the date every time we send email. is there a way to insert it dynamically the way we can do the personalization attributes?

1 Accepted solution

Accepted Solutions
amwilie
Solution
Key Advisor | Elite Partner

@LoraBergeron 

You can use the plus_time filter to get a future date from the current date, like so:

{% set future_date = local_dt|plus_time(21, 'days')%}
{{ datetimeformat(future_date, '%B %e, %Y') }}
border

Alyssa Wilie

Web Developer at LyntonWeb

If this answer solved your question, please mark it as the solution!

View solution in original post

14 Replies 14
kamlesh_k
Member | Diamond Partner

There is no token that you can use that inserts the date.

 

One thing you could try is a workflow to manage the email send. If you use a workflow then you can have a field with the date that triggers the email then you can use a personalization token for a date field.

 

0 Upvotes
fdasilva
Participant

Can we please get on creating such an option. Competitors like Salesloft and others have had this implemented for years. 

0 Upvotes
amwilie
Key Advisor | Elite Partner

@vikram-mit 

You don't need a personalization token or workflow. You just need one little line of HubL -

 

{{ datetimeformat(local_dt, '%B %e, %Y') }}

 


You can hardcode it into a module or you can even paste it into the HTML of a richtext module. Note: if placed in a richtext module it'll show as code in the page editor, but the date will be rendered in preview and on send). Ex:

Page Editor (Do not type directly into the rich text, open the source code)
email-date-03.png

email-date-02.png

 

Preview

email-date.png

 

 

 

 

 

 

 

 

 

 

border

Alyssa Wilie

Web Developer at LyntonWeb

If this answer solved your question, please mark it as the solution!

LoraBergeron
Contributor

Hi,

 

I need to add a variable date as well, but I'd like to add, for example, 21 days after the current date. I'm using this to communicate an expiration date that changes with an email send from a workflow.  It can't link to the content.update information.  It needs to link to whatever date the email is sent out.  Can you help me?

Thanks in advance,

Lora B

0 Upvotes
amwilie
Solution
Key Advisor | Elite Partner

@LoraBergeron 

You can use the plus_time filter to get a future date from the current date, like so:

{% set future_date = local_dt|plus_time(21, 'days')%}
{{ datetimeformat(future_date, '%B %e, %Y') }}
border

Alyssa Wilie

Web Developer at LyntonWeb

If this answer solved your question, please mark it as the solution!

View solution in original post

CCassidy
Member

This is great!!

I've been looking through HubL, some really good stuff. 

One more additional question on this one.

 

in a workflow within an email can I set the date as 'end of the month' for example: Available until the end of May

So then June arrives and it will prepopulate to now be Available until the end of June.

 

Thank you in advance.

0 Upvotes
amwilie
Key Advisor | Elite Partner

@CCassidy You can grab the current month like so :

{{ datetimeformat(local_dt, '%B') }} 

So at the time of me posting this that code would output "May" then on June 1st it'll start outputting "June".

border

Alyssa Wilie

Web Developer at LyntonWeb

If this answer solved your question, please mark it as the solution!

Glay_Imutan
Participant | Diamond Partner

Hello Alyssa,

 

Is there a way how to change the format of personalization tokens? For example, instead of 7/14/2022, the output will be Jul 14, 2022.

 
Here's what it looks like from the source code:

Screen Shot 2021-08-24 at 8.30.30 PM.png

 

Thank you in advance.

0 Upvotes
amwilie
Key Advisor | Elite Partner

@Glay_Imutan I believe using the filter instead of the function is better suited for personalization tokens:

 

{{ company.subscription_end_date|datetimeformat('%b %e, %Y') }}

 

 

border

Alyssa Wilie

Web Developer at LyntonWeb

If this answer solved your question, please mark it as the solution!

Glay_Imutan
Participant | Diamond Partner

That was fast! Thanks Alyssa. I tried the script above however I think I missed something? 

Here's what it looks like from the source code:

Screen Shot 2021-08-25 at 2.30.02 AM.png

It doesn't reflect the date as it should be. It appears blank on the "preview" mode:

 

Screen Shot 2021-08-25 at 1.56.26 AM.png

 

What could be the problem? 

amwilie
Key Advisor | Elite Partner

@Glay_Imutan Sorry, I completely missed that this post was about email. Unfortantely, Hubspot does not support formatting on contact properties in email. 😔

 

As stated in their documentation :
"Please note that using filters on any personalization variables (such as but not limited to contacts, company, and deal variables) is not currently supported for email in HubSpot due to how emails are rendered"

border

Alyssa Wilie

Web Developer at LyntonWeb

If this answer solved your question, please mark it as the solution!

Glay_Imutan
Participant | Diamond Partner

Oh no worries! thanks for checking and for helping me. Greatly appreciate your effort 😃

 

I'll just use zapier to do the format. 

spogue
Top Contributor

@amwilie This is really great, thanks for the solution. I'm curious to how this would work if I only wanted to show the next 4 business days? If its showing today (a Thursday), it would show Friday, Monday, and Tuesday. Is that possible through Hubl?  

0 Upvotes
LoraBergeron
Contributor

Thank you, thank you!!  Works perfectly!

0 Upvotes