これでいけませんか?
https://dream-encode.com/acf-get-all-fields-in-a-field-group/
function.php内に
PHP
1<?php
2function get_specifications_fields() {
3
4 global $post;
5
6 $specifications_group_id = 479; // フィールドグループのPost IDをここに
7 $specifications_fields = array();
8
9 $fields = acf_get_fields( $specifications_group_id );
10
11 foreach ( $fields as $field ) {
12 $field_value = get_field( $field['name'] );
13
14 if ( $field_value && !empty( $field_value ) ) {
15 $specifications_fields[$field['name']] = $field;
16 $specifications_fields[$field['name']]['value'] = $field_value;
17 }
18 }
19
20 return $specifications_fields;
21
22}
使う側
PHP
1<?php
2 $specifications_fields = get_specifications_fields();
3
4 foreach ( $specifications_fields as $name => $field ):
5 $value = $field['value'];
###※ここから追記 ACFのカスタムフィルターを使う
本家でACFのカスタムフィールドのフィルターを使いアーカイブを作るサンプルがありましたので掲載しておきます。全編英語ですが動画での説明なのでわかりやすいと思います。
どういうことができるかというと1つ固定ページを作り、そのページのURLに?kudamono=bananaなどとすることでバナナの一覧が表示されます。
注意点としては動画ではカスタム投稿のアーカイブにあたるページ上でpre_get_postsにフックしクエリの内容を変更している点です。今回、固定ページで作る場合はWP_Queryなどで任意のクエリを取得して表示する必要があります。※ pre_get_postsはすべてのクエリに影響するので注意してください。
https://www.advancedcustomfields.com/resources/creating-wp-archive-custom-field-filter/
書いてて思ったのですが今勉強中でしたら、結構難易度の高い実装に思います。すみません ><
もしACFのカスタムフィールドを使わなくてもよければカスタムタクソノミーを利用すれば、
テンプレート階層を理解し、カスタムタクソノミー用のテンプレートを書けばURLにアクセス
するだけなので簡単です。
テンプレート階層が分からなければ早めに勉強された方がいいです。
Wordpressを理解する第一歩だと思います。
ながながとすみません。
テンプレート階層
https://wpdocs.osdn.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E9%9A%8E%E5%B1%A4
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/08/23 02:18
2017/08/23 02:34