2013-02-13 19 views
5

Ich möchte den Artikel itemxml des ausgewählten Artikels von der Tridion CME erhalten und anzeigen.Wie erhalte ich den Artikelxml eines ausgewählten Artikels in Tridion

Ich konnte die Itemxml von meinem VM-Server erhalten, wenn ich die tcm-ID im Browser gebe.

Allerdings möchte ich die gleichen Informationen von Tridion GUI Extension erhalten.

Ich bin in der Lage, den ausgewählten Artikel tcm ID zu bekommen. Gibt es eine Möglichkeit, die itemxml mit coreservice zu erhalten?

oder gibt es eine andere Möglichkeit, dies zu bekommen?

Antwort

5

Im Moment gibt es keine Möglichkeit, Item XML über den Core-Service zu erhalten. Das XML-Element, das Sie gesehen haben, wurde Ihnen vom TCM-Protokoll-Handler zur Verfügung gestellt, der in zukünftigen Versionen möglicherweise nicht vorhanden ist. Wenn Sie Artikel XML in CME zeigen wollen - werfen Sie einen Blick auf diese Erweiterung durch Yoaw:

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

auch im Auge behalten, dass nicht alle Eigenschaften eines Elements könnte in Xml ausgesetzt sein, manchmal haben Sie mehr info in Datenobjekt

2

Sie können die Artikel-XML über CoreService erhalten, aber dadurch erhalten Sie das Tridion R6 (2011) Xml-Format, das nicht das selbe ist, das Sie vorher sehen würden.

Beispielcode verfügbar here.

Ich habe tendenziell eine Seite "GetItemXml.aspx" auf meinen Tcm-Servern, die ich dann mit einem Uri als Parameter aufrufen, und dann würde diese Seite das Item Xml zurückgeben.

4

Werfen Sie einen Blick auf die Power, hat es eine ItemXML Zuschauer (geschrieben von Robert Curlette) für alle Artikel in SDL Tridion

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

Die XML wird auf einer Registerkarte geladen mit Hilfe von JavaScript wie folgt:

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); 
     });   
    } 
}; 

Sie können http://code.google.com/p/tridion-2011-power-tools/source/browse/#svn%2Ftrunk%2FPowerTools.Editor%2FPowerTools%2FClient%2FItemXml%253Fstate%253Dclosed

1

Artikel geschrieben von Yoav Nira den Quellcode der Erweiterung sehen n (Url in der Post von User978511) ist perfekt für Ihre Anforderung.

wenn Sie noch irgendeine Frage und in Eile stehen, um es unten beschriebenen Schritte nur durchführen Arbeits -

1- die extension Herunterladen.

2- Wenden Sie die Schritte 7 und 8 von this article an, um diese Erweiterung zu konfigurieren.