将 MediaPicker 添加到常规站点设置

2024-02-13

我当前正在进行的项目正在利用租户站点。对于每个站点,我们希望能够通过修改其设置(在管理页面上,设置 > 常规)来更改整个租户站点的徽标。

我通过以下方式向站点设置添加了两个文本字段这个有据可查的教程 http://docs.orchardproject.net/Documentation/Adding-custom-settings。但是,我希望用户能够使用媒体选择器来选择徽标,而不是输入路径。

目前我有一个 LogoBarSettings 部分及其记录、驱动程序和处理程序。我不确定如何将媒体选择器添加到我的 LogoBarSettings 中,即使我这样做了,我还必须为其创建另一个处理程序、驱动程序和记录吗?我无法想象我会这样做,但我现在很困惑。

有人可以对此提供一些指导吗?

这是我的 LogoBarSettings

public class LogoBarSettings : ContentPart<LogoBarSettingsPartRecord>
{
    public string ImageUrl
    {
        get { return Record.ImageUrl; }
        set { Record.ImageUrl = value; }
    }

    public string ImageAltText
    {
        get { return Record.ImageAltText; }
        set { Record.ImageAltText = value; }
    }
}

MediaPicker 是通过 Javascript 调用的,因此您不需要更改任何模型类。当为页面加载 MediaPicker 时,它会为页面上的所有表单元素设置一个 jQuery 事件处理程序。触发事件orchard-admin-pickimage-open将打开 MediaPicker。提供回调函数来捕获所选媒体。

以下是一个简单示例,您可以从加载了 MediaPicker 的页面(例如页面编辑器)在 Firebug 或 Chrome 开发人员工具中运行:

$('form').trigger("orchard-admin-pickimage-open", { 
    callback: function(data) { 
        console.log(data); 
}})

这应该打印类似这样的内容:

Object {img: Object}
    img: Object
        align: ""
        alt: ""
        class: ""
        height: "64"
        html: "<img src="/Media/Default/images/test.jpg" alt="" width="64" height="64"/>"
        src: "/Media/Default/images/test.jpg"
        style: ""
        width: "64"
    __proto__: Object
__proto__: Object

