GeneralLink in Sitecore
Ich bin neu in Sitecore.. ich habe eine Seite erstellt die Vorlage, und fügen Sie ein Feld für eine URL vom Typ Allgemeine Link. Erstellt habe ich ein weiteres Feld für den text für den link (dies ist gängige Praxis in diesem Projekt).
Möchte ich einfach nur zur Anzeige der link in meinem Benutzer-Steuerelement, aber ich einfach nicht bekommen es funktioniert. Dies sollte einfach sein, aber ich werde die Runde in Kreisen
Hier ist ein Beispiel des Codes, die ich ausprobiert habe ..
ascx :
<asp:HyperLink runat="server" ID="lnkMain"></asp:HyperLink>
ascx.cs:
lnkMain.NavigateUrl = SiteCore.Context.Item.GetGeneralLink("Link1");
lnkMain.Text = item.GetFieldValue("Link1Text");
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie vorsichtig sein, mit
linkField.Url
da es falsch gerendert interne links zu den Sitecore-Items und Medien. Sie sollte stattdessen mitSitecore.Links.LinkManager.GetItemUrl(item)
undSitecore.Resources.Media.MediaManager.GetMediaUrl(item)
für diejenigen.Wäre es besser, einen Helfer (Erweiterung) - Methode zurückgegeben, die richtige url für Sie, basierend auf der Art der Verknüpfung. Werfen Sie einen Blick dieser Sitecore Links mit LinkManager und MediaManager blog-post, die hat den richtigen code, den Sie dafür brauchen.
Referenz:
Verwendung:
Es am besten wäre natürlich die Verwendung
<sc:FieldRender>
Kontrolle und lassen Sitecore handle es für Sie, aber es sieht aus wie Sie nicht über diese option.Als von Sitecore 7.2 ist es eine alternative zur linkField.Url:
http://techitpro.com/uncategorized/sitecore-7-2-changes/
Wäre es einfacher, wenn Sie die Link-Kontrolle:
Auf diese Weise müssen Sie nicht alle code-behind-Zeug, und Sie werden in der Lage sein zu verwenden der Seiten-Editor als auch.
Können Sie unten
Es wird für Sie arbeiten.
Wenn Sie einen Wert zuweisen, um eine GeneralLink Bereich ein Element gibt es ein Feld mit der Bezeichnung "Link-Beschreibung" in der Internen Link-dialog, das erscheint. Füllen Sie diesen Wert dann verwenden:
Das ist es. Alles, was ist "wired-up" für Sie, auto-magisch.
Müssen Sie Holen Sie sich die
Linkfield
Wert der Sache und als dieLinkField
Typ des Elements. Dies gibt Ihnen die Art der Verknüpfung entweder in ein "Internal", "external", "mailto" und auf dieser Basis können die url-die link-Feld, wie dies bereits erwähnt ist die von @jammykam.Gleiche Sache, die Sie tun können, um das abrufen der
LinkText
als gut.Referenz :