在自定义网格编辑器(Umbraco 7)中获取节点/内容选择器

在自定义网格编辑器(Umbraco 7)中获取节点/内容选择器,umbraco,umbraco7,Umbraco,Umbraco7,使用Umbraco 7网格编辑器,我需要能够在自定义网格编辑器中使用Umbraco节点选择器选择一个内容项,但我在实现这一点时遇到了困难。有一个媒体选择器可用,但我不知道如何将其更改为拾取任何内容节点 我还尝试使用网格编辑器中的“设置/样式”选项,我可以在其中获取节点选择器,但是我无法通过自定义网格编辑器视图获取此信息。有人能给我指一下正确的方向吗?当然,从U7网格中提供到内容页的链接是一件相对常见的事情吗?在我们的Umbraco.org论坛上的Umbraco 7中有一个自定义节点选择器作为新网

使用Umbraco 7网格编辑器,我需要能够在自定义网格编辑器中使用Umbraco节点选择器选择一个内容项,但我在实现这一点时遇到了困难。有一个媒体选择器可用,但我不知道如何将其更改为拾取任何内容节点


我还尝试使用网格编辑器中的“设置/样式”选项,我可以在其中获取节点选择器,但是我无法通过自定义网格编辑器视图获取此信息。有人能给我指一下正确的方向吗?当然,从U7网格中提供到内容页的链接是一件相对常见的事情吗?

在我们的Umbraco.org论坛上的Umbraco 7中有一个自定义节点选择器作为新网格编辑器的示例,其中有一个代码示例。

我为Umbraco v8制作了一个自定义的
内容和链接选择器
网格编辑器。它在GitHub上提供

其实很简单!您在
/AppPlugins/YourPackage
文件夹中创建了4个文件-对于内容选择器,应该是这样的:

package.manifest-此文件包含有关编辑器的所有信息

{
  "gridEditors": [
    {
      "name": "Content Picker",
      "alias": "customcontentpicker",
      "view": "/app_plugins/custom.grideditor.contentpicker/contentpicker.html",
      "icon": "icon-link"
    }
  ],
  "javascript": [
    "~/app_plugins/custom.grideditor.contentpicker/contentpicker.controllers.js"
  ]
}
contentPicker.html-此文件用于呈现umbraco backoffice内部的内容

<div ng-controller="custom.propertyeditors.grid.contentpickereditorcontroller">

    <div class="umb-editor-placeholde" ng-click="setContentId()">
        <i class="icon icon-settings-alt"></i>
        <div ng-id="!control.$inserted" class="help-text">Click to insert Page</div>

        <div ng-if="control.value" style="margin-top: 20px;">
            <p>
                Node ID: {{id}}
                <br />
                Node Name: {{name}}
                <br />
                udi: {{udi}}
            </p>
            {{control.value}}
        </div>

    </div>
</div>
contentpicker.cshtml-这是前端用于呈现网格内容的模板

@inherits Umbraco.Web.Mvc.UmbracoViewPage<dynamic>

@{
    if (Model.value == null) { return; }
}

@Model.value.name
@Model.value.id
@Model.value.udi
@继承Umbraco.Web.Mvc.UmbracoViewPage
@{
如果(Model.value==null){return;}
}
@Model.value.name
@Model.value.id
@Model.value.udi
如果您随后回收应用程序池,并且正确执行了上述步骤,您应该会看到如下内容:


在没有最低解释的情况下将链接放到外部站点是一种不好的做法,因为链接可能会死掉,导致答案无效。请改进您的答案以帮助社区,提供有趣链接页面的摘录或摘要。如果链接失效,这将有助于查找信息。非常感谢。
@inherits Umbraco.Web.Mvc.UmbracoViewPage<dynamic>

@{
    if (Model.value == null) { return; }
}

@Model.value.name
@Model.value.id
@Model.value.udi