1

Ich habe eine Komponente, die ein einzelnes Rich Text-Feld enthält. Im Unterlayout wird das Feld als Html.Editable mit Glass gerendert, damit es auf der Seite in PageEditor bearbeitet werden kann. Es sieht wie folgt aus:Sitecore Rich Text Links nicht benutzerfreundlich, wenn durch Glas

public override void Initialize() 
{ 
    litBodyContent.Text = Html.Editable(GlassItem, item => item.Body); 
} 

<div style="min-height: 38px"> 
    <asp:Literal runat="server" ID="litBodyContent" /> 
</div> 

Allerdings, wenn ich einfügen Links, um die Rich-Text-Editor, wenn die Seite gerendert wird (in normalen Ansicht nach veröffentlicht werden, nicht in Seiten-Editor), der Links sind mit der Artikelnummer statt dem benutzerfreundlichen Weg, wie dies gemacht:

<a href="~/link.aspx?_id=D9D103AD60DA4B318521801ADA863222&amp;_z=z">Go to another page</a> 

ich bin mir ziemlich sicher, dass dies ein Problem mit Glas. Wie kann ich das Feld im Seiteneditor bearbeiten, aber die Verknüpfung korrekt darstellen lassen?

+2

Mögliche Duplikat [Links Sitecores in Rich-Text-Editor eingefügt sind nicht auf benutzerfreundliche URLs aufgelöst] (http://stackoverflow.com/questions/38147672/sitecore-links-inserted-in-rich- text-editor-are-not-resolved-to-user-friendly-ur) – Gatogordo

Antwort

0

Können Sie versuchen, es zu ändern, von wörtlichen mit Editierbare() -Methode direkt zu verwenden, so etwas wie:

<%= Editable(GlassItem, x => x.Body) %> 
0

Ich denke, Initialize() zu früh im Lebenszyklus Seite ist. Versuchen Sie es weiter zu bewegen, wie zum Beispiel Page_Load() oder so.

2

Sie können überprüfen, ob im Modell das richtige Attribut vorhanden ist.

Wenn Sie SitecoreFieldSettings.RichTextRaw Attribut haben, wird es NICHT Pass machen durch die Pipeline und gibt den RAW HTML. Stattdessen, wenn Sie Standard (SitecoreFieldSettings.Default) verwenden, wird Rich-Text-Inhalt durch Render-Pipeline gehen und URL wird in freundlichem Format sein.

http://docs.glass.lu/html/d44739b2-5f0e-d862-f62c-86c50f0b262f.htm

+0

Gibt es eine Möglichkeit, den rohen Text manuell durch die Render-Pipeline laufen zu lassen? – sniels