情報を追記している場合はありますが、古い情報を訂正はしていませんので、公開年月日を参照してください。
プラグイン・タグ、いずれもワードプレス・PHPのバージョン等によって動作しない場合もあります。
2021.04.11公開
とある施設の上演スケジュールをACFで作るという案件。投稿タイプはスケジュールとプログラムでスケジュールは1投稿で1月分。
タイトルとスラッグは年月で必ず半角数字でないといけないので、数値フィールドで年と月、
function my_post_title_updater( $post_id ) { $my_post = array(); $my_post['ID'] = $post_id; if ( get_post_type() == 'schedule') { $my_post['post_title'] = get_field('year')."年".get_field('month')."月"; } wp_update_post( $my_post ); } add_action('acf/save_post', 'my_post_title_updater', 20); function my_acf_update_value( $value, $post_id, $field ) { if(get_post_type( $post_id ) == 'schedule') { $month = get_field('month'); $value = get_field('year').sprintf('%02d', $month); } return $value; } add_filter('acf/update_value/name=slug', 'my_acf_update_value', 10, 3); function custom_post_title( $value, $post_id, $field ) { $type = get_post_type($post->ID); if ( 'schedule' == $type ) { 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=slug', 'custom_post_title', 10, 3);
として、(*こちら参照)トップページで「今日」のスケジュールを取得する際はスラッグから「今日」を含む月の投稿を取得。
スケジュール用の繰り返しフィールドは予め31日分デフォルト値を設定(*こちら参照)
プログラムの選択は、投稿オブジェクトのほうがコードは楽だが、選択時に検索やタームの絞り込みができる関連フィールドを利用。
スケジュールの日付部分に関して、
スラッグ用のフィールドから年月$ym を取得、$date1 = get_sub_field(‘date’); で日付を取得、$date2 = $ym.sprintf(‘%02d’, $date1); で年月日を取得、$date3 = date(‘w’, strtotime($date2)); で日本語表記に変換するための曜日を取得、$date4 = date(‘l’, strtotime($date2)); でクラスに英字で入れるための曜日を取得。$date3 は$week = [ ‘日’, ‘月’, ‘火’, ‘水’, ‘木’, ‘金’, ‘土’,]; echo $week[$date3]; のように。
トップページでの当日分の取得に関して、
$ym = date(‘Ym’); $pid = $wpdb->get_var(“SELECT ID FROM $wpdb->posts WHERE post_name = $ym”); で当月分の投稿IDを取得して投稿IDからフィールドを取得、当日の日付とイコールの行から内容を取得という順。
その他のAdvanced Custom Fields に関する記事一覧
- acf 投稿オブジェクトにメタ値でフィルター(2023.11.15作成)
- ACF 画像URLからALTを取得(2023.10.03作成)
- 子テーマでACFを使う(2023.09.16作成)
- ACF リピーターをランダムに(2023.09.11作成)
- ブロックエディターでACFを使う(2023.09.03作成)
- ACF Blocks(2023.08.24作成)
- acf reset_rows(2023.08.10作成)
- ACF 値などの登録まとめ(2023.07.30作成)
- ACF チェックボックスの値での条件分岐(2023.07.17作成)
- ACF 柔軟コンテンツフィールド、固定ページ用(2023.07.05作成)
- ACF 柔軟コンテンツフィールド、ブログ・コラム用(2023.07.02作成)
- ACF 柔軟コンテンツフィールドで1サイト作ってみる(2023.06.25作成)
- 編集ページにマニュアルや注意書き(2023.06.21作成)
- 投稿の本文を表示するショートコード(2023.06.21作成)
- Advanced Custom Fields Pro 柔軟コンテンツ(2023.06.18作成)
- ページビルダー(2023.06.16作成)
- イベントカレンダーサンプル(ACFとMW Form)(2023.05.15作成)
- 予約カレンダー・予約管理サンプル(ACFとMW Form)(2023.05.11作成)
- acf とMW Form 連携のまとめ(予約関連)(2023.05.10作成)
- acf 1月分の受付時間・定休日設定など(2023.05.08作成)
- acf 入れ子になったリピーターのデフォルト値(2023.05.07作成)
- acf リピーターで1月分のサブフィールドを作成(2023.05.06作成)
- 営業日カレンダーを作る(2023.01.06作成)
- ACF get_row_index()(2022.11.25作成)
- 予約カレンダー試作2(2022.11.17作成)
- 予約カレンダー試作(2022.11.16作成)
- ACF グループフィールドのアップデート(2022.11.15作成)
- ACFとMW Form で予約管理 その4(2022.08.31作成)
- acf 投稿オブジェクトにフィルター(2022.05.10作成)
- ACFとMW Form で予約管理 その3(2022.02.08作成)
- ACFとMW Form で予約管理 その2(2021.10.07作成)
- ACF ウィジェット(2021.09.12作成)
- pタグを置換(2021.07.11作成)
- Magic からACFへ 複製フィールド編(2021.06.06作成)
- Magic からACFへ(2021.06.06作成)
- WP CSV Exporter ・ACFリピーターでエラー(2021.05.26作成)
- ACFとMW Form で予約管理(2021.05.23作成)
- MW Form 予約数を保存(2021.05.20作成)
- MW Form 用にACFにターム名を保存(2021.04.13作成)
- ACFで1月分のスケジュール(2021.04.11作成)
- acf ラジオボタンのvalueとlabel(2021.03.09作成)
- acf の設定をフォームに利用(2021.02.12作成)
- ACF 便利機能(2021.01.13作成)
- 投稿IDをスラッグに(2020.12.21作成)
- ACF リピーター 一部表示(2020.10.20作成)
- ACF クイックエディット(2020.10.04作成)
- acf リピーターのソート禁止(2020.07.06作成)
- acf リピーター 計算 ajax(2020.04.25作成)
- acf リピーターの値をMW Formで(2020.04.15作成)
- acf リピーターのサブフィールドのデフォルト値を設定(2020.02.27作成)
- acf タイトル・スラッグ・アイキャッチ登録(2020.01.28作成)
- acf 投稿オブジェクトの対象を制限(2019.12.27作成)
- acf 内側のリピーターの数値を合計(2019.12.24作成)
- acf リピーターのcsvでのインポート(2019.12.03作成)
- acf デートピッカーのフォーマット(2019.11.21作成)
- 画像から投稿を取得(2019.05.08作成)
- acf リピーターを逆に表示(2019.04.19作成)
- キーワードとカスタムフィールドの絞り込み検索(2018.10.01作成)
- カスタムフィールドの検索(2017.10.16作成)
- acf 関連をランダム表示に(2017.08.14作成)
- acf繰り返しフィールドの利用例(2017.04.15作成)
- 画像サイズで条件分岐(2017.02.28作成)
- acf 繰り返しフィールドの数(2017.02.06作成)
- acf relationship(2017.01.11作成)
- カテゴリーにACF(2016.07.29作成)
- acf フィールド値をニックネームに(2016.04.16作成)
- acf デートピッカーの曜日を日本語に(2016.04.04作成)
- 会員登録関連メモ(2015.04.08作成)
- 繰り返しフィールドの○つ目の値(2014.12.02作成)
- 出勤・スケジュール管理の覚書(2014.06.15作成)
- content のfilter をカスタムフィールドにも(2014.02.23作成)
- CSVでインポートの手順(2014.01.28作成)
- ターム(カテゴリー)の階層による分岐(2013.10.12作成)
- 管理画面投稿一覧に項目を追加(2013.08.06作成)
- Advanced Custom Fields 繰り返しフィールドの1つめを大きく表示(2013.05.28作成)
- カスタムフィールドの発売日でソートして年度ごとに括る(2013.05.27作成)
- Advanced Custom Fields 繰り返しフィールドの表示順を逆に(2013.05.10作成)
- Advanced Custom Fields 繰り返しフィールドの値を1つずつ(2013.05.10作成)
- Advanced Custom Fields でカテゴリーのアイコンや背景色を設定(2013.05.08作成)
- Advanced Custom Fields で自由なレイアウトを実現(2013.02.13作成)
- Advanced Custom Fields でプロフィールを拡張(2013.02.06作成)
情報を追記している場合はありますが、古い情報を訂正はしていませんので、公開年月日を参照してください。
プラグイン・タグ、いずれもワードプレス・PHPのバージョン等によって動作しない場合もあります。
2021.04.11公開