Page 1 of 1

Products search met field items...

Posted: Fri Oct 16, 2015 3:54 pm
by pedes
Hoi cmsms leden,

Ik heb een productlijst in de Products module, deze werkt super, maar ik had graag volgende uitbreiding en wil jullie vragen of iemand weet hoe ik dit kan verwezenlijken.

Ik heb een search maar met alle merken (uit een custom field) in en dat is nu wat lastig, want dat zijn er een heel reeks.
Hoe beperk ik de merkenlijst (ingevuld in het custom field van ieder product) tot enkel de producten die in die pagina voorkomen?

Dit is de seach die ik nu heb (en deze werkt ook, maar enkel is de lijst 'merknaam' te uitgebreid, ik wil dus enkel de merknamen die in de product list voorkomen op die pagina)

Code: Select all

{$formstart}
{foreach from=$searchprops key='fldname' item='obj'}
{if $fldname == 'merknaam'}
<div class="input-group input-group-lg">
	
<select name="{$actionid}cd_prodvalue[{$fldname}]" class="form-control" placeholder="Select...">
<option value="Selecteer">Zoek HIER op Merk</option>      
{html_options options=$obj->options}
      </select>
	<span class="input-group-btn">
	<button type="submit" name="{$actionid}cd_submit" class="btn btn-primary btn-lg"><i class="fa fa-search"></i></button>
	</span>
</div>
{/if}
{/foreach}
{$formend}
Alvast dank voor jullie input.
Mvg
Pete

Re: Products search met field items...

Posted: Fri Oct 16, 2015 9:46 pm
by velden
Ik denk dat je in het summary template van Products al moet beginnen met het vullen van bijvoorbeeld een array met merknamen die voorkomen.

Dit moet je dus eerder doen dan het aanroepen van de search functie.

Vervolgens heb je een methode nodig om uit $obj->options alleen de items te filteren die ook in de eerder gevulde array voorkomen.

Kan me voorstellen dat dat met een UDT kan, of misschien wel in de template zelf al door geen gebruik te maken van {html_options ...} maar zelf met een foreach er doorheen lopen en telkens checken of de een waarde van de 'options' in je array voorkomt.