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

お客様に感想や評価を投稿してもらうフォームをACF PRO で作成しているのだが、タイトルを入力してもらうのは手間なので自動で入るようにしようと思う。投稿は下書きで保存されるので公開時に書き換えてもらう予定。

function wpa65253_time_title( $title ) {
    global $post;
    if ( isset( $post->ID ) ) {
        if ( empty( $_POST['post_title'] ) ) {
		date_default_timezone_set( 'Asia/Tokyo' );
		$pt = date('Ymd-Hi');
		$title = '投稿-'.$pt;
    }}
    return $title;
}
add_filter ( 'title_save_pre', 'wpa65253_time_title' );

ACF のフィールド値をタイトルにするのは以前にやったことがあるが、タイトルを幾つか用意して選択してもらうのも有りかな

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

2/15追記
カスタムフィールド値をパーマリンク(スラッグ)に。https://wordpress.org/support/topic/adding-a-custom-field-in-addition-to-post-name-to-permalinks?replies=22 参照

function custom_post_title( $value, $post_id, $field  )
{
		if(isset($value) && $value != '') {
			 $args = array(
				 'ID'           => $post_id,
				 'post_name' => sanitize_title($value)
			 );
			 wp_update_post( $args );
		} 
    return $value;
}
add_filter('acf/update_value/name=フィールド名', 'custom_post_title', 10, 3);

2016.01.23 投稿 2016.04.25 更新

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

Recent Articles