PluginProbe ʕ •ᴥ•ʔ
Nested Pages / 3.2.15
Nested Pages v3.2.15
3.2.15 3.2.14 3.1.8 3.1.9 3.2.0 3.2.1 3.2.10 3.2.11 3.2.12 3.2.13 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 trunk 1.0 1.1 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.2.1 1.3.0 1.3.1 1.3.10 1.3.11 1.3.12 1.3.13 1.3.14 1.3.15 1.3.2 1.3.4 1.3.5 1.3.6 1.3.7 1.3.8 1.3.9 1.4.0 1.4.1 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.6.0 1.6.1 1.6.2 1.6.3 1.6.3.1 1.6.3.2 1.6.4 1.6.5 1.6.5.1 1.6.5.2 1.6.6 1.6.7 1.6.8 1.7.0 1.7.1 2.0.1 2.0.2 2.0.3 2.0.4 3.0.1 3.0.10 3.0.11 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.17 3.1.18 3.1.19 3.1.2 3.1.20 3.1.21 3.1.22 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7
wp-nested-pages / app / Entities / PluginIntegration / AdvancedCustomFields.php
wp-nested-pages / app / Entities / PluginIntegration Last commit date
AdvancedCustomFields.php 8 years ago DarkMode.php 7 years ago EditorialAccessManager.php 8 years ago IntegrationFactory.php 7 years ago WPML.php 3 years ago YoastSeo.php 3 years ago
AdvancedCustomFields.php
70 lines
1 <?php
2 namespace NestedPages\Entities\PluginIntegration;
3
4 /**
5 * Advanced Custom Fields Integration
6 * @link https://www.advancedcustomfields.com/
7 */
8
9 class AdvancedCustomFields
10 {
11 /**
12 * Installed
13 * @var boolean
14 */
15 public $installed = false;
16
17 /**
18 * Unsupported Field Types
19 * @var array
20 */
21 private $unsupported;
22
23 public function __construct()
24 {
25 return;
26 if ( class_exists('acf') ){
27 $this->installed = true;
28 $this->setUnsupportedFieldTypes();
29 return;
30 }
31 }
32
33 /**
34 * Set the unsupported field types
35 */
36 private function setUnsupportedFieldTypes()
37 {
38 $this->unsupported = [
39 'relationship'
40 ];
41 }
42
43 /**
44 * Get the ACF fields associated with a post type
45 * @param string post_type
46 * @return array
47 */
48 public function getFieldsForPostType($post_type)
49 {
50 if ( !function_exists('get_field') ) return false;
51 $field_groups = acf_get_field_groups([
52 'post_type' => $post_type
53 ]);
54 if ( !$field_groups ) return false;
55 $all_fields = [];
56 $c = 0;
57 foreach ( $field_groups as $key => $group ){
58 $fields = acf_get_fields($group);
59 foreach($fields as $field){
60 if ( in_array($field['type'], $this->unsupported) ) continue;
61 $all_fields[$c]['key'] = $field['key'];
62 $all_fields[$c]['label'] = $field['label'];
63 $all_fields[$c]['type'] = $field['type'];
64 $c++;
65 }
66 $c++;
67 }
68 return $all_fields;
69 }
70 }