SitesAppで使えるGASのコード一覧
本記事では、Google Apps ScriptでGoogleサイトに対して使うことができるSitesAppという処理の一覧表を用意しました。Googleの公式ドキュメントは英語なので、分かりづらいところもありますので、みなさんがそこで挫折しないように日本語で内容が把握できるようにします。
ただし、Googleサイトは、2016年11月22日に新しいバージョンにアップデートされましたが、Google Apps Scriptは新しいバージョンに対応されていません。
下記のコードを利用する際は、以前のバージョンに戻して使う必要がありますのでご注意下さい。
※2022年4月現在は以前のバージョンに戻すこともできなくなっています。
新しいGoogleサイトでは、以前まであったスクリプトエディタという項目がメニューにありませんので利用することができません。
ちなみに、2021年5月までは旧バージョンのサイトを作成できたのですが、今現在は作成することもできなくなりました。
そのため、下記コードはすでにサイトを旧バージョンで作成済みのファイルでのみ利用できるものとなります。
Google Apps Scriptの公式リファレンスでもSites(Classic)と表記されているため、参考までのレガシー情報となります。
SitesAppの概要
SitesAppとは、Google Apps ScriptでGoogleドキュメントに対する操作を行うコードですが、SitesAppに用意されているメソッドでは、次のような操作を行うことができます。
- ページへのファイル添付
- カラムの操作
- コメントの操作
- リストの操作
- ページの操作
- サイトの操作
クラス名一覧
※クリックすると対象場所にジャンプします
クラス別メソッド名一覧
Class Attachment
| メソッド名 | 返り値 | 簡単な説明 | 
|---|---|---|
| deleteAttachment | void | 添付ファイルを削除 | 
| getAs | Blob | 添付ファイルを任意のファイル形式で取得 | 
| getAttachmentType | AttachmentType | 添付ファイルのタイプをHOSTED or WEB形式で取得 | 
| getBlob | Blob | 添付ファイルをBlobとして取得 | 
| getContentType | String | 添付ファイルのMIMEタイプを取得 | 
| getDatePublished | Date | 添付ファイルが最初に公開された日を取得 | 
| getDescription | String | 添付ファイルの説明を取得 | 
| getLastUpdated | Date | 添付ファイルの最終更新日を取得 | 
| getParent | Page | 添付ファイルがネストされているページを取得 | 
| getTitle | String | 添付ファイル名を取得 | 
| getUrl | String | 添付ファイルのダウンロードURLを取得 | 
| setContentType | Attachment | 添付ファイルのMIMEタイプを設定 | 
| setDescription | Attachment | 添付ファイルの説明を設定 | 
| setFrom | Attachment | Blobファイルからページにファイルを添付する | 
| setParent | Attachment | 添付ファイルの親ページを設定 | 
| setTitle | Attachment | 添付ファイル名を設定 | 
| setUrl | Attachment | 添付ファイルのダウンロードURLを設定 | 
Class Column
| メソッド名 | 返り値 | 簡単な説明 | 
|---|---|---|
| deleteColumn | void | カラムを削除 | 
| getName | String | カラム名を取得 | 
| getParent | Page | カラムが属する親ページを取得 | 
| setName | Column | カラムの名前を設定 | 
Class Comment
| メソッド名 | 返り値 | 簡単な説明 | 
|---|---|---|
| deleteComment | void | コメントを削除 | 
| getAuthorEmail | String | コメント者のメールアドレスを取得 | 
| getAuthorName | String | コメント者の名前を取得 | 
| getContent | String | コメントの内容を取得 | 
| getDatePublished | Date | コメントがされた日を取得 | 
| getLastUpdated | Date | コメントの最終更新日を取得 | 
| getParent | Page | コメントの親ページを取得 | 
| setContent | Comment | コメントの内容を設定 | 
| setParent | Comment | コメントの親ページを設定 | 
Class ListItem
| メソッド名 | 返り値 | 簡単な説明 | 
|---|---|---|
| deleteListItem | void | リストを削除 | 
| getDatePublished | Date | リストが最初に公開された日を取得 | 
| getLastUpdated | Date | リストの最終更新日を取得 | 
| getParent | Page | リストの親ページを取得 | 
| getValueByIndex | String | カラム番号を指定してリストの値を取得 | 
| getValueByName | String | カラム名を指定してリストの値を取得 | 
| setParent | ListItem | リストの親ページを設定 | 
| setValueByIndex | ListItem | リスト番号を指定してリストの値を設定 | 
| setValueByName | ListItem | リスト名を指定してリストの値を設定 | 
Class Page
| メソッド名 | 返り値 | 簡単な説明 | 
|---|---|---|
| addColumn | Column | 新しいカラムをリストに追加 | 
| addHostedAttachment | Attachment | ページに添付ファイルを追加 | 
| addListItem | ListItem | リストに項目を追加 | 
| addWebAttachment | Attachment | ページにファイルURLでファイルを添付 | 
| createAnnouncement | Page | ページにお知らせを追加する | 
| createAnnouncementsPage | Page | 新しいお知らせページを作成 | 
| createFileCabinetPage | Page | 新しいファイルキャビネットページを作成 | 
| createListPage | Page | 新しいリストページを作成 | 
| createPageFromTemplate | Page | テンプレートから新しいページを作成 | 
| createWebPage | Page | 新しいサイトを作成 | 
| deletePage | void | ページを削除 | 
| getAllDescendants | Page[] | 子ページを取得(最大200ページ) | 
| getAnnouncements | Page[] | ページのお知らせを取得 | 
| getAttachments | Attachment[] | ページの添付ファイルを取得 | 
| getAuthors | String[] | ページオーナーのメールアドレスを取得 | 
| getChildByName | Page | ページ名で特定の子ページを取得 | 
| getChildren | Page[] | 子ページを取得(最大200ページ) | 
| getColumns | Column[] | リストのカラムを取得 | 
| getDatePublished | Date | ページが公開された日を取得 | 
| getHtmlContent | String | ページの内容をHTML形式で取得 | 
| getIsDraft | Boolean | ページが下書きかどうか取得 | 
| getLastEdited | Date | ページの最終更新日を取得(内容変更のみ) | 
| getLastUpdated | Date | ページの最終更新日を取得(コンテンツの移動など、内容変更以外を含む) | 
| getListItems | ListItem[] | リストの項目を取得 | 
| getName | String | ページ名を取得 | 
| getPageType | PageType | ページタイプをSitesApp.PageType型として取得 | 
| getParent | Page | ページの親ページを取得 | 
| getTextContent | String | ページのコンテンツをテキストとして取得 | 
| getTitle | String | ページのタイトルを取得 | 
| getUrl | String | ページのURLを取得 | 
| isDeleted | Boolean | ページが削除済みかどうか取得 | 
| isTemplate | Boolean | ページがコピー可能かどうか取得 | 
| publishAsTemplate | Page | コピー可能なテンプレートとしてページを公開する | 
| search | Page[] | 検索クエリに合致する子ページを取得(最大200ページ) | 
| setHtmlContent | Page | ページのHTMLを設定 | 
| setIsDraft | Page | ページを下書きモードに設定 | 
| setName | Page | ページ名を設定 | 
| setParent | Page | ページの親ページを設定 | 
| setTitle | Page | ページ名を設定 | 
Class Site
| メソッド名 | 返り値 | 簡単な説明 | 
|---|---|---|
| addEditor | Site | サイトの編集者を追加 | 
| addEditors | Site | 複数のユーザーをサイトの編集者に追加 | 
| addOwner | Site | ウェブサイトのオーナーを追加 | 
| addViewer | Site | サイトの閲覧者を追加 | 
| addViewers | Site | 複数のユーザーをサイトの閲覧者に追加 | 
| createAnnouncementsPage | Page | お知らせページを作成 | 
| createFileCabinetPage | Page | ファイル格納ページを作成 | 
| createListPage | Page | 新しいリストページを作成 | 
| createPageFromTemplate | Page | テンプレートから新しいページを作成 | 
| createWebPage | Page | 新しいページを作成 | 
| getAllDescendants | Page[] | 子ページを取得(最大200ページ) | 
| getChildByName | Page | ファイル名で特定の子ページを取得 | 
| getChildren | Page[] | 子ページを取得(最大200ページ) | 
| getEditors | User[] | サイトの編集者を取得 | 
| getName | String | サイト名を取得 | 
| getOwners | User[] | サイトのオーナーを取得 | 
| getSummary | String | サイトのサマリーを取得 | 
| getTemplates | Page[] | テンプレートページをすべて取得 | 
| getTheme | String | サイトのテーマを取得 | 
| getTitle | String | サイトのタイトルを取得 | 
| getUrl | String | サイトのURLを取得 | 
| getViewers | User[] | サイトの閲覧者とコメント者を取得 | 
| removeEditor | Site | 編集者をサイトから削除 | 
| removeOwner | Site | メールアドレスを指定して、サイトから特定のオーナーを削除 | 
| removeViewer | Site | サイトの閲覧者とコメント者を削除 | 
| search | Page[] | 検索クエリに合致する子ページを取得(最大200ページ) | 
| setSummary | Site | サイトのサマリーを設定 | 
| setTheme | Site | サイトのテーマを設定 | 
| setTitle | Site | サイトのタイトルを設定 | 
列挙型一覧
※クリックすると対象場所にジャンプします
列挙型名一覧
列挙型のメソッドを利用するときには、基本的には『SitesApp.列挙型名.プロパティ名』の形で利用します。
例えば、AttachmentTypeのWEBを設定したい場合は、『SitesApp.AttachmentType.WEB』という形で記述します。
Enom AttachmentType
| プロパティ | タイプ | 説明 | 
|---|---|---|
| WEB | Enom | |
| HOSTED | Enom | 
Enom PageType
| プロパティ | タイプ | 説明 | 
|---|---|---|
| WEB_PAGE | Enum | |
| LIST_PAGE | Enum | |
| ANNOUNCEMENT | Enum | |
| ANNOUNCEMENTS_PAGE | Enum | |
| FILE_CABINET_PAGE | Enum |