• こんにちは。いつもお世話になっております。

    My Calendarというプラグインでイベントの管理をしたいと思っています。
    イベント受付の開始終了が頻繁な使い方をするので、イベントの登録オプションで設定できるイベント登録設定で、受付中・受付終了を切り替える機能を使いたいと思っています。
    テンプレートタグ{event_open}を設定すれば受付中・受付終了の文字が表示されるのですが、
    カレンダーを見て一目で受付終了しているのかどうかが分かるようにしたいです。

    なので、受付終了のイベントのタイトルに<del>を付与したいのですが、
    試行錯誤してみましたが勉強不足で詰まってしまいました。
    フィルターフックを使うのだろうなと思い
    プラグインのmy-calendar-output.phpにある、以下をいじればなんとかなるのかなと思うのですが

    if ( get_option( 'mc_event_registration' ) == 'true' ) {
    	switch ( $event->event_open ) {
    		case '0':
    			$status = mc_kses_post( get_option( 'mc_event_closed' ) );
    			break;
    		case '1':
    			$status = mc_kses_post( get_option( 'mc_event_open' ) );
    			break;
    		case '2':
    			$status = '';
    			break;
    		default:
    			$status = '';
    	}
    } else {
    	$status = '';
    }

    それで色々調べて試してみたのが以下です。

    function mc_custom_event_open()
    {
      global $post;
      $event_id = get_post_meta($post->ID, '_mc_event_id', true);
      if($event_id) {
        if ( get_option( 'mc_event_registration' ) == 'true' ) {
    		  $status = mc_kses_post( get_option( 'mc_event_closed' ));
          $url = admin_url('admin.php?page=my-calendar&mode=edit&event_id=' . $event_id);
          $content = "<del>" . mc_kses_post($event->event_title) . '</del>' ;
          echo $content;
        }	
      }
    }
    add_filter( 'mc_event_registration', 'mc_custom_event_open' );

    いつもコピペばかりでフィルターフックのことがぼんやりとしか分かっていないので、
    お恥ずかしいのですがご教示いただけると幸いです。

  • トピック「My Calendarで受付終了したイベントタイトルにを挿入したい」には新たに返信することはできません。