Support » Plugin: XO Event Calendar » 1つのイベントページで複数の日付を登録する方法

  • Resolved temis

    (@temis)


    お世話になっております。
    プラグインの開発ありがとうございます。

    イベントページを作成する際に、1つのイベントページで複数の連続しない日付を登録する方法
    もしくは、パーマリンクを任意のページに変更する方法はありませんでしょうか。

    例えば、下記のようにしたいのですが、

    AAイベント
    2020/7/20 10:00~13:00
    2020/7/23 10:00~13:00
    2020/7/28 10:00~13:00

    パーマリンク
    XOカレンダーのイベントページではなく、
    別に作成した1つのイベント用の投稿ページ(/event_seminar/AAイベント/)にリンクさせたい

    ブログで記載されていたパーマリンクの変更方法を拝見して、
    サムネイルのカレンダーからクリックした際に
    XOカレンダーのイベントページではなく、投稿ページ(/event_seminar/AAイベント/)に
    リンクさせることはできたのですが

    イベントページを複数作るとパーマリンクが同じものは作成できないため、
    2020/7/20 10:00~13:00 は(/event_seminar/AAイベント/)にリンクできるのですが、
    2020/7/23 10:00~13:00に該当するページのパーマリンクが(/event_seminar/AAイベント-01/)
    といった形になり登録できず、(/event_seminar/AAイベント/)にリンクさせることができません。

    もし可能であれば方法をご教授いただければ幸いです。
    お手数をおかけしまして恐縮ですが、何卒よろしくお願いいたします。

Viewing 6 replies - 1 through 6 (of 6 total)
  • Thread Starter temis

    (@temis)

    改めて確認した所、WPで別途作成していた投稿ページと
    XOカレンダーで作成したイベントページを同じURLにした際に、
    XOカレンダーで作成したイベントページが表示されるようになってしまってました。

    ブログで記載されていたパーマリンクの変更方法を拝見して、
    サムネイルのカレンダーからクリックした際に
    XOカレンダーのイベントページではなく、投稿ページ(/event_seminar/AAイベント/)に
    リンクさせることはできたのですが

    上記は対応できておりません。
    何卒よろしくお願いいたします。

    Plugin Author ishitaka

    (@ishitaka)

    こんにちは

    イベント投稿に複数のイベント日を登録することは難しいです。カスタムフィールドにリンク先を追加して、カレンダーの表示のリンクをカスタムフィールドのリンクへ変更するのはどうでしょうか?

    下記は、Advanced Custom Fields プラグインを使用してリンク (Link URL) カスタムフィールドをイベント投稿に追加した場合の例です。

    テーマの functions.php に、

    function my_xo_event_calendar_events( $events, $args, $month_index ) {
    	foreach( $events as &$event) {
    		$url = get_field( 'リンク', $event['post']->ID );
    		$event['permalink'] = esc_url( $url );
    	}
    	return $events;
    }
    
    if ( function_exists( 'get_field' ) ) {
    	add_filter( 'xo_event_calendar_events', 'my_xo_event_calendar_events', 10, 3 );
    }
    Thread Starter temis

    (@temis)

    素早く丁寧なご返信誠にありがとうございます。

    教えていただいたAdvanced Custom Fields プラグインを追加して、
    XO Event Calendarのイベントの編集画面に任意のURLを追加する欄を加えることができました。

    ただ、大変恐縮なのですが、プログラマーではないため、
    いただいたプログラムのどこを編集すれば上手く機能させることができるかがわからないのですが
    もし可能でしたら、教えていただいたコードの中で変更すべき箇所を教えて頂けませんでしょうか。

    開発環境でいただいたプログラムをそのまま子テーマ(Lightning-child)のfunctions.phpに加えた所、
    サムネイルのイベントのリンクをクリックすると、http://localhost/に飛ぶ状態です。

    ・現在の仕様

    <カスタムフィールド フィールドグループを編集の箇所>
    (投稿カストノミー カテゴリー xo_event_cat イベントで追加)

    タイトル カレンダー
    フィールドラベル リンク
    フィールド名 link
    フィールドタイプ URL

    <XO Event Calendarのイベントの編集画面>
    新規追加欄 リンク http://localhost/event_seminar/74/ で記載

    ご面倒をおかけして大変恐縮ですが、お手すきの際にご確認頂けますと非常に幸いです。
    何卒よろしくお願いいたします。

    Thread Starter temis

    (@temis)

    サムネイルのイベントのリンクをクリックすると、http://localhost/に飛ぶ状態です。

    他ページも確認した所、サムネイルのイベントのリンクは表示されているページになっていました。

    例えば、
    http://localhost/category/event_seminar/ に表示されているカレンダーのイベントは、http://localhost/category/event_seminar/ にリンク

    http://localhost/ に表示されているカレンダーのイベントは、
    http://localhost/ にリンク 
    のようです。

    何卒よろしくお願いいたします。

    Plugin Author ishitaka

    (@ishitaka)

    フィールド名 link

    フィールド名が「link」なので、下記のように変更してください。

    get_field( 'リンク', $event['post']->ID );

    get_field( 'link', $event['post']->ID );

    Thread Starter temis

    (@temis)

    無事に変更することができました!!
    機能が実装できてとても嬉しいです。一人ではハードルが高く不可能でした。
    ご多忙の中、ご教授くださり誠にありがとうございました。

Viewing 6 replies - 1 through 6 (of 6 total)
  • The topic ‘1つのイベントページで複数の日付を登録する方法’ is closed to new replies.