{"id":19623878,"url":"https://github.com/appleple/acms-google-calendar","last_synced_at":"2026-01-21T07:32:27.877Z","repository":{"id":66341118,"uuid":"280343818","full_name":"appleple/acms-google-calendar","owner":"appleple","description":"Google Calendar API と連携し、お問い合わせフォームなどで送信された内容を任意のGoogleカレンダーに登録できます。","archived":false,"fork":false,"pushed_at":"2025-11-05T02:02:32.000Z","size":72159,"stargazers_count":1,"open_issues_count":0,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-11-05T04:05:56.668Z","etag":null,"topics":["a-blog-cms","google-calendar","google-calendar-api"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/appleple.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-07-17T06:20:50.000Z","updated_at":"2025-11-05T02:02:34.000Z","dependencies_parsed_at":"2024-02-22T09:41:45.067Z","dependency_job_id":null,"html_url":"https://github.com/appleple/acms-google-calendar","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/appleple/acms-google-calendar","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appleple%2Facms-google-calendar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appleple%2Facms-google-calendar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appleple%2Facms-google-calendar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appleple%2Facms-google-calendar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/appleple","download_url":"https://codeload.github.com/appleple/acms-google-calendar/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/appleple%2Facms-google-calendar/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28629915,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-21T04:47:28.174Z","status":"ssl_error","status_checked_at":"2026-01-21T04:47:22.943Z","response_time":86,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["a-blog-cms","google-calendar","google-calendar-api"],"created_at":"2024-11-11T11:35:56.241Z","updated_at":"2026-01-21T07:32:27.860Z","avatar_url":"https://github.com/appleple.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# acms-google-calendar\n\n「[Google Calendar](https://www.google.com/calendar/about/)」と連携し、お問い合わせフォームなどで送信された内容を任意の Google Calendar に登録する拡張アプリです。\n\n## ダウンロード\n\n[Google Calendar for a-blog cms](https://github.com/appleple/acms-google-calendar/raw/master/build/GoogleCalendar.zip)\n\n## 動作環境\n\n- a-blog cms \u003e= Ver. 3.1.0\n- php \u003e= 7.2.5\n\n## 準備\n\n次のステップで a-blog cms と [Google Calendar](https://www.google.com/calendar/about/) を連携します。\n\n1. Google Calendar と連携するプロジェクトを設定\n2. ClientID JSON の取得\n3. ClientID JSON を CMS 側に登録\n\n### 1. Google Calendar と連携するプロジェクトを設定\n\n[Google API Console](https://console.developers.google.com/)にアクセスし、a-blog cms と連携するプロジェクトを設定します。\u003cbr\u003e\nGoogle API Console で新しいプロジェクト、または既存のプロジェクトを選択します。\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"./images/create_new_project.png\" width=\"80%\"/\u003e\n\u003c/div\u003e\n\n新規でプロジェクトを作成した場合、または、Google Calendar API を有効化していないプロジェクトの場合は、プロジェクトの管理画面で ライブラリ-\u003eAPI ライブラリ に遷移し、Google Calendar API を有効化します。\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"./images/activate_google_calendar.png\" width=\"80%\"/\u003e\n\u003c/div\u003e\n\n### 2. ClientID JSON の取得\n\n続いて、a-blog cms と連携するプロジェクトの認証情報を作成します。\u003cbr\u003e\nプロジェクトの管理画面で OAuth クライアント ID を選択し、OAuth クライアント ID を作成します。\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"./images/select_key_type.png\" width=\"80%\"/\u003e\n\u003c/div\u003e\n\nOAuth クライアント ID 作成時に設定しなければならない項目は、アプリケーションの種類、名前、承認済みのリダイレクト URL です。\u003cbr\u003e\nここでは、下の画像のようにアプリケーションの種類を「ウェブアプリケーション」、承認済みのリダイレクト URL は「ドメイン名/bid/（現在使用しているブログの BID）/admin/app_google_calendar_callback/」と設定します。名前は任意のもので構いません。\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"./images/setting_oauth_json.png\" width=\"80%\"/\u003e\n\u003c/div\u003e\n\n作成が完了したら、画像の赤丸で囲まれた場所をクリックします。ここで、JSON ファイルがダウンロードされますので、このファイルを a-blog cms が動いているサーバにアップロードします(ブラウザからアクセスできないドキュメントルートより上の階層にアップロードすることが望ましいです)。\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"./images/download_json.png\" width=\"80%\"/\u003e\n\u003c/div\u003e\n\n### 3. ClientID JSON を CMS 側に登録\n\na-blog cms において拡張アプリが HOOK 処理を行えるように，config.server.php の設定を変更します。\n\n```php\ndefine('HOOK_ENABLE', 1);\n```\n\nextension/plugins に[Google Calendar for a-blog cms](https://github.com/appleple/acms-google-calendar/raw/master/build/GoogleCalendar.zip)をアップロードし、管理画面 \u003e 拡張アプリより、 Google Calendar をインストールします。インストール完了後、管理画面 \u003e Google Calendar より Google Calendar の管理画面に移動します(下の図)。ここで、Client ID Key Location に先ほどアップロードした JSON ファイルが存在する場所を表す絶対パスを入力し、「保存」をクリックした後、「認証」をクリックします。認証に成功すると、「認証」の表示が「認証済み」に変化します。\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"./images/acms_setting_oauth.png\" width=\"80%\"/\u003e\n\u003c/div\u003e\n\n## 設定\n\n### 基本的な設定\n\n次に、Google Calendar と連携するフォームの設定を行います。管理画面 \u003e フォーム より、連携したいフォームの設定画面に移動します。「Google Calendar 設定」という項目があるので、ここにフォームが送信された時にカレンダーに登録したい値を設定します。例えば入力する値は次のように設定します。\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"./images/setting_example1.png\" width=\"80%\"/\u003e\n\u003c/div\u003e\n\nこの設定では、フォームが送信された際に、設定した Calendar ID のカレンダーに、イベント名「サンプルイベント」、場所「名古屋市中村区名駅 3-18-5 モンマートビル 5F」、説明「みんなで楽しめるイベントです。」、開始日時「2023/04/12 12:00」、終了日時「2023/04/12 14:00」、タイムゾーン「Asia/Tokyo」としてイベントが追加されます。\n\n### 発展的な設定\n\nカレンダーに登録される値をフォームの内容に応じた値にすることができます。例えば、次のように設定します。\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"./images/setting_example2.png\" width=\"80%\"/\u003e\n\u003c/div\u003e\n\nこの例では、イベント名「{description} について」、開始日付「{postal-code}{address1}{address2}」、説明「このイベントの内容は {inquiry} です。」のイベントが追加されます。ここで、{}で囲まれた部分には{}内の名前に対応するカスタムフィールド名のフォーム送信時の値が挿入されます。また、時間設定にもカスタムフィールドの値を用いることができます。その際は、右の「カスタムフィールドの値を使用する」チェックボックスにチェックしてください。\n\n### 日付・時間の設定\n\n「開始日付」及び「タイムゾーン」は必須の入力項目となります。それ以外の項目については任意ですが、記述方法によって追加されるイベントの終了時刻が異なります。\n\n- 「開始日付」及び「開始時間」が入力されており、「終了日付」、「終了時間」が入力されていない場合\n  - カレンダーに登録される終了日時は、「開始日付」、「開始時間」と同じになります\n- 「開始日付」が入力されており、「開始時間」、「終了日付」、「終了時間」が入力されていない場合\n  - カレンダーに登録されるイベントは「開始日付」の終日イベントになります\n- 「開始日付」及び「終了日付」が入力されており、「開始時間」、「終了時間」が入力されていない場合\n  - カレンダーに登録されるイベントは「開始日付」から「終了日付」までの終日イベントになります\n  - この際、終了日付も含むイベントを登録したい場合は、終日日付+1 日とすることに注意してください\n- 「終了日付」及び「終了時間」は、「+yy-MM-dd」及び「+HH:dd:ss」と記述し、それぞれ「開始日付」、「開始時刻」に対しての経過時間を設定できます\n\n### 参加者の設定\n\n参加者欄にはメールアドレスを指定します。イベントが追加された時、ここに記入されたメールアドレスがイベント参加者としてカレンダーに登録されます。この際、Google Calendar の機能で参加者にメールによる通知が行われます。また、参加者として追加されたメールアドレスが Gmail の場合、そのアカウントのカレンダーにイベントが自動的に追加されます。\n\n- 参加者は複数追加することができます。その際は「,」でメールアドレスを区切ってください\n  - (例：{email1}, {email2})\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappleple%2Facms-google-calendar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fappleple%2Facms-google-calendar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fappleple%2Facms-google-calendar/lists"}