2012-07-31 59 views
2

我想在一個富文本字段的支持SDL Tridion源添加自定義元素。是否有機會通過更改Schema中的XSL過濾來添加它們?如何添加自定義元素在組件的RTF領域支持SDL Tridion 2011 SP1

例子:

我有支持SDL Tridion一個RTF域 「文本」。我想添加如下內容:

<text> 
    <customelement>the text added through the custom element</customelement> 
</text> 

有人可以幫我解決嗎?

謝謝。

+1

可能重複的[如何將自定義標記添加到SDL Tridion中的富文本字段?](http://stackoverflow.com/questions/9613598/how-to-add-custom-tags-to-rich- text-field-in-sdl-tridion) – 2012-07-31 10:58:10

回答

4

我假設你想在你的富文本字段添加一些HTML5元素。

如果你不想修改任何外表套上安裝文件,這是你應該儘量避免在任何時候,你可以嘗試以下方法:

  • 在富文本字段中的選項包括CSS類。
  • 讓用戶將CSS類放在您的富文本字段中的div,span或anchor標籤上。
  • 在前端有一些神奇的JavaScript和jQuery的你可以嘗試的元素更改爲您想自定義元素。
+0

感謝您的回答,您是否想在創建模式的同時在允許的樣式選項中包含css類,如果是的話,我在哪裏可以在相同的CSS類中編寫JavaScript?如果我錯了,請糾正我我的知識較少在JavaScript中 – Patan 2012-08-01 07:41:18

+0

是的,你可以添加一個到允許的樣式選項,如果完全支持的話。 Javascript部分應該包含在前端部分的某處。將它包含在輸出的HTML部分的頭部或JavaScript包含的某處。 – 2012-08-01 08:39:14

3

以前here

回答了這個可能引入,超出的外表套上支持範圍的問題,讓你更好地準備這個養活自己。

+0

我們是否也可以用相同的機制添加'fb:like'類標籤? – 2012-07-31 13:11:19

+0

我不知道這是否有效...嘗試? – 2012-07-31 13:22:13

+0

嘗試過它,它的確如同任何需要像'fb:like'這樣的命名空間的標籤。 – 2012-08-03 21:01:46

3

這可能是沒有必要這麼做。我懷疑你應該專注於你的模板輸出。

的外表套上你的數據存儲在一個RTF的標準方法是在XHTML命名空間XML。這並不意味着你的輸出需要符合這種格式,而是純文本字段的輸出必須是純文本。

如果您想在RTF字段中使用特殊類型的數據,我建議您使用標準的XHTML元素,並配置自定義樣式表,以便最終用戶可以選擇該元素,然後應用「特殊性「,通過選擇一個班級。這可能比編輯源選項卡更好用戶體驗。

在你的模板,你可以簡單地把這些元素融入到你所需的輸出。我建議使用XSLT來做到這一點,或者可能是DOM操作,這取決於複雜性。

+0

謝謝你的回答。正如你期望的那樣,我試圖改變模式的xsl。我正在改變輸出=「文本」,而不是它的工作。而且我也知道我們不能將簡單字段的xsl變換應用。:( 如果我錯了,請糾正我的錯誤 – Patan 2012-08-01 04:43:22

+1

過濾XSLT確實只在Rich Text字段中可用,如果您想在純文本字段上應用XSLT,則可以通過事件系統保存組件或在發佈時使用模板代碼 – 2012-08-01 08:14:07

+0

+1在CME中的標準XHTML(甚至是分隔文本)。這可以保持CMS中的內容作者或業務友好選項,同時爲開發提供了在模板代碼中更改或操縱該模板的靈活性,甚至是渲染 – 2012-08-02 00:50:37

相關問題