PluginProbe
Import WP – CSV & XML Import Export for WordPress / trunk
Import WP – CSV & XML Import Export for WordPress vtrunk
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 trunk 0.1.6 All 142 releases
jc-importer / class / Common / AddonAPI / Importer / FieldGroupData.php

FieldGroupData.php in Import WP – CSV & XML Import Export for WordPress trunk, 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