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');