【问题标题】:Creating a link in Umbraco在 Umbraco 中创建链接
【发布时间】:2015-05-24 11:18:52
【问题描述】:

我使用“相关链接”类型创建了一个文档类型,名称为“链接 1”,别名为“链接 1”。

我正在使用 Razor 尝试使用我的 HTML 中的以下代码行呈现链接。

   @using RJP.MultiUrlPicker.Models;

@{
  var multiUrlPicker = Model.Content.GetPropertyValue<MultiUrls>("FooterLinks1");
  if (multiUrlPicker.Any())
  {
    <ul>
      @foreach (var item in multiUrlPicker)
      {
        <li><a href="@item.Url" target="@item.Target">@item.Name</a></li>
      }
    </ul>
  }
}

html 不会在源代码中呈现出来。

任何人都可以建议我在哪里做错了吗?

【问题讨论】:

  • 问题是当你关闭打开的引号时(“Link1”)......你需要转义它或在href周围使用单引号

标签: .net umbraco umbraco7


【解决方案1】:
@{
var links = Model.Content.GetPropertyValue<string>("Link1");
var singleLink = JArray.Parse(links).FirstOrDefault();
if (singleLink != null){
    var linkUrl = singleLink.Value<bool>("isInternal") ? Umbraco.NiceUrl(singleLink.Value<int>("internal")) : singleLink.Value<string>("link");
    var linkTarget = (singleLink.Value<bool>("newWindow")) ? " target=\"_blank\"" : string.Empty;
    <a @Html.Raw(linkTarget) href="@linkUrl">@(singleLink.Value<string>("caption"))</a>
  }

}

该解决方案应该可以工作,但我建议使用Multi Url Picker,因为使用链接时它更易于使用和调用。

Multi Url Picker 方式(单链接)

var link = Model.Content.GetPropertyValue<MultiUrls>("linkAlias").SingleOrDefault();
if (link != null){
<a href="@link.Url" target="@link.Target">@link.Name</a>
}

作为一个集合:

@foreach ( var link in Model.Content.GetPropertyValue<MultiUrls>("linkAlias")){
<a href="@link.Url" target="@link.Target">@link.Name</a>
}

【讨论】:

  • 感谢您,我现在已经安装了 Multi URL Picker 包并创建了一个新的数据类型,并在我的文档类型中创建了一个名为“FooterOne”的新项目我已将此代码添加到我的模板中呈现链接,但它似乎没有显示任何链接? @{ var multiUrlPickerDyn = CurrentPage.multiUrlPicker; if (multiUrlPickerDyn.Any()) { } }
  • 我在上面添加了一个示例。如果您修改数据类型,请记住再次发布页面。
  • 我想我在尝试定义要显示的链接列表时迷路了,因为我正在尝试在页脚中创建单独的菜单。
  • 我正在尝试做这样的事情。 @{ var FooterOne = CurrentPage.multiUrlPicker; if (FooterOne.Any()) { } }
  • doc类型中的属性你叫什么?我建议调用属性 footerLinks1 然后您可以使用 var footerOne = Model.Content.GetPropertyValue("footerLinks1"); 调用链接然后可以循环footerOne 以提取链接。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-06-09
  • 2014-10-10
  • 2014-03-12
  • 2013-01-25
  • 2015-11-03
  • 2013-06-28
  • 2017-08-20
相关资源
最近更新 更多