ヤマムギ

growing hard days.

*

Googleカレンダーの予定をV3 APIでPHPからJSONを取得してWebページに表示する

      2016/02/08


Googleカレンダーを使って管理しているライブスケジュールを日付によって、
未来はライブ告知、過去は終わったライブとしてWebページに表示します。

Google側の設定とキー取得

下記の順番で設定します。

設定方法は様々なサイトで紹介されていますので「Google Calendar API v3」とかで検索してください。

  1. プロジェクトの作成
  2. APIの有効化
  3. クライアントID作成
  4. APIキー取得

Pear HTTPライブラリの準備

今回は共用レンタルサーバー上で実装しなければならず、HTTP RequestやHTTP Clientをインストール出来なかったので、ダウンロードしてからFTP経由で配置しています。

配置したライブラリ

  • Pear.php
  • HTTP/Request.php
  • HTTP/Client.php
  • Net/Socket.php
  • Net/URL.php

Pear ダウンロードサイトでPackage検索でそれぞれ探してダウンロードしました。

ライブラリの配置先にパスを通す

レンタルサーバーなので実行時にパスを通す必要があります。

なので、set_include_path(get_include_path() . PATH_SEPARATOR . $path);としています。
詳しくは下部をご参照ください。

カレンダーを取得して表示する

このカレンダーから取得しています。

そしてこちらに表示しています。
ライブ情報
過去のライブ

ライブ情報の例です。
※過去のライブは逆に今日より過去のスケジュールを取得しています。

パラメータはこちらのオフィシャルサイトをご覧ください。

https://developers.google.com/google-apps/calendar/v3/reference/events/list

@yamamanx

開発ベンダー5年、ユーザ企業システム部門通算9年、ITトレーナー1年目のSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。

このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。

また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。

 - Google, PHP , ,

ad

ad

  関連記事

Google関連のAPIを試すためのGoogleSiteを作ってみました

組み込み機能で出来る事は組み込み機能で と思いまして、Googleサイトを試験的 …

ホームページやサイトがiPhone,iPadのホーム画面に追加された時のアイコンを設定しておく

headタグでapple-touch-iconを指定 [crayon-5b776 …

RedmineにGoogleAppsアカウントでログイン出来るようにする

RedmineのログインをGoogleアカウントで出来るように[redmine_ …

個人のGoogleカレンダーの予定をPythonで取得する

Google Calendar Twilio ReminderのGoogleカレ …

WordPressの記事を公開日時に関係なくソート順を変更する

PostMash Customを使う WordPressのプラグインでPostM …

Google Apps ScriptでAdmin SDK Directory Serviceを使ってユーザの最終ログイン情報一覧を出力する

GoogleAppsで使わなくなったアカウントを確認する方法として、最終ログイン …

Googleカレンダーの予定をPHPからXMLで取得してWebページに表示する(現在廃止されたAPIなので使えません)

ご注意 ※下記の記事で使用していたAPIは2016年現在使用出来なくなっています …

WordPressにログインを強制して記事ごとのアクセス制限もする

WordPressを限定された組織内で使いたいとした場合に下記を実現したいと思い …

Google Apps ScriptでAdmin SDK Directory Serviceを使ってグループメンバー情報を出力する

GoogleAppsのGoogleGroupをメーリングリストとして使っている人 …

「Cloud Vision Api & Tensorflow勉強会」に行ってきました

「Cloud Vision Api & Tensorflow勉強会」に行 …