Recent searches
No recent searches
Can the {{if}} expression in the help center supports comparison?
Answered
Posted Mar 09, 2016
The following if clause checks if the variable "name" exist.
{{#each categories}}
{{#if name}}name exists.{{/if}}
{{/each}}
Is there any way that i could use the expression as follows to see if the value is equal to some text
{{#if name equals "John"}} Hello John.{{/if}}
[OR]
{{#if name = "John"}} Hello John.{{/if}}
Also is there a page where i can get information about which object is available for which page and details about the expression language in the help center custom design.
0
15
15 comments
Tal Admon
{{#if}} helper does not supports conditions like equal, not equal, etc.
What you can do is use the {{#is}} helper within the {{#each}} to, for example, prevent a category from showing up in the categories list.
Here is an example on how to eliminate "Product Updates" from the categories list:
Note I have added the following after the {{#each categories}} - the "is" condition is empty, therefore nothing is rendered for the Product Updates category:
{{#is name 'Product Updates'}}
{{else}}
Hiding 'Product Updates':
Original:
This syntax is called Handlebars, and is also referenced in Zendesk help center:
https://developer.zendesk.com/apps/docs/help-center-templates/introduction#expressions
0
Kyle Bradley
How do you remove 2 categories?
{{#each categories}}
{{#is name 'FAQ' || 'Development'}} // I want 2 names here
{{else}}
{{/is}}
{{/each}}
0
Tal Admon
There are no logical operators in Handlebars.js...
Just add another nested {{#is}} - maybe others have a better idea?
{{#each categories}}
{{#is name 'Product Updates'}}
{{else}}
{{#is name 'General'}}
{{else}}
<section class="category">
....
</section>
{{/is}}
{{/is}}
{{/each}}
0
ModeratorWes
@Tal - No better ideas here, thats normally what I have to do.
0
Jo Grey
Does this work with app framework v1 or will this only work with v2? I am trying to use the {{#is}} block helper in a v1 app and it does not look like it is included in the installed block helpers, but you can't install additional helpers for a v1 app.
0
Andrew Dietrich
Hi Jo! Sounds like a unique use-case. I've opened up a ticket for further investigation on this -- you should receive an email shortly.
0
Jehan Zebafridi
@Andrew, it's a normal case in any programming language to have if, else if and else statement.
I found it very frustrating that there isn't very help material in Zendesk documentation for doing something like this. I have a scenario where I want to change the style of Section page. If section Id is 123, apply css class 123, else if section id is 456 apply css class 456, else apply css class 789.
I couldn't figure out a way of doing this.
0
Becca Schmidt
Hi Jehan-
If, else statements are possible in our templating language. This is discussed here: https://developer.zendesk.com/apps/docs/help-center-templates/introduction#conditional-helpers
A conditional is a block that's rendered based on whether a specified condition is true or false. You can use built-in Handlebars helpers to set up
if
andunless
constructs. You can also use the custom conditional helperis
to create equality conditions.A condition is usually a Help Center property such as
article.internal
, which has a boolean value of true or false. Some properties don't have boolean values.In regards to the CSS, you can add classes or ID and that target them to style one section different then another. For example:
In the HTML you could add the following:
And the following to the CSS:
More on this idea is discussed in this article; I recommend reading over the comments as well.
0
Sandro Alvares
HC is good easier, but to did zendesk apps not work {{#IS}} 🙁 ... how to make use {{#IF}} search value?
Code:
0
Becca Schmidt
Hi Sandro!
Sorry for the confusion here! The Help Center templating language, Curlybars, is a different product feature then the templating offered in our Zendesk Apps Framework V1. The
is
helper is something we custom developed for use within the Help Center templates and is not a default feature of Handlebars.js which is what the Apps Framework uses for templating.You can learn more about Handlebars.js in these resources:
From reviewing the first two resources above, it appears they offer an
if
andunless
helpers that would get you close to the functionality of the customis
helper in Curlybars.0
Sandro Alvares
Hum... really confused! What a different Curlybars vs Handlebars? i not wise its a linguage, learn always opened document zendesk ( https://developer.zendesk.com/apps/docs/help-center-templates/introduction )
Look:
What a wrong? its not work a code with EACH, please what is language said a doc? i can take confused a document, i think all wrong document, fault doc from zendesk.
Why do not you have a fixed document correct language?
Edit: Beautiful approval posting
0
Jessie Schutz
Hi Sandro!
Curlybars is a custom programming language that we built, based on Handlebars. It's not exactly the same as Handlebars.
Can you give us more information about what you're trying to do with your code?
0
Sandro Alvares
@Jessie,
hum... i understand a language just hc with Curlybars and no apps! too confused
i try did if/else/codition with each + filter search a word to extension hdbs (zendesk apps)
sry bad english
0
Mathieu Nicolaizeau
Hi Sandro,
I would like to help you but the problem you are facing is not very clear. If you need further assistance on this, I would recommend you to contact support@zendesk.com and explain in details your issue. Zendesk Support can speak Spanish if you feel more confortable using this language :)
Cheers,
Mathieu
0
Mathieu Nicolaizeau
I forgot to mention that Zendesk Support can speak Portuguese via email as well :)
0