XO Event Calendar でイベント開催時間の「分」が表示されない時の対処法

XO Event Calendar でイベント開催時間の「分」が表示されない時の対処法 Wordpress

イベント開催情報などをカレンダーに表示できる優れもののプラグインで重宝していますが、なぜかイベント開催時間の「分」の 1 桁目が表示されなくなってしまったのでその対処法を備忘録として残しておきます。

同じような症状でお悩みの方はご参考にどうぞ。

修正ファイル

xo-event-calendar > inc > admin.php > 「イベント メタボックスを追加します。」の部分

修正前コード

/**
	 * イベント メタボックスを追加します。
	 */
	function add_meta_boxes() {
		add_meta_box( 'xo-event-meta-box', __( 'Event Details', 'xo-event-calendar' ), array( $this, 'event_meta_box' ), XO_Event_Calendar::get_post_type(), 'advanced' );
	}

	private function get_select_hour( $id, $name, $selected ) {
		$html = "<select id=\"{$id}\" name=\"{$name}\">";
		for ( $i = 0; $i < 24; $i++ ) {
			$html .= sprintf( '<option %s value="%d">%d</option>', ($i == $selected ? 'selected' : ''), $i, $i);
		}
		$html .= "</select>\n";
		return $html;
	}

	private function get_select_minute( $id, $name, $selected ) {
		$html = "<select id=\"{$id}\" name=\"{$name}\">";
		for ( $i = 0; $i < 60; $i += 5 ) {
			$html .= sprintf( '<option %s value="%d">%02d</option>', ($i == $selected ? 'selected' : ''), $i, $i);
		}
		$html .= "</select>\n";
		return $html;
	}

修正後コード

/**
	 * イベント メタボックスを追加します。
	 */
	function add_meta_boxes() {
		add_meta_box( 'xo-event-meta-box', __( 'Event Details', 'xo-event-calendar' ), array( $this, 'event_meta_box' ), XO_Event_Calendar::get_post_type(), 'advanced' );
	}

	private function get_select_hour( $id, $name, $selected ) {
		$html = "<select id=\"{$id}\" name=\"{$name}\">";
		for ( $i = 0; $i < 24; $i++ ) {
			$html .= sprintf( '<option %s value="%02d">%02d</option>', ($i == $selected ? 'selected' : ''), $i, $i);
		}
		$html .= "</select>\n";
		return $html;
	}

	private function get_select_minute( $id, $name, $selected ) {
		$html = "<select id=\"{$id}\" name=\"{$name}\">";
		for ( $i = 0; $i < 60; $i += 5 ) {
			$html .= sprintf( '<option %s value="%02d">%02d</option>', ($i == $selected ? 'selected' : ''), $i, $i);
		}
		$html .= "</select>\n";
		return $html;
	}

修正箇所

【 %d 】 を 【 %02d 】 に修正

コメント

タイトルとURLをコピーしました