PluginProbe ʕ •ᴥ•ʔ
Advanced Custom Fields: Extended / 0.8
Advanced Custom Fields: Extended v0.8
0.9.2.6 0.9.2.5 0.8.6 0.8.6.1 0.8.6.3 0.8.6.5 0.8.6.6 0.8.6.7 0.8.6.8 0.8.6.9 0.8.7 0.8.7.1 0.8.7.2 0.8.7.3 0.8.7.4 0.8.7.5 0.8.7.6 0.8.8 0.8.8.1 0.8.8.10 0.8.8.11 0.8.8.2 0.8.8.3 0.8.8.4 0.8.8.5 0.8.8.6 0.8.8.7 0.8.8.8 0.8.8.9 0.8.9 0.8.9.1 0.8.9.2 0.8.9.3 0.8.9.4 0.8.9.5 0.9 0.9.0.1 0.9.0.2 0.9.0.3 0.9.0.4 0.9.0.5 0.9.0.6 0.9.0.7 0.9.0.8 0.9.0.9 0.9.1 0.9.1.1 0.9.2 0.9.2.1 0.9.2.2 0.9.2.3 0.9.2.4 trunk 0.5 0.5.1 0.5.2 0.5.2.1 0.5.2.3 0.5.5 0.5.5.1 0.5.8 0.5.8.1 0.6 0.6.0.1 0.6.0.2 0.6.1 0.6.3 0.6.5 0.6.7 0.6.7.2 0.7 0.7.0.3 0.7.5 0.7.5.5 0.7.8 0.7.9 0.7.9.3 0.7.9.4 0.7.9.9.8 0.7.9.9.9 0.8 0.8.1 0.8.2 0.8.3 0.8.3.1 0.8.4 0.8.4.1 0.8.4.5 0.8.4.6 0.8.5 0.8.5.5
acf-extended / includes / fields / field-clone.php
acf-extended / includes / fields Last commit date
field-advanced-link.php 6 years ago field-button.php 6 years ago field-clone.php 6 years ago field-column.php 6 years ago field-dynamic-message.php 6 years ago field-file.php 6 years ago field-flexible-content.php 6 years ago field-forms.php 6 years ago field-group.php 6 years ago field-hidden.php 6 years ago field-image.php 6 years ago field-post-statuses.php 6 years ago field-post-types.php 6 years ago field-recaptcha.php 6 years ago field-repeater.php 6 years ago field-select.php 6 years ago field-slug.php 6 years ago field-taxonomies.php 6 years ago field-taxonomy-terms.php 6 years ago field-textarea.php 6 years ago field-user-roles.php 6 years ago
field-clone.php
103 lines
1 <?php
2
3 if(!defined('ABSPATH'))
4 exit;
5
6 add_action('acf/render_field_settings/type=clone', 'acfe_field_clone_settings');
7 function acfe_field_clone_settings($field){
8
9 acf_render_field_setting($field, array(
10 'label' => __('Edition modal'),
11 'name' => 'acfe_clone_modal',
12 'key' => 'acfe_clone_modal',
13 'instructions' => __('Edit fields in a modal'),
14 'type' => 'true_false',
15 'message' => '',
16 'default_value' => false,
17 'ui' => true,
18 ));
19
20 acf_render_field_setting($field, array(
21 'label' => __('Edition modal button'),
22 'name' => 'acfe_clone_modal_button',
23 'key' => 'acfe_clone_modal_button',
24 'instructions' => __('Text displayed in the edition modal button'),
25 'type' => 'text',
26 'placeholder' => __('Edit', 'acf'),
27 'conditional_logic' => array(
28 array(
29 array(
30 'field' => 'acfe_clone_modal',
31 'operator' => '==',
32 'value' => '1',
33 ),
34 )
35 )
36 ));
37
38 }
39
40 add_filter('acf/field_wrapper_attributes', 'acfe_field_clone_wrapper', 10, 2);
41 function acfe_field_clone_wrapper($wrapper, $field){
42
43 if($field['type'] !== 'clone')
44 return $wrapper;
45
46 if(isset($field['acfe_clone_modal']) && !empty($field['acfe_clone_modal'])){
47
48 $wrapper['data-acfe-clone-modal'] = 1;
49 $wrapper['data-acfe-clone-modal-button'] = __('Edit', 'acf');
50
51 if(isset($field['acfe_clone_modal_button']) && !empty($field['acfe_clone_modal_button'])){
52
53 $wrapper['data-acfe-clone-modal-button'] = $field['acfe_clone_modal_button'];
54
55 }
56
57 }
58
59 return $wrapper;
60
61 }
62
63 add_filter('acf/load_field_groups', 'acfe_field_clone_ajax_query');
64 function acfe_field_clone_ajax_query($field_groups){
65
66 if(!acf_verify_ajax())
67 return $field_groups;
68
69 if(acf_maybe_get_POST('field_key') !== 'clone')
70 return $field_groups;
71
72 if(empty($field_groups))
73 return $field_groups;
74
75 foreach($field_groups as $i => $field_group){
76
77 if(!in_array($field_group['key'], array(
78 'group_acfe_author',
79 'group_acfe_dynamic_block_type',
80 'group_acfe_dynamic_form',
81 'group_acfe_dynamic_options_page',
82 'group_acfe_dynamic_post_type',
83 'group_acfe_dynamic_taxonomy')
84 ))
85 continue;
86
87 unset($field_groups[$i]);
88
89 }
90
91 return $field_groups;
92
93 }
94
95 add_filter('acf/prepare_field/type=clone', 'acfe_field_clone_type_class', 99);
96 function acfe_field_clone_type_class($field){
97
98 if(acf_maybe_get($field, 'layout'))
99 $field['wrapper']['class'] .= ' acfe-field-clone-layout-' . $field['layout'];
100
101 return $field;
102
103 }