问题标签 [content-editor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
988 浏览

server - Sitecore 8 内容编辑器错误

嘿,我在下面收到此错误,我已经尝试过这里的解决方案,但似乎可以修复它。有人可以指出我正确的方向。

非常感激任何的帮助!

0 投票
1 回答
1556 浏览

sitecore - 体验编辑器不适用于 sitecore 8 中具有某些名称的页面

在为我的站点创建新页面时,我发现名为“t”、“u”、“n”或“o”的页面无法在体验编辑器中正确编辑。如果我尝试打开这些页面的体验编辑器,它要么不会打开编辑器,要么会打开编辑器,但添加任何组件都会导致错误消息。

例如:我创建了一个名为“t”的页面 -> 打开体验编辑器 -> 尝试添加组件 -> 导致错误消息“发生错误”出现在体验编辑器中,但是当我转到内容编辑器时,添加了该组件。

接下来我尝试将项目的显示名称更改为“test”并将项目名称保持为“t”->尝试在体验编辑器中添加组件->导致相同的错误消息出现在体验编辑器中但是当我转到内容时添加该组件的编辑器。

接下来我尝试将项目名称更改为“tr”而不是“t”并将显示名称保持为“test”->尝试在体验编辑器中添加组件->在体验编辑器和内容编辑器中成功添加组件。

作为一种解决方法,我们可以在项目名称中添加一个字符串,但我无法弄清楚为什么这些字母会发生这种情况。有人遇到过这个问题吗?实际上,我需要在我的网站中添加词汇表,因此我必须仅通过从 A 到 Z 的单个字母创建项目名称,因此需要帮助。

0 投票
1 回答
84 浏览

sharepoint - 在 Sharepoint 中显示特定共享文档文件夹的通知

我正在尝试修改我的 SharePoint 2010 站点,以便当用户导航到默认“共享文档”文档库中的特定文件夹时,会向用户显示一条通知,描述该特定文件夹的文件夹/文件命名约定。我尝试向页面添加内容编辑器,但这会显示“共享文档”库中的所有文件夹。有没有办法为特定文件夹显示此通知或为不等于所需文件夹的文件夹隐藏它?

更新:我尝试将以下脚本保存到文本文件中,将其上传到我的共享点站点,然后将 URL 粘贴到 CEWP 中的文本文件中,但没有结果。

0 投票
2 回答
427 浏览

validation - 为什么我的 Sitecore 自定义验证器无法读取已在内容编辑器中编辑的项目?

我在 Sitecore 中创建了一个自定义验证器。它正确执行,我可以调试它并逐步完成它。

我从 扩展了我的验证器StandardValidator,而它又从 扩展BaseValidator

在我的验证器中,我得到了这个项目:

GetItem是一种来自 的方法BaseValidator。根据我的阅读,这是获得要验证的项目的标准方法。

问题:我返回的项目没有反映在 Content Editor 中编辑的值。相反,它似乎只是数据库中的项目(因此,它在内容编辑器中首次加载时的样子,没有反映可能对其进行的任何更改)。

因此,我无法验证。要验证编辑器可能在内容编辑器中更改的数据,我需要能够看到这些更改。现在查看该项目在数据库中的位置对我没有帮助。

我做了一些扩展调试,可能有用也可能没用——

我反编译了内核,并遍历了StandardValidatorBaseValidator.

from的GetItem方法BaseValidator做了我怀疑的事情——它从数据库中获取项目。但随后它通过一个名为的方法运行它,该方法UpdateItem似乎旨在将来自内容编辑器的输入值覆盖在存储的值之上(从而返回一个准确反映当前位于编辑器中的数据的对象)。这显然是我想要的。

但是,仅当被调用的属性具有值UpdateItem时才会覆盖任何内容......而且它永远不会。ControlToValidate我已经尝试将此验证器作为字段验证器和项目验证器。我通过保存一个项目和一个字段来启动它。我在 Visual Studio 中设置了一个断点并在ControlToValidate. 有一次(莫名其妙地)它的值是FIELD165901047(对应于内容编辑器中的字段 ID),但在所有其他情况下,它都是null.

这意味着UpdateItem实际上什么都不做,并且该项目只是返回,因为它当前位于数据库中,这无济于事——我试图在保存到数据库之前验证在内容编辑器中输入的值。

不管我的调查如何(我想我理解UpdateItem,但我承认我可能会误解它,并且我没有考虑潜在的反编译错误),我仍然有这个基本问题:

这似乎永远不会从内容编辑器返回值。它直接从数据库返回项目,这对我没有帮助。

0 投票
0 回答
46 浏览

javascript - 所见即所得编辑器不执行条件

我正在尝试在 的帮助下构建一个简单的文本编辑器document.execCommand,但我坚持使用条件语句:

我已经包含了JS Fiddle

现在我只执行粗体和斜体只是为了测试目的。请帮帮我。

0 投票
2 回答
985 浏览

sharepoint - 将 CEWP 导出为 .webpart 文件

我正在尝试从 SP2013 环境中导出我的内容编辑器 webpart,并且我希望输出文件为 .webpart 格式。目前我正在获取 .dwp 格式的输出文件。

知道如何以 .webpart 格式获取内容编辑器 webpart 吗?

0 投票
1 回答
652 浏览

javascript - 在 ContentTools 中从自定义媒体管理器插入图像

我在过去几年一直在开发的 PHP 框架中实现了出色的内容工具编辑器,但我已经走到了死胡同。

我想在当前可编辑区域内的光标位置插入来自自定义媒体管理器(已实现)的图像,就像默认图像工具一样。

我曾尝试按照教程来开发自己的工具,但我对 Coffee Script 和 JavaScript 的了解并不多,这让我望而却步。


据我了解,也许步骤是:

  1. 基于图像工具新建一个工具
  2. 这些工具将在模态(iframe)上打开媒体管理器,而不是 ContentTools 中的默认对话框(这就是媒体管理器在固件中的工作方式)
  3. 在媒体管理器上做我的事情(上传、裁剪、分类图像等)
  4. 从列表中选择一个图像,然后单击“插入”
  5. 媒体管理器 iframe 调用 aparent.someFunction({ image data })来插入图像,就像默认的“图像”工具一样。
  6. 完毕!

一些严重的疑问:

  1. 如何用我的模态调用覆盖默认对话框?

  2. 我是否必须将区域名称光标位置(?)作为参数传递给 iframe,或者这些信息是否存储在主范围内的某个地方?(或者......我什至必须担心这一点,或者编辑会处理这件事的所有事情?)

  3. 是否可以创建一个可以像这样调用的函数:

同样,我对 ContentTools 主题很陌生并且迷失了方向。任何帮助,将不胜感激。

0 投票
1 回答
444 浏览

javascript - Javascript - 内容可编辑的拆分元素和父母一半

我正在开发一个微型所见即所得的编辑器。我需要能够执行以下操作:

假设编辑器中的内容如下所示:

如果我将光标放在空格上and more并单击一个按钮,我希望 HTML 像这样拆分:

我该怎么做呢?我已经可以获取单击元素的锚节点,并且有一种获取根父节点的方法,但不知道如何拆分元素,如上所示。

0 投票
1 回答
286 浏览

sitecore - Sitecore 客户端在删除项目时冻结

我在 Sitecore 8.1 上有这个项目,它工作得很好。最近我不得不将它迁移到另一台服务器。我在新服务器上恢复了数据库,复制了网站文件夹,并在新服务器上启动。

一切都很好,除了一件事:当我删除一个项目时,客户端冻结了。我有这样的日志行

23144 10:52:39 信息审核(sitecore\admin):回收项目:master:/sitecore/content/Home/myfolder/myitem

关闭网站后,日志中出现错误:

22592 11:07:07 错误删除项目时出错异常:System.Threading.ThreadAbortException 消息:线程被中止。来源:Sitecore.Data 的 Sitecore.Search.SearchManager.get_SearchConfiguration() 的 Sitecore.Configuration.Factory.CreateObject(String configPath, String[] parameters, Boolean assert) 的 System.Threading.Monitor.Enter(Object obj) 的 mscorlib。 Managers.IndexingManager.UpdateIndexAsync(Database database) 在 Sitecore.MainUtil.RaiseEvent[T](EventHandler1 订阅者,对象发送者,T eventArgs) 在 Sitecore.Data.Engines.HistoryEngine.RegisterItemDeleted(Item item, ID oldParentId) 在 System.EventHandler1。在 Sitecore.Data.Archiving 的 Sitecore.Data.Engines.EngineCommand2.RaiseEvent[TArgs](EventHandler1 handlers, Func2 argsCreator) 调用(Object sender, TEventArgs e)。
在 Sitecore.Shell.Framework.Pipelines.DeleteItems.Execute(ClientPipelineArgs args)

我不确定这是否与客户端冻结有关,或者仅仅是因为我在删除结束之前关闭了应用程序。

你们中有人知道为什么客户会冻结吗?

0 投票
1 回答
120 浏览

c# - 将内容编辑器 Web 部件添加到母版页 SP2010

我正在尝试将内容编辑器 wep 部分添加到母版页。我知道最佳做法是创建页面布局并添加 Web 部件区域并在那里添加 Web 部件,但在我的特殊情况下,我需要能够将内容编辑器 Web 部件添加到母版页,特别是页脚部分...

有谁知道实现这一目标的最佳方法?或者可以将内容编辑器 Web 部件添加到母版页的任何解决方法?

非常感谢,