[Помощь] Вывод нескольких значений доп поля с типом строка в одну строку

spro1

Гуру форума
Регистрация
26 Май 2013
Сообщения
226
Реакции
81
Всем привет!

Помогите пожалуйста с решением:

У товара добавлено дополнительное поле с типом “Строка”

значений этого поля может быть несколько, и на сайте нужно сделать оформление примерно так:
Заголовок поля: значение 1, значение 2, значение 3

Сейчас код выглядит так, как будто заголовок поля и первое значение – это отдельное от остальных значений поле (код на скрине)
Аннотация-2019-11-29-111636.png
и на сайте в результате это выглядит примерно так:
Заголовок поля:
значение 1
значение 2
значение 3

За вывод полей отвечает файл /components/com_virtuemart/sublayouts/customfields.php

Сейчас если у поля несколько значений, то первое значение выводится в диве с заголовком поля, а последующие значения в отдельных дивах, но уже без заголовка.

Вероятно у разработчиков были причины сделать так, но при этом и другой вариант тоже нужен, так как в моем случае есть много полей и у каждого по 5-7 значений, что в итоге выглядит ужасно.

Помогите пожалуйста разобраться.

PHP:
<?php
/**
* sublayout products
*
* @package    VirtueMart
* @author Max Milbers
* @link http://www.virtuemart.net
* @copyright Copyright (c) 2014 VirtueMart Team. All rights reserved.
* @license http://www.gnu.org/copyleft/gpl.html GNU/GPL2, see LICENSE.php
* @version $Id: cart.php 7682 2014-02-26 17:07:20Z Milbo $
*/

defined('_JEXEC') or die('Restricted access');

$product = $viewData['product'];
$position = $viewData['position'];
$customTitle = isset($viewData['customTitle']) ? $viewData['customTitle'] : false;
if (isset($viewData['class'])) {
    $class = $viewData['class'];
} else {
    $class = 'product-fields';
}

if (!empty($product->customfieldsSorted[$position])) {
    ?>
    <div class="<?php echo $class ?>">
        <?php
if ($customTitle and isset($product->customfieldsSorted[$position][0])) {
        $field = $product->customfieldsSorted[$position][0];?>
        <div class="product-fields-title-wrapper"><span class="product-fields-title"><strong><?php echo vmText::_($field->custom_title) ?></strong></span>
            <?php if ($field->custom_tip) {
            echo JHtml::tooltip(vmText::_($field->custom_tip), vmText::_($field->custom_title), 'tooltip.png');
        }?>
        </div> <?php
}
    $custom_title = null;
    foreach ($product->customfieldsSorted[$position] as $field) {
        if ($field->is_hidden || empty($field->display)) {
            continue;
        }
        //OSP http://forum.virtuemart.net/index.php?topic=99320.0
        ?>
            <div class="product-field product-field-type-<?php echo $field->field_type ?>">
                <?php if (!$customTitle and $field->custom_title != $custom_title and $field->show_title) {?>
                    <span class="product-fields-title-wrapper"><span class="product-fields-title"><strong><?php echo vmText::_($field->custom_title) ?></strong></span>
                        <?php if ($field->custom_tip) {
            echo JHtml::tooltip(vmText::_($field->custom_tip), vmText::_($field->custom_title), 'tooltip.png');
        }?></span>
                <?php }
        if (!empty($field->display)) {
            ?><div class="product-field-display"><?php echo $field->display; ?></div><?php
}
        if (!empty($field->custom_desc)) {
            ?><div class="product-field-desc"><?php echo vmText::_($field->custom_desc) ?></div> <?php
}
        ?>
            </div>
        <?php
$custom_title = $field->custom_title;
    }?>
      <div class="clear"></div>
    </div>
<?php
}
 
Назад
Сверху