Блогер б: если заявление
Я хотел бы спросить, есть ли утверждение elseif в блоггере? Все, что я видел, это только если и еще, но не иначе.
Если нет оператора elseif, как я могу задать несколько условий для оператора if?
Например, в этом случае у меня есть 3 автора A B и C. Недавно к нам присоединились D и E, у меня есть код, так что если автор A B или C, он разместит их соответствующие изображения
<b:if cond='data:post.author == "Author-A"'>
<img class='ava' height='100'
src='img-URL-1'
width='100'/>
</b:if>
<b:if cond='data:post.author == "Author-B"'>
<img class='ava' height='100'
src='img-URL-2'
width='100'/>
</b:if>
и так далее. Но если автор не A B или C, CSS может испортить мой пост в блоге, поэтому я подумал об использовании elseif для этого, и если elseif недоступно в этом случае, я подумал добавить его после кода выше
<b:if cond='data:post.author != "Author-A" && "Author-B" && "Author-C"'>
<img class='ava' height='100'
src='else-IMG-URL'
width='100'/>
</b:if>
Но я попробовал это, и это, кажется, не работает, говорит && недействительно. Любая идея, что я должен положить, чтобы использовать как или?
4 ответа
Переведенный в псевдокод, вы логически скорее хотите сделать следующее:
if (author != A && author != B && author != C)
и, следовательно, не то, что вы пытались
if (author != A && B && C)
<b:if cond='condition1'>
Do something for 1
<b:else/>
<b:if cond='condition2'>
Do something for 2
<b:else/>
<b:if cond='condition3'>
Do something for 3
<b:else/>
Do something for others
</b:if>
</b:if>
</b:if>
Если вы хотите сделать логическое завершение, используйте этот формат:
<b:if cond='condition 1'>
<b:if cond='condition 2'>
contents go here
</b:if>
</b:if>
Возможно, вам нужно указать &&
как &&
?
Это должно устранить сообщение об ошибке, которое вы получаете. Скорее всего, вам все равно придется решить логическую проблему, указанную BalusC.