Search the FirstSpirit Knowledge Base
Hallo, für die Indizierung meiner Seiten gehe ich Seite für Seite durch und möchte gerne den Wert , welches ein Element in der Seitenvorlage ist, mitindizieren. Wie kann ich diesen Wert aus dem Beanshell-Script auslesen? Ist das möglich? Danke!
Wenn x deine Seiten-Referenz ist, dann liefert
x.getPage().getFormData().get(<Sprache>, "pt_ueberschrift").get()
den Wert des Feldes in der zugehörigen Seite in der gewünschten Sprache.
Was ist denn mit "[der] Wert , welches ein Element in der Seitenvorlage ist" gemeint?
Hallo, beim Posting ist ein Teil leider rausgefallen: CMS_INPUT_TEXT name="pt_ueberschrift" allowEmpty="no" convertEntities="none" hFill="yes" singleLine="no" .. Und das ist die Überschrift der Seite. Diesen Wert will ich dann beim Indizieren mitsichern, damit ich bei Treffer, diesen Wert ausgeben kann.
Wenn x deine Seiten-Referenz ist, dann liefert
x.getPage().getFormData().get(<Sprache>, "pt_ueberschrift").get()
den Wert des Feldes in der zugehörigen Seite in der gewünschten Sprache.
Danke, hat funktioniert!
Hallo, jetzt habe ich eine andere Frage: Bei der Indizierung meiner Seiten lese ich den Inhalt der Seiten mit pageRef.getPage().getBodyByName("center").getChildren().toList().get(i).getData().toString().trim().replaceAll("<[^>]*>"," ") raus und schreib ihn in ein String. mit replaceAll() filtere ich die ganzen Tags heraus. Nur scheint es so, dass alle Bild- und Linkabsätze etc in ihren Tags noch Begriffe wie MEDIASTORE_LEAF, SITESTORE_LEAF etc beinhalten. Diese werden leider nicht rausgefiltert. Meine Frage ist nur wie ich aus meinen Seiten alle Absätze, die einen bestimmten Namen haben, wie etwa st_link, st_bild, herausfiltere. Denn auf pageRef.getPage().getBodyByName("center").getChildren() Ebene komme ich nicht mehr an getFormData() heran um den Namen abzuprüfen. Habe versucht den Inhalt mit regex nach MEDIASTORE_LEAF abzuprüfen, aber das macht die Indizierung unendlich langsam.