The BodyPart编辑器将 Orchard 的 MediaPicker 与 TinyMce 集成,因此您可以开始查看该模块以获得更完整的示例,特别是Modules\TinyMce\Scripts\plugins\mediapicker\editor_plugin_src.js.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 MediaPicker 添加到常规站点设置 的相关文章

  • 如何访问整个 AutoFac 容器以在 Orchard 中注册依赖项?

    这个问题非常简单 我想访问整体AutoFac容器 以便我可以在其中注册我的依赖项 remark 我不同意继承自IDependency因为在我的项目中 它会导致 两个程序集 的循环引用 我想要做的是使用密钥注册一个组件 并在其他程序集中使用相
  • Orchard CMS中如何处理来自JS的跨域Web服务调用

    我正在尝试从 HTML 小部件内跨域调用 Web 服务 这似乎不起作用 它在同一域下运行得很好 我正在尝试在 Orchard 中创建一个登录页面 可用于登录另一个域上的我的软件 Web 服务正在验证用户凭据并返回一个布尔值 然后该布尔值将生
  • 自定义 Orchard 导航菜单

    抱歉我问了这么笼统的问题 我正在使用 Orchard CMS 创建一个网站 网站的设计和交互性是关键要求 我有一个固定大小 900 px 宽 的导航菜单 但应该能够调整尽可能多的菜单项 我通过修改 css 手动执行此操作 我使用了一些 jQ
  • 在 Orchard 中使用 FindView

    我正在尝试使用 var viewEngineResult ViewEngines Engines FindView ControllerContext myViewName null 作为呈现视图内容以发送格式良好的电子邮件的过程的一部分
  • WebApi Route 返回 Not Found in Orchard Module

    我正在创建一个 Orchard 模块 我想在其中添加 WebApi 控制器 我的模块 txt Name ModuleName AntiForgery enabled Author The Orchard Team Website http
  • 合并来自开发和生产数据库的果园内容

    我正在寻找以下问题的解决方案 我们前段时间开发了生产环境上的果园场地 所有站点结构 小部件 部件 图层 都是在首次发布之前创建的 现在我们要添加带有附加页面和图层的子站点 我们希望在开发环境中完成这项工作 并在发布之前对其进行测试 在最近的
  • 我可以让 Orchard 在博客列表中显示完整的博客文章吗?

    我刚刚设置 Orchard 并注意到预览小部件仅显示带有标准 更多 链接的前几个句子 有没有办法在不创建自定义小部件的情况下覆盖此功能 我希望 Orchard 展示我最新的五篇帖子的全部内容 当然 只需将此 Parts Common Bod
  • Orchard CMS 中如何从数据库中获取表数据?

    如何从 Orchard CMS 数据库中获取表数据 我是 Orchard CMS 的初学者 我不知道如何在 Orchard CMS 中获取和保存任何数据 因为它不像 ado net 或 linq to sql 或实体框架等常规数据库访问模型
  • 子 IIS 应用程序中的 RegisterClientScriptResource NullReferenceException

    我从 Net 4 5 Beta 升级到 RTM 版本 现在当我有一个标准 WebForm 页面 其中有一个通用 标记时 我得到一个 NullReferenceException 如下所示 NullReferenceException 未将对
  • Orchard CMS 中的 Work<> 类有什么用?

    简单明了 它的用例是什么Orchard Environment Work lt gt 类定义于Orchard Environment WorkContextModule cs 它可以在几个地方找到 例如 private readonly W
  • 通过 INavigationProvider 将菜单项添加到主菜单但不显示?

    使用 Orchard cms 1 5 1 我创建了一个模块 其中包含从 Web 服务获取列表的控制器 我想在启用此模块时在主菜单中添加一个菜单项 为此我创建了 主菜单如下 public class MainMenu INavigationP
  • Orchard CMS 是否支持带有实体框架的 MVC4

    我有一个使用 MVC4 Entity Framework 4 4 构建的站点 有2个项目 即 一个是关于我们的网站的 另一个是类库 定义为 edmx 这次我们需要将其迁移以支持CMS 并且 我们选择使用 Orchard CMS 我需要知道
  • Orchard Navigation - 如何使菜单链接不可点击

    我有以下菜单导航 home product product 1 product 2 news press releases about us 上面的每个菜单项都链接到一个内容 产品 除外 我需要这样做 以便当用户单击 产品 时不会去任何地方
  • Orchard CMS 如何进行日志记录?

    我正在使用 Orchard CMS 它对我来说是更好的 CMS 我想了解它如何进行日志记录以及我是否可以添加自己的日志记录 我看到果园使用NullLogger类 它不起作用 我已打开 App Data Logs 文件夹并看到其中有日志文件
  • 如何在 Orchard CMS 上使用 lucene 查询语法

    我想使用完整的Lucene 查询语法 http lucene apache org core 2 9 4 queryparsersyntax html在基于 Orchard CMS 的网站上 目前 启用后索引和搜索 http docs or
  • 在 Orchard 中设置唯一的主体类和 ID

    有没有办法在 Orchard 中为每页设置唯一的正文类和 ID 我希望能够在 编辑页面 部分控制这些 例如 主页的正文 ID 为 home 关于页面的正文 ID 为 about 等 并且 如果 about 页面下有子页面 这些页面将具有 a
  • 如何将形状渲染为字符串?

    我正在使用 Orchard 1 6 想要使用主题自定义布局等将视图渲染为字符串 事实上有Orchard cms 渲染形状作为电子邮件模板 https stackoverflow com questions 7061044 orchard c
  • 为什么 Orchard 在执行内容项查询时如此慢?

    假设我想查询所有 Orchard 用户 ID 并且还想包括那些已被删除 也称为软删除 的用户 该数据库包含大约 1000 个用户 Option A 大约需要 2 分钟 Orchard ContentManagement IContentMa
  • Orchard CMS:向字段添加默认数据,然后查询它们

    我已使用与内容类型同名的部分向内容类型添加了一个名为 Website 的 LinkField ContentDefinitionManager AlterTypeDefinition MyContentType a gt a WithPar
  • IDX21323 OpenIdConnectProtocolValidationContext.Nonce 为空,OpenIdConnectProtocolValidatedIdToken.Payload.Nonce 不为空

    我正在尝试对 Intranet 的 Azure AD 和 Graph 进行身份验证 基于 Orchard CMS 该功能在我的本地计算机上按预期运行 但是 当访问生产站点时 已在我们的内部 dns 上使用 ssl 设置 我有时会收到上述错误

随机推荐