Google Calendar List View

説明

このプラグインは、公開された Google カレンダーの一覧表示をするためのショートコードを生成します。

ドキュメント

詳細は、ドキュメント をご参照ください。

スクリーンショット

  • 公開 Google カレンダーの一覧表示
  • ショートコードの使い方
  • 公開カレンダーのサンプル
  • 利用方法
  • Google Calendar API 設定
  • 一般設定
  • 機能拡張 & お知らせ
  • イベントを月別にまとめる

インストール

  1. プラグインフォルダを /wp-content/plugins/ ディレクトリへアップロードしてください。
  2. WordPress の管理画面よりプラグインを有効にしてください。

FAQ

開始時刻 – 終了時刻の表記方法

「開始時間 – 終了時間」の表記を使いたい場合は、以下のショートコードオプションを設定してみてください。
例. MM.DD.YY H:M – H:M(同日) または MM.DD.YY H:M – MM.DD.YY H:M(2日以上)
date_format=”m.d.y H:i” view_end_date=” – “

フックで何ができますか

イベントの表示をカスタマイズすることができます。
本プラグインが提供するスタイルは、本プラグインのlibrary/tagsフォルダに用意されています。詳しくは、ドキュメント英語版ドキュメント)をご覧ください。

過去のイベントを取得する方法

設定メニューの「Start Date」項目の値に、「ALL」あるいは「過去の日付」を設定してください。デフォルトは、現在から未来のイベントを取得します。

Google カレンダーイベントを取得できません。

