Oui, mais ans la condition
{if preg_match("/Technical characteristics/", $CHAPO)}
La loop retourne affiche des résultats, donc le ifloop est déclenché.
La condition fait juste en sorte que le résultat ne s'affiche pas. Mais cela n'influence pas le ifloop.
Il y a une solution, mais elle n'est pas très propre. C'est de compter avant.
{$nbResult = 0}
{loop name="feature_technicalcharacteristics" type="feature" product=$ID}
{if preg_match("/Technical characteristics/", $CHAPO)}
{$nbResult = $nbResult + 1}
{/if}
{/loop}
{if $nbResult}
<div class="table-responsive">
<table class="table" border="0" cellspacing="5" cellpadding="0">
<tbody>
{loop name="feature_technicalcharacteristics" type="feature" product=$ID}
{if preg_match("/Technical characteristics/", $CHAPO)}
{ifloop rel="feature_value_technicalcharacteristics"}
<tr>
<td>{$TITLE}</td>
<td>:</td>
<td>
{loop name="feature_value_technicalcharacteristics" type="feature_value" feature=$ID product={product attr="id"}}
{if $LOOP_COUNT > 1}, {else} {/if}
{if $IS_FREE_TEXT == 1}{$FREE_TEXT_VALUE}{else}
{if $TITLE=="true"}<span class="glyphicon glyphicon-ok" aria-hidden="true"></span>{else}{$TITLE}{/if}
{/if}
{/loop}
</td>
</tr>
{/ifloop}
{/if}
{/loop}
</tbody>
</table>
</div>
{/if}
Sinon faut créer une loop en php qui étend la loupe feature et ajouter le comportement souhaité.
Tu peux aussi essayer d'utiliser ce module.
https://github.com/thelia-modules/FeatureType
Tu crées un type technical_characteristics
Tu l'associes à tes caractéristiques.
Puis après :
{loop name="feature_extend_feature_type" type="feature_extend_feature_type" feature_type_slug="technical_characteristics" product=$ID}
{/loop}
Si associé alors la loop boucle sinon non.
C'est à tester.