Skip to content

ScoredSearchEntryModel

Das ScoredSearchEntryModel-Modell repräsentiert ein einzelnes Suchergebnis mit einem berechneten Relevanz-Score. Es wird von der Suchfunktion in CrispyCMS verwendet, um Suchergebnisse nach ihrer Relevanz zu bewerten und zu sortieren.


Zweck

ScoredSearchEntryModel kapselt ein Suchergebnis (implementiert SearchResultEntryInterface) und ergänzt es um einen numerischen Score, der die Relevanz des Ergebnisses für die aktuelle Suchanfrage angibt.


Eigenschaften

  • entry: Das eigentliche Suchergebnis (z. B. ein SearchResultEntryModel)
  • score: Der berechnete Relevanzwert (float)

Methoden

getTitle(): string

Gibt den Titel des Suchergebnisses zurück.

getSnippet(): string

Gibt einen Auszug oder eine Kurzbeschreibung des Ergebnisses zurück.

getUrl(): string

Gibt die URL zum Suchergebnis zurück.

getSource(): string

Gibt die Quelle des Suchergebnisses zurück.

getCreatedAt(): Carbon

Gibt das Erstellungsdatum des Ergebnisses zurück.

getUpdatedAt(): Carbon

Gibt das Änderungsdatum des Ergebnisses zurück.

getScore(): float

Gibt den berechneten Relevanz-Score zurück.

toArray(): array

Gibt alle Felder des Suchergebnisses als Array zurück und ergänzt das Feld score.


Konstruktor

__construct(SearchResultEntryInterface $entry, float $score)

Erzeugt eine neue Instanz von ScoredSearchEntryModel.

Parameter:

  • $entry: Ein Objekt, das das Interface SearchResultEntryInterface implementiert (z. B. ein SearchResultEntryModel).
  • $score: Der berechnete Relevanzwert als float.

Verwendung:

$scoredEntry = new ScoredSearchEntryModel($searchResultEntry, 0.95);

Das Suchergebnis wird mit dem zugehörigen Score gekapselt und kann anschließend über die Methoden des Modells oder als Array ausgegeben werden.


Beispiel für die Rückgabe

Ein ScoredSearchEntryModel wird typischerweise als Array in Templates verwendet:

{
  "title": "Seitentitel",
  "snippet": "Kurzbeschreibung oder Auszug",
  "url": "/seite-url",
  "source": "Suchquelle",
  "createdAt": "2025-09-15 12:34:56",
  "updatedAt": "2025-09-15 12:34:56",
  "score": 0.98
}

Hinweise

  • Der Score ist ein relativer Wert und dient zur Sortierung der Ergebnisse nach Relevanz.
  • Die eigentlichen Daten stammen aus dem gekapselten Suchergebnis (entry).
  • Das Modell ist unveränderlich (final) und wird nur zur Ausgabe verwendet.