// Характеристики одной строкой
$vp_has_meta = false;
foreach ($vp_meta_fields as $mf) {
if (!empty($fields[$mf]['html'])) {
$vp_has_meta = true;
break;
}
}
if ($vp_has_meta) {
echo '
';
foreach ($vp_meta_fields as $mf) {
if (empty($fields[$mf])) {
continue;
}
echo $vp_render_field($fields[$mf]);
}
echo '
';
}
// Описание
foreach ($vp_main_content as $cf) {
if (empty($fields[$cf]) || empty($fields[$cf]['html'])) {
continue;
}
echo $vp_render_field($fields[$cf]);
}
// Остальные поля (кроме контактов и уже выведенных)
$vp_skip = array_merge(
$vp_gallery_fields,
$vp_meta_fields,
$vp_main_content,
$vp_contact_fields,
['title', 'user', 'seo_postavshiki', 'kontakts_skryt', 'prodaja_ss']
);
if (!empty($fields_fieldsets)) {
foreach ($fields_fieldsets as $fieldset_id => $fieldset) {
$is_contacts_group = $fieldset['title'] && mb_stripos($fieldset['title'], 'контакт') !== false;
$fieldset_fields = [];
if (!empty($fieldset['fields'])) {
foreach ($fieldset['fields'] as $field) {
if (in_array($field['name'], $vp_skip, true)) {
continue;
}
$fieldset_fields[] = $field;
}
}
if (!$fieldset_fields && !$is_contacts_group) {
continue;
}
if ($is_contacts_group) {
continue;
}
if (!empty($fieldset['title'])) {
echo '
';
echo '
' . html($fieldset['title'], false) . '
';
}
foreach ($fieldset_fields as $field) {
echo $vp_render_field($field);
}
if (!empty($fieldset['title'])) {
echo '';
}
}
} else {
foreach ($fields as $name => $field) {
if (in_array($name, $vp_skip, true)) {
continue;
}
echo $vp_render_field($field);
}
}