PluginProbe
Import WP – CSV & XML Import Export for WordPress / 2.15.0
Import WP – CSV & XML Import Export for WordPress v2.15.0
2.15.1 2.15.0 2.14.24 2.14.23 2.7.0 2.7.1 2.7.10 2.7.11 2.7.12 2.7.13 2.7.14 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 2.7.8 2.7.9 2.8.0 2.8.1 2.8.2 2.8.3 2.9.0 2.9.1 All 144 releases
jc-importer / class / Common / AddonAPI / Importer / FieldGroupData.php

FieldGroupData.php in Import WP – CSV & XML Import Export for WordPress 2.15.0, at class/Common/AddonAPI/Importer/FieldGroupData.php

74 lines 1.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace ImportWP\Common\AddonAPI\Importer;
4
5 use ImportWP\Common\AddonAPI\Importer\Template\FieldGroup;
6
7 class FieldGroupData
8 {
9 /**
10 * @var \ImportWP\Common\AddonAPI\Importer\Template\FieldGroup
11 */
12 private $_field_group;
13
14 /**
15 * @var \ImportWP\Common\AddonAPI\Importer\ImporterData
16 */
17 private $_addon_data;
18
19 /**
20 * @var string
21 */
22 private $_data_group;
23
24 /**
25 * @var string
26 */
27 private $_field_prefix;
28
29 /**
30 * @param \ImportWP\Common\AddonAPI\Importer\Template\FieldGroup $field
31 * @param \ImportWP\Common\AddonAPI\Importer\ImporterData $addon_data
32 * @param array $args
33 * @return void
34 */
35 public function __construct($field_group, $addon_data, $args = [])
36 {
37 $this->_field_group = $field_group;
38 $this->_addon_data = $addon_data;
39
40 if (isset($args['data_group'])) {
41 $this->_data_group = $args['data_group'];
42 }
43
44 if (isset($args['field_prefix'])) {
45 $this->_field_prefix = $args['field_prefix'];
46 }
47 }
48
49 public function get_value()
50 {
51 $output = [];
52 foreach ($this->_field_group->get_fields() as $field) {
53
54 $args = [
55 'data_group' => $this->_data_group,
56 'field_prefix' => $this->_field_prefix . '.' . $this->_field_group->get_id(),
57 ];
58
59 if (is_a($field, \ImportWP\Common\AddonAPI\Importer\Template\Field::class)) {
60
61 $field_data = new FieldData($field, $this->_addon_data, $args);
62
63 $output[$field->get_id()] = $field_data->get_value();
64 } elseif (is_a($field, \ImportWP\Common\AddonAPI\Importer\Template\FieldGroup::class)) {
65
66 $field_group = new FieldGroupData($field, $this->_addon_data, $args);
67
68 $output[$field->get_id()] = $field_group->get_value();
69 }
70 }
71 return $output;
72 }
73 }
74