krc-cast-managerをWordPress 6.5.3に対応

WordPress

WordPress6.5に更新するとトップページに表示している出勤情報が反映されなかったので修正しました。

/*-------------------------------------------*/
/*  TOPページ等に本日の出勤キャストを表示
/*-------------------------------------------*/
function todaysCastHtml($atts) {
	date_default_timezone_set('Asia/Tokyo');
	$time9 =  - 6; // 
	$day = date("Y-m-d", strtotime("+" . $time9 . " hour"));

	$works = outschedule($day);
	return addSchedules($works);
}

function addSchedules($works) {
	$output = '';

	if (!$works) {
		// 予定がない場合
		$output .= '<br>';
	} else if ($works != 'rest') {
		$works_array = array();
		foreach ($works as $id => $val) {
			$works_array[$val["s_order"]] = array(
				'id' => $id,
				'time' => $val
			);
		}
		ksort($works_array);
		$output .= '<h2 class="glowAnime">Work Today</h2>';
		$output .= '<div class="cssgrid">';
		foreach ($works_array as $id => $work) {
			$args = array(
				'post_type' => 'cast',
				'post__in' => array($work['id']),
				'orderby' => 'post__in'
			);
			query_posts($args);
			while (have_posts()) : the_post();
				set_query_var('schedule', $work['time']);
				ob_start();
				get_template_part('content', 'castlist'); // topcastlist.phpは用意しておいて下さい。 時間により、前日のデータをもってくる
				$output .= ob_get_clean();
			endwhile;
			wp_reset_query();
		}
		$output .= '</div><!-- cssgrid-->';
	} else {
		// 休み
		$output .= '';
	}
	return $output;
}

add_shortcode('todayscastHtml', 'todaysCastHtml');


こちらの記事も読まれてます。