我使用的是5.4。我试图在rte上的下拉样式框中添加样式。我按照http://docs.adobe.com/docs/en/cq/5-4/administering/configuring_rich_text_editor.html上的说明进行操作。在text / rtePlugins / styles / styles下添加节点后,将禁用该插件的所有选项。按钮(例如粗体,斜体,下划线等)不再可点击。虽然我仍然可以从paraformat和样式下拉列表中选择样式,但它们不会更改文本的外观。此外,虽然我可以更改rte中的文本,但单击确定后,更改不会反映在页面中。
我附加了对话节点的节点层次结构的快照。如果我应该包含任何其他信息,请告诉我。
谢谢!
答案 0 :(得分:1)
您是自己创建整个结构还是从某处复制? 您需要确保的是为每种类型启用某些功能(或者使用*):
这是样式节点的示例:
<styles
jcr:primaryType="nt:unstructured"
features="*">
<styles jcr:primaryType="cq:WidgetCollection">
[...]
</styles>
</styles>
对于所有其他节点都必须如此,但如果你根本不复制它们,你也应该重新激活所有功能。
要在RTE中使用自定义样式,还需要在文本节点上提供具有以下属性的CSS文件。
externalStyleSheets="[{path_to_your_stylesheet}]"
我建议仅使用您在样式列表中添加的样式为RTE创建一个。
答案 1 :(得分:1)
我按照这里的说明操作,它对我有用: http://docs.adobe.com/docs/en/cq/5-4/administering/configuring_rich_text_editor.html#Styles(文字)
生成的对话框如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:cq="http://www.day.com/jcr/cq/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:nt="http://www.jcp.org/jcr/nt/1.0"
jcr:primaryType="cq:Dialog"
externalStyleSheets="[/etc/designs/myDesign/css/my_colors.css]"
height="500"
width="700"
xtype="dialog">
<items
jcr:primaryType="nt:unstructured"
helpPath="en/cq/current/wcm/default_components.html#Text"
title="Text"
xtype="tabpanel">
<items jcr:primaryType="cq:WidgetCollection">
<tab1
jcr:primaryType="cq:Widget"
anchor="100%"
height="350"
title="Text"
xtype="panel">
<items jcr:primaryType="cq:WidgetCollection">
<text
jcr:primaryType="cq:Widget"
allowBlank="false"
blankText=""
disabled="false"
emptyText=""
fieldDescription=""
fieldLabel=""
fieldSubLabel=""
grow="false"
height="{Long}350"
hideLabel="true"
hideMode=""
inputType=""
maxLength=""
maxLengthText=""
minLength=""
minLengthText=""
msgTarget=""
name="./text"
readOnly="false"
regex=""
regexText=""
selectOnFocus="false"
validateOnBlur="true"
validationDelay=""
validationEvent=""
validator=""
vtype=""
vtypeText=""
xtype="richtext">
<rtePlugins jcr:primaryType="nt:unstructured">
<links jcr:primaryType="nt:unstructured">
<linkDialogConfig
jcr:primaryType="nt:unstructured"
height="316">
<linkAttributes jcr:primaryType="cq:WidgetCollection">
<linkAdvanced
jcr:primaryType="cq:Widget"
collapsed="true"
collapsible="true"
inputValue="advanced"
name="./linkdialog/cq:adhocLinkTrackingTab"
title="Link tracking"
xtype="dialogfieldset">
<items jcr:primaryType="cq:WidgetCollection">
<enable
jcr:primaryType="nt:unstructured"
attribute="enabletracking"
fieldDescription="override analytics framework settings"
fieldLabel="Custom link tracking"
name="./linkdialog/cq:adhocLinkTrackingEnableTracking"
xtype="checkbox">
<listeners
jcr:primaryType="nt:unstructured"
check="function(component){var dlg=component.findParentByType('rtelinkdialog');dlg.enableSCFields(component.checked);}"/>
</enable>
<events
jcr:primaryType="nt:unstructured"
attribute="adhocevents"
fieldDescription="e.g.: event2, event7"
fieldLabel="Include SiteCatalyst events"
name="./linkdialog/cq:adhocLinkTrackingEvents"
xtype="textfield"/>
<evars
jcr:primaryType="nt:unstructured"
attribute="adhocevars"
fieldDescription="e.g.: eVar1: pagedata.url, prop4: 'const'"
fieldLabel="Include SiteCatalyst variables"
name="./linkdialog/cq:adhocLinkTrackingEvars"
xtype="textfield"/>
</items>
</linkAdvanced>
</linkAttributes>
</linkDialogConfig>
</links>
<misctools
jcr:primaryType="nt:unstructured"
features="*"/>
<edit
jcr:primaryType="nt:unstructured"
features="*"/>
<findreplace
jcr:primaryType="nt:unstructured"
features="*"/>
<format
jcr:primaryType="nt:unstructured"
features="*"/>
<image
jcr:primaryType="nt:unstructured"
features="*"/>
<keys
jcr:primaryType="nt:unstructured"
features="*"/>
<justify
jcr:primaryType="nt:unstructured"
features="*"/>
<lists
jcr:primaryType="nt:unstructured"
features="*"/>
<paraformat
jcr:primaryType="nt:unstructured"
features="*"/>
<spellcheck
jcr:primaryType="nt:unstructured"
features="*"/>
<styles
jcr:primaryType="nt:unstructured"
features="*">
<styles jcr:primaryType="cq:WidgetCollection">
<Aqua
jcr:primaryType="nt:unstructured"
cssName="Aqua"
text="Aqua"/>
</styles>
</styles>
<subsuperscript
jcr:primaryType="nt:unstructured"
features="*"/>
<table
jcr:primaryType="nt:unstructured"
features="*"/>
<undo
jcr:primaryType="nt:unstructured"
features="*"/>
</rtePlugins>
</text>
<isRichTextFlag
jcr:primaryType="cq:Widget"
ignoreData="true"
name="./textIsRich"
value="true"
xtype="hidden"/>
</items>
</tab1>
<tab2
jcr:primaryType="cq:Widget"
xtype="componentstyles"/>
</items>
</items>
</jcr:root>
添加到原始对话框的唯一项目是&#34; externalStyleSheets&#34;属性&#34; jcr:root&#34;节点(您应该将其映射到样式表):
externalStyleSheets="[/etc/designs/myDesign/css/my_colors.css]"
节点:
<styles jcr:primaryType="nt:unstructured" features="*"> <styles jcr:primaryType="cq:WidgetCollection"> <Aqua jcr:primaryType="nt:unstructured" cssName="Aqua" text="Aqua"/> </styles> </styles>
&#34; cssName&#34;属性必须与您的css样式名称匹配(并且不能以&#34;。&#34;)开头,&#34; text&#34;属性可以是您想要的任何内容,它将显示在下拉列表中。
my_colors.css看起来像这样:
.Aqua { color: Aqua; }
希望这有帮助,
- 乔尔。