Изображение в product.tpl только в некоторых категориях - PullRequest
0 голосов
/ 04 июля 2019

Я создал на своем сайте prestashop правило в файле product.tpl, чтобы показывать изображение только в определенных категориях.Учитывая количество участвующих категорий (тех, где изображение показано), я решил показать изображение во всех категориях, кроме некоторых.Я вставил этот код на страницу своего продукта:

{if $ category-> id! = 78 AND $ category-> id! = 64 AND $ category-> id! = 29 AND $ category-> id! = 91 AND $ category-> id! = 92 AND $ category- > id! = 93 AND $ category-> id! = 94 AND $ category-> id! = 95 AND $ category-> id! = 102 AND $ category-> id! = 17 AND $ category-> id! = 71 AND $ category-> id! = 106 AND $ category-> id! = 107 AND $ category-> id! = 109 AND $ category-> id! = 72 AND $ category-> id! = 101 AND $ category-> id! = 96 AND $ category-> id! = 97 AND $ category-> id! = 75 AND $ category-> id! = 69 AND $ category-> id! = 100 AND $ category-> id! = 73 AND $ category-> id! = 70 AND $ category-> id! = 65 AND $ category-> id! = 80 AND $ category-> id! = 81 AND $ category-> id! = 82 AND $ category-> id ! = 84 AND $ category-> id! = 83 AND $ category-> id! = 79 AND $ category-> id! = 110 AND $ category-> id! = 79 AND $ category-> id! = 111 AND $ category-> id! = 79 AND $ category-> id! = 112 AND $ category-> id! = 79 AND $ category-> id! = 113 AND $ category-> id! = 79 AND $ category-> id! = 66 AND $ category-> id! = 79 AND $ category-> id! = 85 AND $ category-> id! = 79 AND $ category-> id! = 86 AND $ category-> id! = 79 AND $ category-> id! = 87 AND $ category-> id! = 79 AND $ category-> id! = 90 AND $ category-> id! = 79 AND $ category-> id! = 67 AND $ category-> id! = 79 AND $ category-> id! = 68 AND $ category-> id! = 79 AND $ category-> id! = 74 AND $ category-> id! = 79 AND $ category-> id! = 104 AND $ category-> id! = 79 AND $ category-> id ! = 108 AND $ category-> id! = 79 AND $ category-> id! = 15 AND $ category-> id! = 79 AND $ category-> id! = 340 AND $ category-> id! = 1457 AND $ category-> id! = 1497 AND $ category-> id! = 1498 AND $ category-> id! = 1499 AND $ category-> id! = 1417 AND $ category-> id! = 1501 AND $ category-> id! = 1524}
          <Div> IMAGE </ div>

Этот режим работает, но он потребляет слишком много ресурсов на сервере, как я могу сделать то же самое более чистым способом?

Спасибо

Ответы [ 2 ]

2 голосов
/ 04 июля 2019

Сказал, что он не потребляет так много ресурсов, более чистый способ сделать это:

{php}
$excluded_categories_ids = [78, 64, ...];
{/php}

{if (!in_array($category->id, $excluded_categories_ids))}
    <div></div>
{endif}

Даже если я прочитал, что использование {php} устарело

ОБНОВЛЕНО

Поскольку тег {php} устарел, вы можете использовать это:

{assign var='excluded_categories_ids' value=[78, 64, ...]}
0 голосов
/ 05 июля 2019

Вы должны добавить все исключенные категории в переменную и затем протестировать ее:

{assign var='excluded_categories_ids' value=[78, 64, 29, 91, 92, 93 ...]}
{if (!in_array($category->id, $excluded_categories_ids))}
    <div>Image</div>
{endif}
...