「保存」コマンドの拡張機能を作成しています。基本的に、特定のフィールドを検証し、ポップアップを表示して、編集者が現在の日付、リリース番号、その他の属性に基づいて特定のキーワードまたはその他の値を選択できるようにします。
$display.getItem()
エディターが変更した可能性のある現在の値ではなく、CMに格納されているアイテムを返すことが最終的にわかるまで、順調に進んでいると思いました。
この情報を取得するための組み込みの方法はありますか?または、DOMを解析して把握する必要がありますか?
これは私が現在持っているコードです
var item = $display.getItem();
if (item.getItemType() == "tcm:16") {
if (item.getSchema().getStaticTitle() == "Test Schema") {
var content = $xml.getNewXmlDocument(item.getContent());
var fieldXml = $xml.getInnerText(content, "//*[local-name()='NewField']");
alert(fieldXml);
}
}
動作しています-「NewField」の値を取得します-しかし、これはアイテムがロードされたときに持っていた値であり、現在の値ではありません。
興味深いことに、item.getTitle()
タイトルフィールドの現在の値を示しているので、カスタムフィールドでもこれを実現する方法があると思います。