2013-02-13 9 views
5

Vorrei ottenere e visualizzare il itemxml dell'oggetto selezionato da Tridion CME.Come ottenere l'itemxml di un elemento selezionato in Tridion

Sono riuscito a ottenere l'Itemxml dal mio server VM quando ho fornito l'ID tcm nel browser.

Tuttavia, mi piacerebbe ottenere le stesse informazioni da Tridion GUI Extension.

Sono in grado di ottenere l'ID tcm dell'articolo selezionato. C'è un modo per ottenere l'oggetto xml usando il servizio di corriere ?

o c'è un altro modo per ottenere questo?

risposta

5

Al momento non è possibile ottenere Item XML tramite il servizio di base. L'XML dell'elemento che hai visto ti è stato fornito dal gestore del protocollo TCM che potrebbe non essere presente nelle versioni future. Se si desidera mostrare elemento XML in CME - dare un'occhiata a questa estensione per Yoaw:

http://sdltridionworld.com/articles/sdltridion2011/tutorials/GUIextensionIn8steps.aspx

Inoltre, tenete a mente che non tutte le proprietà di un elemento potrebbero essere esposti in XML, a volte si ha più info in Oggetto dati

2

È possibile ottenere l'oggetto XML tramite CoreService, ma questo ti darà il formato Xml di Tridion R6 (2011), che non è lo stesso che avresti visto prima.

Codice di esempio disponibile here.

Tendo ad avere una pagina "GetItemXml.aspx" sui miei server Tcm che poi chiamerò con un Uri come parametro, e quindi questa pagina restituirebbe l'oggetto Xml.

4

Date un'occhiata a PowerTools, ha un visualizzatore ItemXML (scritto da Robert Curlette) per tutte le voci di SDL Tridion

http://code.google.com/p/tridion-2011-power-tools/wiki/ItemXML

L'XML è caricato su una scheda utilizzando JavaScript come segue:

ItemXmlTab.ItemXmlTab.prototype.updateView = function ItemXmlTab$updateView() 
{ 
    if (this.isSelected()) 
    { 
     var xslPath = $ptUtils.expandPath("/PowerTools/Client/ItemXml/ItemXmlTab.xslt", true); 

     $xml.loadXsltProcessor(xslPath, function (value) 
     { 
      var xmlSource = $display.getItem().getXml(); 

      // Filter out all spacing characters 
      xmlSource = xmlSource.replace(/\t|\n|\r/g, ""); 

      var html = $xml.xsltTransform(value, $xml.getNewXmlDocument(xmlSource), null); 

      $dom.setOuterHTML($("#itemXml"), html); 
     });   
    } 
}; 

È possibile visualizzare il codice sorgente del prolungamento a http://code.google.com/p/tridion-2011-power-tools/source/browse/#svn%2Ftrunk%2FPowerTools.Editor%2FPowerTools%2FClient%2FItemXml%253Fstate%253Dclosed

1

Articolo scritto da Yoav Nira n (Url nel post di user978511) è perfetto per le tue esigenze.

se si sta ancora ad affrontare qualsiasi problema e in fretta per farlo funzionare basta eseguire i passaggi qui sotto -

1- Scaricare il extension.

2- Applicare i passaggi 7 e 8 di this article per configurare questa estensione.

Problemi correlati