Problem beim Suchergebnis

In „…/search/index.tpl“ ist vorgesehen, folgende Überschrift auszugeben: [code]{block name=‚frontend_search_index_headline‘}

{s name=‚SearchHeadline‘}Zu „{$sSearchTerm|escape}“ wurden {$sSearchResultsNum|escape} Artikel gefunden{/s}

{/block}[/code]Angezeigt wird aber nur: Zu „“ wurden Artikel gefunden! Der kompilierte Smarty-Code für diesen Bereich sieht sehr merkwürdig aus: [code]

<?php $_smarty_tpl->smarty->_tag_stack = array(‚snippet‘, array(‚name‘=>‚SearchHeadline‘,‚default‘=>'Zu „{$sSearchTerm}“ wurden {sSearchResultsNum} Artikel gefunden')); _block_repeat=true; smarty_block_snippet(array(‚name‘=>‚SearchHeadline‘,‚default‘=>'Zu „{$sSearchTerm}“ wurden {sSearchResultsNum} Artikel gefunden'), null, _smarty_tpl->smarty, \_block\_repeat, _smarty_tpl);while (\_block\_repeat) { ob\_start();?\> Zu "<?php echo _smarty_tpl->getVariable(‚sRequests‘)->value[‚sSearch‘];?> " wurden <?php echo _smarty_tpl->getVariable('sSearchResults')-\>value['sArticlesCount'];?\> Artikel gefunden!<?php _block_content = ob_get_clean(); $_block_repeat=false; echo smarty_block_snippet(array(‚name‘=>‚SearchHeadline‘,‚default‘=>'Zu „{$sSearchTerm}“ wurden {sSearchResultsNum} Artikel gefunden'), _block_content, \_smarty\_tpl-\>smarty, _block_repeat, \_smarty\_tpl); } array\_pop(_smarty_tpl->smarty->_tag_stack);?>

[/code] In der Konsole sehe ich, dass die verwendeten Variablen an das Template übergeben werden sSearchResultsNum 5 sSearchTerm Sergio Tacchini Handtasche Das kompilierte Template gibt aber ganz andere Variablen aus: \_smarty\_tpl-\>getVariable('sRequests')-\>value['sSearch'] und _smarty_tpl->getVariable(‚sSearchResults‘)->value[‚sArticlesCount‘] Was läuft da verkehrt? EDIT: Erwarten würde man folgende Parameterausgaben: \_smarty\_tpl-\>getVariable('sSearchTerm')-\>value und _smarty_tpl->getVariable(‚sSearchResultsNum‘)->value die auch im kompilierten Template verfügbar sind… EDIT: Habe die Headlinie mal zu [code] {block name=‚frontend_search_index_headline‘}

Zu „{$sSearchTerm|escape}“ wurden {$sSearchResultsNum|escape} Artikel gefunden

{/block} [/code]geändert, und damit funktioniert’s! Folgerung: Mit der „s“-Funktion stimmt was nicht in diesem Kontext…

Hi, ich denke bei der ist der Snippet “SearchHeadline” doppelt vergeben und das Tenmplate gibt daher ausversehen das falsche Snippet aus der Ähnlichkeitssuche aus. Baue doch testweise einmal ein “force” in das Snippet ein: {s name=‘SearchHeadline’ force}. Dann nimmt er den originalen Inhalt des Snippets. Heiner

1 Like

[quote=„Heiner Lohaus“]Hi, ich denke bei der ist der Snippet „SearchHeadline“ doppelt vergeben und das Tenmplate gibt daher ausversehen das falsche Snippet aus der Ähnlichkeitssuche aus. Baue doch testweise einmal ein „force“ in das Snippet ein: {s name=‚SearchHeadline‘ force}. Dann nimmt er den originalen Inhalt des Snippets. Heiner[/quote] Ja, funktioniert tatsächlich, danke.