4

現在の設定では、Staging と Live という 2 つのターゲットがあります。共同作業者は、影響を受けるコンポーネントがワークフロー内にある間に更新することができます。関連するページを Live に公開するための最後のアクティビティが設定されます。コンポーネントの更新 (2.2、2.5 などのリビジョン) をワークフロー内から Staging に発行することはできますか?

Page.Publish()メソッドの TOM API ドキュメントには、そのような目的を満たすための入力パラメーターがないようです。

編集: 現在のセットアップの追加情報: 公開しようとしているページには、いわば「カスタム レンダラー」があります。ページ テンプレートは、特定のフォルダーから再帰的にコンポーネントを取得し、それに応じて HTML を構築するように設定されています。使用されるメソッドはFolder.GetItems(OrganizationalItemItemsFilter)です。コンポーネントのリストとそのデータを取得します。ページにコンポーネント プレゼンテーションがありません。

4

1 に答える 1

2

標準のTridionソリューション、つまりPage + ComponentPresentations + Workflowを使用する場合、これで十分です。

activateWorkflowメソッドでパラメータをTrueに設定Publish()すると、ワークフローリビジョンが公開されます。これは3番目のパラメーターです。

Public Function Publish( ByVal targets As Variant,
            ByVal activateBlueprinting As Boolean,
            ByVal activateWorkflow As Boolean,
            ByVal rollbackOnFailure As Boolean,
            Optional ByVal publishTime As Date = 0,
            Optional ByVal unpublishTime As Date = 0,
            Optional ByVal deployTime As Date = 0,
            Optional ByVal resolveComponentLinks As Boolean = True,
            Optional ByVal priority As TDSDefines.EnumPublishPriority = Normal,
            Optional ByVal ignoreRenderFailures As Boolean = False,
            Optional ByVal maximumRenderFailures As Long = 0 ) As String

参照:TOM APIドキュメント: " activateWorkflow |アイテムがユーザーのワークリストから(非/再)公開されているかどうかを示します。 "


ただし、テンプレート内のコンポーネントを取得するために使用する場合のように、カスタマイズされたレンダラーを使用してページ出力を作成する場合、Nunoによるバージョン0のトリックFolder.GetItems()など、コンポーネントの最新リビジョンを実際に取得するには追加の呼び出しが必要になります。-v0

これを行うことにした場合、最新のリビジョンは常にターゲットに公開され、正確に「承認された」コンテンツではない可能性があることに注意してください。

于 2012-08-29T09:41:28.137 に答える