LoginSignup
2
1

SharePoint Onlineでサイトページからページ一覧を取得するために管理しているリストのIDを取得したい。

Last updated at Posted at 2023-06-03

リストの中身を知るには、時にリストIDが必要な場合があるのだ

SharePoint Onlineでニュースなどページを追加すると、サイトのページとして一覧が確認できます。見てわかるとおりこれはリストです。
image.png

この記事が役に立つ人

SharePoint Onlineを会社や部署のポータルサイトとして利用していて、多くのニュース投稿を管理してる方にお勧めです。
さっそくPower Automateで取得してやろう!と試してみましたが、リストの一覧にサイトページのリストは現れません。これは「カスタム値の入力」で直接IDを投入してやる必要がありそうです。
image.png

サイトのページは、ただのリストではないからか?

ふつうのリストだと、「設定」>「リストの設定」を開くと、出てくる設定画面のURLにリストIDが含まれています。(%7Bは{を表すので、その後ろからがリストIDですね)
image.pngimage.png
ところが、サイトのページ リストが表示されている画面から「設定」をクリックしても、「リストの設定」がありません。これは困った。
image.png

リストIDの取得方法

その1 設定画面から取得する

以下の通りに開きます。

  1. 設定
  2. サイトコンテンツ
  3. サイト設定
  4. サイトのライブラリとリスト
  5. "サイトのページ"のカスタマイズ
    image.png
    「サイトのライブラリとリスト」画面のURLに、リストIDが含まれていました。
    image.png

その2 Excelにエクスポートから取得する

サイトの上部に表示されている「Excelにエクスポート」をクリックします。
image.png
query.iqy という名前のファイルがダウンロードされます。
image.png
これをテキストエディタやメモ帳で開きます。SharePointListName という項目がリストのIDです。
image.png

Power Automateでリストの内容を取得してみる

さっそく、取得したIDを「複数の項目の取得」のリスト名に「カスタム値の入力」として差し込みました。
image.png
いちどテスト実行して得たJSONの値をコピーして、「JSONの解析」アクションの「サンプルから生成」を開いた中に張り付け、スキマーを自動生成させます。
この状態で再度テスト実行します。
image.png
サイトの一覧が取得できました。取得できたのは以下のような項目です。

項目 説明
ID リストの行ID
TITLE ページタイトル
Editor 記事の投稿者情報
Editor#Claims 投稿者のID
Modified 編集日時
Created 作成日時
Description ページの中身のテキスト(250文字)
BannerImageUrl バナーのイメージURL
FirstPublishedDate 最初に公開された日時
OData__AuthorByline 投稿者の情報、ページURL、ページファイル名、バージョン番号など

IDが取得できてよかった・・・でももっと簡単な方法が。

リスト名の選択に現れなかった「サイトのページ」を手入力したら、ID不要で取得できてしまった衝撃の字事実・・・。IDの出し方をいろいろ探していた時間っていったい・・・。
image.png
この衝撃の方法は、こちらのQiita記事で知りました。https://qiita.com/mizukyf/items/81aa3a370cd40f501162

最後に

サイトのページリストはページを一覧で取得できてPower Automateと組み合わせるとかなり強力なことがわかりました。ページの中身のテキストも抽出できるのだけれど、250文字以降は端折られているので、別記事では全文取得にチャレンジしたいと思います。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1