Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 09. Juni 2011 16:34

Cherry
arbeitet mit CMS/ms
Registriert: 15. Dezember 2010
Beiträge: 529

[GELÖST] Search Modul - Ausgabe limitieren

Hallo,

Kann man beim Search Modul die Ausgabe der Ergebnisse limitieren?
So daß man beispielsweise nur 10 Ergebnisse hätte?

VG
Cherry

Offline

#2 09. Juni 2011 16:53

engel1963
kennt CMS/ms
Registriert: 08. Dezember 2010
Beiträge: 105

Re: [GELÖST] Search Modul - Ausgabe limitieren

Ich würde im Modul in der Datenbankabfrage ein Limit setzen. Das heist, im Quellcode. Aber eventuell gibt es einen anderen Weg.

Offline

#3 10. Juni 2011 06:18

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: [GELÖST] Search Modul - Ausgabe limitieren

Du könntest im Ausgabe-Template des Suchmoduls die Anzahl der Durchläufe abfragen und damit beschränken (Stichwort index / iteration)

http://www.smarty.net/docsv2/en/languag … erty.index

Offline

#4 10. Juni 2011 06:50

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] Search Modul - Ausgabe limitieren

cyberman schrieb:

Du könntest im Ausgabe-Template des Suchmoduls die Anzahl der Durchläufe abfragen und damit beschränken (Stichwort index / iteration)

Allerdings musst du dazu das Resultat der foreach Schleife in eine if Abfrage stellen, da Smarty kein "break" unterstützt (zumindest soviel ich weiss).


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#5 10. Juni 2011 06:52

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Offline

#6 10. Juni 2011 07:05

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] Search Modul - Ausgabe limitieren

Danke für den Link. Erinnere mich gerade daran auch mal sowas gemacht zu haben. Allerdings leicht anders, wahrscheinlich als Funktion.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#7 10. Juni 2011 09:33

Cherry
arbeitet mit CMS/ms
Registriert: 15. Dezember 2010
Beiträge: 529

Re: [GELÖST] Search Modul - Ausgabe limitieren

Danke für eure Antworten.

Die SQL Abfrage zu limitieren hatte ich auch dran gedacht. Nur bleibt ja dann eigentlich die Relevanzprüfung auf der Strecke oder?

Das im Template zu machen gefällt mir von der Idee her.
Muß ich mir mal anschauen. Melde mich dann noch mal.

VG
Cherry

Offline

#8 10. Juni 2011 09:42

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: [GELÖST] Search Modul - Ausgabe limitieren

Hat den Vorteil, dass es beim nächsten Update nicht weg ist, obwohl es natürlich performanceseitig nur eingeschränkt empfehlenswert ist.

Besser wäre da die geänderte search-action in eine separate action auszulagern, damit es beim nächsten Update nicht überschrieben wird.

Offline

#9 11. Juni 2011 18:13

Cherry
arbeitet mit CMS/ms
Registriert: 15. Dezember 2010
Beiträge: 529

Re: [GELÖST] Search Modul - Ausgabe limitieren

So hier nun der Vollständigkeit halber mal meine Version vom Suchausgabetemplate:

[== Smarty ==]
<h3>Suchergebnisse f&uuml;r &quot;{$phrase}&quot;</h3>
<hr /> <br />
{if $itemcount > 0}
<ul>
    {foreach from=$results item=entry name=suchausgabe}
  
    {assign var="zaehler" value=$smarty.foreach.suchausgabe.iteration}
    {if $zaehler <=15}  
          {if (empty($entry->module)) || ($entry->module != 'Gallery')}{* von der Gallery nichts anzeigen *}
          <li>      
        <p>{$entry->title}</p>    
          <a href="{$entry->url}">{$entry->urltxt}</a> ({$entry->weight}%)
          <br /><hr /><br />
          </li>
          {/if}
      {/if}
    {/foreach}
</ul>
{* <p>{$timetaken}: {$timetook}</p> *}
{else}
<p><strong>{$noresultsfound}</strong></p>
{/if}

Habe es also mit der foreach.iteration gelöst. Funktioniert so wie ich es möchte. Danke für den Tipp.


VG
Cherry

Offline

#10 11. Juni 2011 19:26

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: [GELÖST] Search Modul - Ausgabe limitieren

Danke für deine vollständige Lösung - nur wäre eine separate Zuweisung an noch eine Variable nicht erforderlich gewesen wink (kostet unterm Strich nur Performance), also anstatt

[== Smarty ==]
    {assign var="zaehler" value=$smarty.foreach.suchausgabe.iteration}
    {if $zaehler <=15}  

besser gleich

[== Smarty ==]
    {if $smarty.foreach.suchausgabe.iteration<=15}  

Offline

#11 11. Juni 2011 19:52

Cherry
arbeitet mit CMS/ms
Registriert: 15. Dezember 2010
Beiträge: 529

Re: [GELÖST] Search Modul - Ausgabe limitieren

ahh super. Daß es so einfach gehen kann bin ich nicht drauf gekommen.
Besten Dank für den Tipp.

Offline