我可以使用代码知道如何检测用户是否处于页面编辑器模式?这是因为,我有一个组件,当用户从页面编辑器浏览时,它将搜索master_index文件夹而不是web_index文件夹.
我需要在一行中的第一个单词周围放置span标签.我使用下面的Jquery,它在sitecore标准模式下工作正常.
$("body").has(".widget h2").addClass("standard-mode");
$("body").has(".scLoadingIndicatorInner").removeClass("standard-mode").addClass("page-edit");
$('.standard-mode .widget h2').html(function(i, html){
return html.replace(/(\w+\s)/, '<span>$1</span>')
})
Run Code Online (Sandbox Code Playgroud)
当我第一次加载页面编辑器时,这也可以正常工作(不插入span标签),但是当我创建一个多变量测试时,使用箭头标记在A/B之间切换显示就像插入不应该设想的span标签一样在页面编辑模式下执行,但它确实打破了html,如下所示.
<h2>
<<span>input </span>id="fld_D26C954B73BE4C62B6F25BE191A86F18_7B55B5E5EDD84D4E88B16C6E073495A5_en_1_0e80a9c63ab6419f8135b70511e892f1_16487" class="scFieldValue" name="fld_D26C954B73BE4C62B6F25BE191A86F18_7B55B5E5EDD84D4E88B16C6E073495A5_en_1_0e80a9c63ab6419f8135b70511e892f1_16487" type="hidden" value="Badger Cull"><span class="scChromeData">{"commands":[{"click":"chrome:common:edititem({command:\"webedit:open\"})","header":"Edit the related item","icon":"/temp/IconCache/SoftwareV2/16x16/cubes_blue.png","disabledIcon":"/temp/cubes_blue_disabled16x16.png","isDivider":false,"tooltip":"Edit this item in the Content Editor.","type":"common"},{"click":"chrome:rendering:personalize({command:\"webedit:personalize\"})","header":"Personalize","icon":"/temp/IconCache/PeopleV2/16x16/users3_edit.png","disabledIcon":"/temp/users3_edit_disabled16x16.png","isDivider":false,"tooltip":"Personalize component.","type":"sticky"},{"click":"javascript:Sitecore.PageModes.PageEditor.postRequest('ActiveISPageEditor:publish(id={D26C954B-73BE-4C62-B6F2-5BE191A86F18})',null,false)","header":"Publish the related item","icon":"/temp/IconCache/Network/16x16/download.png","disabledIcon":"/temp/download_disabled16x16.png","isDivider":false,"tooltip":"Publish this item.","type":"common"},{"click":"chrome:rendering:editvariations({command:\"webedit:editvariations\"})","header":"Edit variations","icon":"/temp/IconCache/SoftwareV2/16x16/breakpoints.png","disabledIcon":"/temp/breakpoints_disabled16x16.png","isDivider":false,"tooltip":"Edit the variations.","type":"sticky"}],"contextItemUri":"sitecore://master/{D26C954B-73BE-4C62-B6F2-5BE191A86F18}?lang=en&ver=1","custom":{},"displayName":"Header Text","expandedDisplayName":null}</span><span scfieldtype="single-line text" sc_parameters="prevent-line-break=true" contenteditable="false" class="scWebEditInput scEnabledChrome" id="fld_D26C954B73BE4C62B6F25BE191A86F18_7B55B5E5EDD84D4E88B16C6E073495A5_en_1_0e80a9c63ab6419f8135b70511e892f1_16487_edit" sc-part-of="field">Badger Cull</span>
</h2>
Run Code Online (Sandbox Code Playgroud)
任何建议都会有所帮助.
我想在网站页面编辑器上的"保存并关闭"按钮旁边提供另一个按钮,该按钮将在按下后触发保存和发布操作.我去了核心并制作了一份我想要修改的"保存并关闭"按钮.
我会将此按钮称为"保存并发布",但现在我有点好奇,如果我必须修改javascript以包含我的自定义调用(让我们说javascript:scSave("myPublish:saveAndPublish")
)
我正在按照这篇文章挂钩管道并完成操作,但不确定这是否是正确的方法.
有什么建议?
我在假日期间一直在使用Sitecore中的自定义页面,我注意到Sitecore从编辑器中删除JavaScript行的问题.
以下是我当前场景的概述:
我是唯一一个编辑此页面的人,它正在发布当前/正确的版本.如果我通过内容编辑器的"显示编辑器"或"编辑HTML"功能添加脚本并不重要.它只删除了JavaScript; 我所有的其他变化都完好无损.
关于Sitecore的JavaScript实现,我有什么遗漏吗?我不知道还有什么可以做的,以便诊断它,所以我希望有人在这里有解释.
Sitecore PageEditor和Preview界面具有语言选择器按钮,可触发"下拉"/覆盖菜单,用户可在其中选择语言.我该如何复制这种行为?
(我开始回答这个问题,并提出了一个解决方案.向SOF发帖评论/增强.)
假设我有一个经典的页面布局.
现在让我们说所有这些都可以在页面编辑器中进行编辑,让我们添加一个事实,即我希望所有内容都能通过工作流程.
当编辑进入特定页面(比如"关于我们"页面)时,当他点击编辑时,Sitecore究竟应该做什么?该页面上显示的所有项目是否会切换到DRAFT状态?或者只有当编辑器实际上编辑了页面上显示的某些"内容项"中的某些内容时才会发生这种情况?
当页面提交审批时会发生什么?修改后的所有子项是否也会进入"已提交审批"状态并出现在审批者/发布者的工作箱中?
如果没有开箱即用,怎么能实现这一切?有没有人已经解决了这个问题并成功解决了它?这似乎是一个常见的问题,但我似乎无法找到关于如何将这些联系起来的任何指导.
谢谢,FG
当我们在浏览器上运行页面时,jcarousel插件正在工作,但是如果我们在sitecore预览模式下运行相同的页面(在sitecore中:单击顶部菜单中的Presentation.单击功能区中的预览),则此插件无效.如果您有解决方案,请告诉我.
需要在页面编辑器,项目编辑部分添加"发布"功能.(在"更多"部分下是理想的).我怎样才能做到这一点?
我有许多可在页面编辑器中编辑的字段.其中一个是富文本字段.这是html:
@foreach (var speaker in Model.Speakers)
{
<div class="speaker__item" id="@speaker.Id">
<div class="speaker__media">
@RenderImage(speaker, x => x.Speaker_Image, isEditable: true)
</div>
<div class="speaker__info">
@if (IsInEditingMode || !string.IsNullOrEmpty(speaker.Speaker_Name))
{
<h4 class="speaker__name">@Editable(speaker, x => x.Speaker_Name)</h4>
}
@if (IsInEditingMode || !string.IsNullOrEmpty(speaker.Speaker_Title))
{
<p class="speaker__title">@Editable(speaker, x => x.Speaker_Title)</p>
}
@if (IsInEditingMode || !string.IsNullOrEmpty(speaker.Speaker_Description))
{
<div class="speaker__bio">
<p>@Editable(speaker, x => x.Speaker_Description)</p>
</div>
}
@RenderLink(speaker, x => x.Speaker_Bio, attributes: new { @class = "speaker__link" }, isEditable: true)
</div>
</div>
}
Run Code Online (Sandbox Code Playgroud)
富文本字段是Speaker_Description.当字段中没有HTML(即只是纯文本)时,它会正确呈现并在页面编辑器中可编辑.当字段包含html时,例如包含在<p>
标记中或包含换行符时,它会正确呈现,但在页面上不可编辑.我仍然可以在Sitecore中编辑该字段,但该区域在页面编辑器中无法点击.
我们目前在我们的网站上使用Sitecore CMS,并且正在考虑在不久的将来添加Sitecore DMS.
我的一位同事坚持认为,必须让我们的页面编辑器和"克隆"功能一起启用,并使我们能够使用DMS.
我熟悉他们的CMS,但不熟悉DMS所以我想知道 - 这是绝对必要的吗?
page-editor ×10
sitecore ×10
javascript ×2
jquery ×2
sitecore-dms ×2
sitecore6 ×2
.net ×1
asp.net ×1
glass-mapper ×1
html ×1
sitecore7 ×1