Sitecore PowerShell Extensionsを使ってアイテムをCSVファイルにエクスポート

samatsu 5/8/2016 3222 N/A Sitecore Tools

Sitecore PowerShell Extensions というmarketplaceに公開されているSitecoreのモジュールを使用するととても簡単にアイテムの内容をCSV形式でファイルに出力できます。

例えば、次のようにコマンドを実行するだけでCSV /sitecore/content/home/news アイテムのサブアイテムをCSVファイルに出力できます。超簡単です!!

Get-ChildItem '/sitecore/content/home/news' -Language 'ja-jp' | Select-Object Name,Text |  Export-CSV 'C:\Temp\test.csv' -Encoding UTF8 -NoTypeInformation

上のサンプルでは Select-Object で アイテム名とTextという名前のフィールドのみ出力するようにしています。Select-Object コマンドレットを省くとアイテムのすべてのフィールドの値を出力できます。

また、次のようにShow-ListViewというコマンドレットを使って、リスト一覧に表示できます。

Get-ChildItem '/sitecore/content/home/news' -Language 'ja-jp' | Show-ListView -Property Name,TemplateName,Summary -Title "List View Sample"

上記サンプルを実行すると、ダイアログがSitecoreのUI上に表示されます。このダイアログから CSV,XML,Excel(xlsx),JSON,HTML形式でファイルを出力することもできちゃいます。

このツール少しソースを追いかけてみたのですが、実際にサーバーサイドでAutomationの機能を使用してPowerShellを実行しています。なので、PowerShellのコマンドを使えたり、サーバー上にファイルをを出力したりが普通に行えるみたいです。