このエントリーをはてなブックマークに追加

カスタム投稿「スケジュール」と「キャスト」で出勤・スケジュール管理を構成しましたが、キャストのページでスケジュールを引用する際、タイトルから投稿IDを取得し、投稿IDでスケジュールのカスタムフィールド(キャスト名と勤務時間)を取得したいと思い、スケジュールの投稿時に登録する日付(デートピッカー)を投稿タイトルにするように設定した。

function update_schedule_title($title) {
global $post;
$type = get_post_type($post->ID);
if ( 'schedule' == $type) {
    $title = get_field('date');
} 
return $title;
}
add_filter ('title_save_pre', 'update_schedule_title');

function filter_handler( $data , $postarr )
{
  global $post;
  $id = $post->ID;
  if('schedule' == $data['post_type'] && isset($data['post_type']))
    if($id) {
        $title = $_POST['fields']['field_537b99df4ade1']; 
        $data['post_title'] = $title;
    }
  return $data;
}
add_filter( 'wp_insert_post_data' , 'filter_handler' , '99', 2 );

get_field(‘date’); はAdvanced Custom Fields 使用のため。
field_537b99df4ade1 のところは投稿欄のフィールドの要素を確認。

2014.05.22 投稿 2015.04.05 更新

新しい情報を追記している場合はありますが、古い情報の修正はしていません。投稿日・文中の日付を参照してください。

Recent Articles