CMS Development

JBrower
Member

How to create an option to hide publish date in blog post.

SOLVE

My customer is wanting the option to choose whether a blog post would show the publish date to the user.

I figure I could do this with Javascript but was hoping to avoid content manipulation post load.

One idea was to create a module for blog post settings but I don't know if I can access those variables outside of the module without Javascripting something.

Another option is to have something in the text of the post content that I can look for, say, at the end.  Then I can parse that in Hubl and do my magic from there, but that sounds pretty hacky. 😀

Any ideas?

0 Upvotes
1 Accepted solution
piersg
Solution
Key Advisor

How to create an option to hide publish date in blog post.

SOLVE

Hi @JBrower, I would add a boolean field to your blog template, which will show up in a blog post's editor, and then hide/display based on that:

 

<!--
   templateType: blog
   isAvailableForNewContent: true
   -->
{% boolean "hide_date" label='Hide the publish date?', value=False, export_to_template_context=True %}

{# rest of your blog template #}

 

 

Then wherever you're displaying your publish date do:

 

{% if widget_data.hide_date.value == false %}
    {{ content.publish_date|datetimeformat('%e %B %Y')}}
{% endif %}

 

 

This will work if you have your publish date in a blog post hero module that is imported into your blog template or used directly in the blog template.

View solution in original post

5 Replies 5
piersg
Solution
Key Advisor

How to create an option to hide publish date in blog post.

SOLVE

Hi @JBrower, I would add a boolean field to your blog template, which will show up in a blog post's editor, and then hide/display based on that:

 

<!--
   templateType: blog
   isAvailableForNewContent: true
   -->
{% boolean "hide_date" label='Hide the publish date?', value=False, export_to_template_context=True %}

{# rest of your blog template #}

 

 

Then wherever you're displaying your publish date do:

 

{% if widget_data.hide_date.value == false %}
    {{ content.publish_date|datetimeformat('%e %B %Y')}}
{% endif %}

 

 

This will work if you have your publish date in a blog post hero module that is imported into your blog template or used directly in the blog template.

RFougere
Member

How to create an option to hide publish date in blog post.

SOLVE

Hi there. I am looking for this same solution. Would you mind telling me exactly where in the template this code goes? I'd appreciate it. Cheers!

0 Upvotes
piersg
Key Advisor

How to create an option to hide publish date in blog post.

SOLVE

I tend to put these global template variables at the top before the opening <!doctype html>. Use the if statement wherever you need it.

0 Upvotes
RFougere
Member

How to create an option to hide publish date in blog post.

SOLVE
Sorry for the delay, and thank you so much for this! Cheers, Randy
0 Upvotes
JBrower
Member

How to create an option to hide publish date in blog post.

SOLVE

Wow, I did not know about the "export_to_template_context" attribute.  Thank you!