If statement 如何从两个或多个类别页面中排除元素?

If statement 如何从两个或多个类别页面中排除元素?,if-statement,smarty,prestashop,If Statement,Smarty,Prestashop,我已经在prestashop论坛上发布了这篇文章,但这似乎是一个更活跃的社区。所以我为双重张贴道歉。 原文在此- 这应该很简单,但我很困惑,不明白为什么这不起作用 我有一个链接出现在所有的分类页面上,但我需要列出一些没有出现的分类 我试过了 {if $category->id != 1433 OR $category->id != 6100} 及 及 这些都不起作用,当链接出现在这两个类别页面上时,if语句似乎被忽略了 但是 确实有效 那么,我如何在if语句中列出类别id,以包含我

我已经在prestashop论坛上发布了这篇文章,但这似乎是一个更活跃的社区。所以我为双重张贴道歉。 原文在此-

这应该很简单,但我很困惑,不明白为什么这不起作用

我有一个链接出现在所有的分类页面上,但我需要列出一些没有出现的分类

我试过了

{if $category->id != 1433 OR $category->id != 6100}

这些都不起作用,当链接出现在这两个类别页面上时,if语句似乎被忽略了

但是

确实有效

那么,我如何在if语句中列出类别id,以包含我需要的所有类别呢


谢谢

应该是with,而不是with或

{if $category->id != 1433 && $category->id != 6100}

如果您有更多的类ID,可以考虑使用类似于

的InArayAuy()函数。
{if !in_array($category->id, $banned_categories)}
您可以在模板中定义该数组(最坏情况),直接从控制器中对其进行签名(更好的情况),或者为设置要“禁止”的类别(最佳情况)执行UI

{if $category->id != 1433}
{if $category->id != 1433 && $category->id != 6100}
{if !in_array($category->id, $banned_categories)}