PluginProbe ʕ •ᴥ•ʔ
The Post Grid – Shortcode, Gutenberg Blocks and Elementor Addon for Post Grid / 7.0.2
The Post Grid – Shortcode, Gutenberg Blocks and Elementor Addon for Post Grid v7.0.2
7.9.3 7.9.2 trunk 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.0.5 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.1.5 4.2.0 4.2.1 4.2.2 4.2.3 5.0.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 6.0.0 7.0.0 7.0.1 7.0.2 7.1.0 7.2.0 7.2.1 7.2.10 7.2.11 7.2.2 7.2.3 7.2.4 7.2.5 7.2.6 7.2.7 7.2.8 7.2.9 7.3.0 7.3.1 7.4.0 7.4.1 7.4.2 7.4.3 7.5.0 7.6.0 7.6.1 7.7.0 7.7.1 7.7.10 7.7.11 7.7.12 7.7.13 7.7.14 7.7.15 7.7.16 7.7.17 7.7.18 7.7.19 7.7.2 7.7.20 7.7.21 7.7.22 7.7.3 7.7.4 7.7.5 7.7.6 7.7.7 7.7.8 7.7.9 7.8.0 7.8.1 7.8.2 7.8.3 7.8.4 7.8.5 7.8.6 7.8.7 7.8.8 7.8.9 7.9.0 7.9.1
the-post-grid / app / Controllers / Api / ACFV1.php
the-post-grid / app / Controllers / Api Last commit date
ACFV1.php 3 years ago CountLayoutInstall.php 3 years ago ElImport.php 3 years ago FrontEndFilterV1.php 3 years ago GetPostsV1.php 3 years ago ImageSizeV1.php 3 years ago RestApi.php 3 years ago RttpgV1.php 3 years ago
ACFV1.php
50 lines
1 <?php
2
3 namespace RT\ThePostGrid\Controllers\Api;
4
5 use RT\ThePostGrid\Helpers\Fns;
6
7 class ACFV1 {
8 public function __construct() {
9 add_action( "rest_api_init", [ $this, 'register_acf_data_route' ] );
10 }
11
12 public function register_acf_data_route() {
13 register_rest_route( 'rttpg/v1', 'acf', [
14 'methods' => 'GET',
15 'callback' => [ $this, 'get_acf_data' ],
16 'permission_callback' => function () {
17 return true;
18 }
19 ] );
20 }
21
22 public function get_acf_data() {
23 $post_types = Fns::get_post_types();
24
25 $acf_data = [];
26 foreach ( $post_types as $post_type => $post_type_title ) {
27 $get_acf_field = Fns::get_groups_by_post_type( $post_type );
28 $selected_acf_id = '';
29 if ( ! empty( $get_acf_field ) && is_array( $get_acf_field ) ) {
30 $selected_acf_id = array_key_first( $get_acf_field );
31 }
32
33 $options = Fns::get_groups_by_post_type( $post_type );
34 $options_field = [];
35 foreach ( $options as $value => $label ) {
36 $options_field[] = [ 'value' => $value, 'label' => $label ];
37 }
38 if ( ! empty( $options ) ) {
39 $acf_data[ $post_type . '_cf_group' ] = [
40 'post_type' => $post_type,
41 'options' => $options_field,
42 'default' => $selected_acf_id,
43 ];
44 }
45 }
46
47 return rest_ensure_response( $acf_data );
48 }
49
50 }