「Google Calendar API Key」あるいは「Google Calendar ID」を確認してください。もし設定が正しい場合には、 API のクエリ制限を超えた可能性があるため、一日待ってみて下さい。(参考:https://developers.google.com/google-apps/calendar/pricing)

複数の Google カレンダーのイベントを取得できますか。

はい。ショートコード内に、Google Calendar ID と API Key を設定できます。

設定の削除方法

プラグインを無効にしてください。

特定のイベントを非表示にする方法

イベントの説明にハッシュタグ(#display none または #display off)を設定することで、イベントが表示されなくなります。

イベントがないときにメッセージを変更する方法

プラグイン設定の一般設定の「No Event Message」項目、またはショートコードのオプション「no_event_message」にメッセージを入力します。
値が空の場合、”There are no events. “と表示されます。また、値が “none “の場合、メッセージは非表示になります。no_event_message “ショートコードオプションが設定されている場合、メッセージはショートコードのメッセージで上書きされます。

タイムゾーンのズレを手動で修正する方法

このプラグインの設定メニューにある「タイムゾーンオフセットの修正」の値を設定することで、時、分、秒をずらすことができます。

評価

2022年10月7日
A fantastic plugin that’s easy to use with fantastic support from the dev. Highly recommend to anyone looking to make a simple list of events from google on their website.
2021年11月21日
This plugin is amazing and the author gives outstanding support, even going as far as coding a custom solution for our problem! Clearly one of the best in the market.
2019年12月14日
Really nice plugin. Can be customized as you want. Thanks!
6件のレビューをすべて表示

貢献者と開発者

Google Calendar List View はオープンソースソフトウェアです。以下の人々がこのプラグインに貢献しています。

貢献者

“Google Calendar List View” は3ロケールに翻訳されています。 翻訳者のみなさん、翻訳へのご協力ありがとうございます。

“Google Calendar List View” をあなたの言語に翻訳しましょう。

開発に興味がありますか ?

コードを閲覧するか、SVN リポジトリをチェックするか、開発ログRSS で購読してみてください。

変更履歴

7.2.1

  • html_tag のショートカットオプションに新たに追加された li-title 用のテンプレートファイルを追加(追加忘れ)しました。

7.2.0

  • ショートコードオプション「html_tag」に「li-title」を追加しました。このテンプレートは、最初の行にタイトル(太字)を表示し、2行目以降に日付や時刻などの他の要素を表示します。
  • date_format=”m.d.y H:i” view_end_date=” – ” のショートコード オプションを設定すると、開始時刻と終了時刻の両方を表示できるようになります。
  • ショートコードオプション「no_event_link」を設定していた場合、タイトルに {$html_tag_class}_title の CSS を指定できるようにしました。
  • 各イベントの表示テンプレートファイル冒頭の処理の一部を本体に移動しました。

7.1.2

  • view_location ショートコードオプションに、”yes|link”、”yes|map”、”yes|link|map “の3つの選択値を追加しました。「view_location=”yes|link”」と設定すると、URL(http:// または https://)にGoogleカレンダーの位置情報へのリンクが追加されます。また、「view_location=”yes|map”」と設定すると、Googleカレンダーの位置情報にGoogleマップへのリンクが追加されます。また、「view_location=”yes|link|map”」と設定すると、Google Calendar の位置情報の URL(http://、https://)に対してリンクが追加され、位置情報の値に URL がない場合は、Google Maps のリンクが追加されます。

7.1.1

  • 「includes/getAPIDataCurl.php」にある k_getAPIDataCurl 関数で、refererヘッダがないコンテンツの取得に失敗することがある問題を修正。
  • WordPress 6.1.1 と PHP 8.3.6 で動作検証済み。

7.1.0

  • WordPress 6.1 と PHP 8.2 で動作検証済み。
  • WordPress 6.5.2 と PHP 8.3.6 で動作検証済み。

7.0.0

  • Google Calendar API からの取得関数を file_get_contents から curl に変更し、API が応答しない場合の接続タイムアウト問題を改善しました。

6.9.2

  • view_end_date が設定されており、イベント期間が1日以内の場合、終了日を表示しないように変更しました。
  • WordPress 6.0で動作検証済み
  • WordPress 6.1で動作検証済み。
  • WordPressの対応バージョンを4.0から5.4以降に変更しました。

6.9.1

  • デバックモードを修正

6.9

  • 終日イベントの場合、Google Calendar APIで取得する終了日の値が翌日になっていたのを修正。

6.8

  • ショートコードのオプションに「view_end_date」を追加しました。html_tag ショートコードオプションが「li2」の場合、あるいはフックによってカスタマイズされている場合を除いて、view_end_date の値が空でない場合、開始日の後に view_end_date の値を区切り文字として終了日が表示されます。

6.7.2

  • WordPress Coreの翻訳機能を使って月名を保存するためのフック固有の変数
    「translate_month_values」(array) を追加しました。
  • ショートカットオプション 「html_tag」内の「li-month」を、WordPress Coreの翻訳機能を使って月名を表示するように変更しました。

6.7.1

  • 月ごとの表示をカスタマイズするためのフック「lvgc_each_output_data」を実装しました。また、フック固有の変数 “start_date_month_value”、”pre_start_date_month_value”、”month_value” を追加しました。

6.7

  • ショートカットオプション “html_tag “に “li-month ” を追加しました。”li-month” の表示スタイルは、同じ月に開催されるイベントをまとめて表示するというものです。詳しくはドキュメントをご覧ください。技術的な詳細は、プラグインの library/tags/li-month.php を参照してください。

6.6

  • タイムゾーンの問題を解決できない場合、このプラグインの設定メニューにある「タイムゾーンオフセットの修正」の値を設定することで、時、分、秒をずらす機能を追加。
  • 一部の日付処理に関する2038年問題に対応するため、strtotimeではなくdatetime関数に変更。

6.5.2

  • ショートコードオプション “html_tag” のテンプレート “p” を使用した場合の問題を修正しました。
  • WordPress 5.8 と PHP 8.0.0 で動作検証済み。

6.5.1

  • ショートコードオプション “html_tag” のテンプレート “li2” が使用できない問題を修正しました。

6.5

  • “html_tag” ショートコードオプションに予期しない値が含まれていた場合に発生するエラーを修正しました。
  • “no_event_link” ショートコードオプションを追加しました。”no_event_link” オプションが有効で、その値が空でない場合、イベントへのリンクは削除されます。

6.4.1

  • Location タイトル名の翻訳が有効になるように修正しました。その結果、view_location_name ショートカットオプションのデフォルト値が空になりました。空になった場合は、Location: が使用されます。

6.4

  • view_locationオプションが有効な場合、Locationのタイトル名を「Venue: 」から「Location: 」に変更しました。
  • 「view_location_name」ショートコードオプションを追加しました。view_location オプションを有効にしたときに表示されるLocation タイトル名を変更する場合は、このオプションを設定してください。

6.3

  • フックの $gc_description の値にhtmlタグを許可しました。
  • イベントのリンクにtitle属性を追加し、イベントの説明文の抜粋(最大1024バイト)をツールチップに表示する機能を追加しました。
  • ショートカットオプション “html_tag” に “li2″ を追加しました。”li2 “の表示スタイルは、同じ日に開催されるイベントがまとめて表示されるというものです。技術的な詳細は、プラグインのライブラリ/tags/li2.phpを参照してください。

6.2

  • 設定メニューからソートできなかった問題を修正。

6.1

  • イベントがない場合、設定メニューやショートコードのオプションに表示するメッセージの変更を追加しました。値が空の場合、”There are no events. “が設定されます。値が “none “の場合は、メッセージは非表示になります。no_event_message “ショートコードオプションが設定されている場合、メッセージはショートコードのメッセージで上書きされます。

6.0

  • ハッシュタグ(#display)を追加しました。イベントの説明にハッシュタグ(#display none または #display off)を設定することで、イベントが表示されなくなります。
  • lvgc_each_output_data フック用に、「hash_tags_display_value」と 「element_count 」の要素を追加しました。
  • イベントがない場合は、「イベントがありません。」と表示されます。
  • WordPress 5.7 と PHP 8.0.0 で動作検証済み。

5.9.1

  • WP_DEBUG が true のときに表示される警告を修正。
  • WordPress 5.6.2 と PHP 8.0.0 で動作検証済み。

5.9

  • Google カレンダーのオリジナル値を、lvgc_each_output_data フックへ追加しました。この値については、https://developers.google.com/calendar/v3/reference/events#resource を参考にしてください。
  • WordPress 5.6 と PHP 7.4.2 で動作検証済み。

5.8

  • このプラグインの設定に対する CSRF (クロスサイトリクエストフォージェリ) 脆弱性への対応を追加。
  • WordPress 5.3.2 と php 7.4.2 で動作検証済み。

5.7

  • ショートコードオプション「view_location」を追加しました。もしこの値が空でなければ、場所データがタイトルの後に表示されます。
  • フックで利用できる $gc_location 変数を追加しました。

5.6

  • WordPress 5.3.2 と PHP 7.4.1 で動作検証済み。
  • ショートコードオプション「start_date」と「end_date」が設定されていないかった場合の警告メッセージが出る問題を修正。
  • たとえ、デフォルトの「Googleカレンダー ID」あるいは「API Key」が設定されていなくても、Googleカレンダーを参照してしまっていた問題を修正。

5.5

  • 管理画面の設定メニューから設定した Order by Sort 設定が適用されない問題を修正。
  • 説明などいくつかのGoogleカレンダーの値が空のときに出ていた警告を修正。

5.4

  • “lvgc_each_output_data” フックの問題を修正。
  • フック内で利用できる “$end_date_num” 変数を追加。

5.3

  • WordPress 5.3 と PHP 7.3 で動作検証済み。
  • 複数のカレンダーにおけるソート問題を修正。

5.2

  • WordPress 5.2.4 と PHP 7.3 で動作検証済み。
  • 降順ソートされない問題を修正。
  • load_plugin_textdomain 関数について、WordPress 3.7 以降の引数に対応するように改善。

5.1

  • WordPress 5.2.2 と PHP 7.3 で動作検証済み。
  • get_google_calendar_contents 関数内の配列チェック部分の修正。
  • ショートコードオプションを指定しなかった場合のエラーメッセージ問題を修正。
  • file_get_contents 関数による警告メッセージ問題を修正。

5.0

  • “start_date” と “end_date” オプションにといて、strtotime 日時フォーマットをサポートしました。”now”, “+1 days”, “-2 days”, “yesterday”, “-1 week” といった様々な strtotime 関数の日時フォーマットが利用できます。
  • “max_display” ショートカットオプションを追加しました。”max_view” は、Google カレンダーから取得する件数のためのオプションでした。”max_display” は、表示件数のためのオプションです。もし、”max_display” が設定されていない場合には、”max_view” の値がセットされます。もし、様々な言語のイベント(1.2.3 の3つのイベントが日本語、4.5.6 の3つのイベントが英語)の場合で、 “max_view=5″、lang=”en”の場合、 5. と 6. のイベントしか表示できません。理由はイベント件数が6件あり、そのうち先頭の5つのみしかGoogleカレンダーから取得していないためです。したがって、”max_view” を 6かもう少し多めに設定した上で、”max_display” を 5にすれば、Googleカレンダーから 6か設定した多めの件数を取得した上で、必要な言語の 5件をピックアップして表示することができます。
  • WordPress のタイムゾーン設定をオフセット(+9, -1 等)にしていた場合に、正しく日時が取得できない問題を修正。
  • 複数のカレンダーを利用する場合に発生していた max_view (maxResults) に関する問題を修正

4.6

  • Google カレンダーの「description」上の HTMLタグを許可しました。

4.5.1

  • 設定の「start_date」「end_date」ショートカットオプションのヘルプメッセージを修正しました。

4.5

  • 「start_date」「end_date」ショートカットオプションの処理を修正しました。
  • 「orderbysort」ショートカットオプションのデフォルト値(デフォルト: descending)を修正しました。

4.4

  • フックで利用できる「gc_description」変数を追加しました。

4.3

  • current_time 関数エラーを修正
  • WordPress 5.0 および PHP7.2 で動作検証済み。

4.2

  • WordPress 4.9 で動作検証済み。

4.1

  • link タグに target=”_blank” 属性を追加。

4.0

  • 複数の Google カレンダーをサポート。
  • start_date オプションを設定しない場合のローカルタイムスタンプの取得を修正。
  • 値に空白を含むケースにおいて、 #organizer のハッシュタグの処理を修正。
  • orderbysort のデフォルト設定を descending (降順)に変更

3.1

  • lib/tags/lip.php テンプレートを再アップロード。

3.0

  • ハッシュタグ「#organizer」を追加。フック内で、$hash_tags_organizer_value か、$hash_tags[‘organizer’][‘value’] が利用可能にした。
  • ショートコード「enable_view_category」を新設。ここに値が設定していると、カレンダーの説明文内に #type, #organizer のハッシュタグが設定されていれば、カテゴリー表示する
  • ショーコード(html_tag_date_class と html_tag_title_class)の削除。html_tag_class に統合した。
  • テンプレートタグファイル(library/tags)を簡素化するため、コードを修正

2.2

  • get_select_lang_data 関数を、外部classへ移動
  • カレンダーの説明内のハッシュタグを収集するクラス「gclv_hash_tags」を新設
  • html_tag ショートコードに lip テンプレートを追加
  • CSS名を修正
  • フックで利用できる配列「hash_tags」、変数「hash_tags_type_title」を追加

2.11

  • ショートコードで lang オプションを使った場合に表示されたデバッグメッセージが出ないように修正

2.1

  • ショートコードに「lang」を追加

2.0

  • 安全面の問題から「lvgc_output_data」「lvgc_gc_data」フックを削除
  • 設定名の修正
  • 「lvgc_each_output_data」フックのために、ショートカットオプション「hook_secret_key」を追加

1.51

  • ドキュメントリンクの翻訳データを追加

1.5

  • 翻訳問題の修正。
  • ドキュメントの修正。

1.43

  • WordPress 4.8 と PHP 7.1 で動作検証しました。

1.42

  • lvgc_each_output_data フックを修正

1.41

  • lvgc_each_output_data フックを修正

1.4

  • lvgc_each_output_data フックは、各出力データをカスタマイズできます。

1.3

  • html_tag 初期値処理の修正と、ショートコードに id オプションを追加

1.2

  • 「lvgc_output_data」と「lvgc_gc_data」という2つのフックを追加しました。
    「lvgc_output_data」フックは、出力データをカスタマイズできます。「lvgc_gc_data」フックは、取得した Google カレンダー データをカスタマイズできます。

  • date 関数の代わりに、current_time と get_date_from_gmt を使うことで、タイムゾーン問題を修正しました。

  • 開催中のイベント用に html tag へ「list-view-google-calendar-holding」class を追加しました。

1.1

  • 4つのショートコードオプション(max_view, html_tag_class, html_tag_date_class, html_tag_title_class)を追加しました。

1.0

  • 最初のリリース。