Задать вопрос

Пользовательские поля $field['formcode']?

Добрый вечер! Положим я создал поле "Номер телефона" в настройках VM3. Оно отображается в корзине и является обязательным к заполнению, но меня не устраивает его внешний вид, а впрочем вид можно отредактировать с помощью CSS. Тогда хочу, что бы название поля выводилось не слева от самого поля, а скажем в placeholder. Здесь я и столкнулся с проблемой, т.к. не могу найти тот файл который генерирует пользовательское поле.
А точнее в файле default_cartfields.php по адресу components\com_virtuemart\views\cart\tmpl\ есть код следующего содержания:

<?php
// Status Of Delimiter
$closeDelimiter = false;
$openTable = true;
$hiddenFields = '';

if(!empty($this->userFieldsCart['fields'])) {

	// Output: Userfields
	foreach($this->userFieldsCart['fields'] as $field) {
	?>
	<fieldset class="vm-fieldset1-<?php echo str_replace('_','-',$field['name']) ?>">

		<div  class="cart <?php echo str_replace('_','-',$field['name']) ?>" title="<?php echo strip_tags($field['description']) ?>">

		<?php
		if ($field['hidden'] == true) {
			// We collect all hidden fields
			// and output them at the end
			$hiddenFields .= $field['formcode'] . "\n";
		} else { ?>
				<?php echo $field['formcode'] . "ss"; ?>
				<?php } ?>
			</div>
	</fieldset>
	<?php
	}
	// Output: Hidden Fields
	echo $hiddenFields;
}
?>


За непосредственную генерацию полей в корзине отвечает код:
<?php
		if ($field['hidden'] == true) {
			// We collect all hidden fields
			// and output them at the end
			$hiddenFields .= $field['formcode'] . "\n";
		} else { ?>
				<?php echo $field['formcode'] . "ss"; ?>
				<?php } ?>


Собственно вопрос - где находится файл( полагаю view в котором живут поля выводимые при помощи данной записи
<?php echo $field['formcode']; ?>

А вот собственно скриншот, на всякий случай.
897084f847474f7198a2dba01a5b4154.JPG
  • Вопрос задан
  • 565 просмотров
Подписаться 1 Оценить 2 комментария
Пригласить эксперта
Ответы на вопрос 1
@2715643
в Virtuemart 3
/administrator/components/com_virtuemart/models/userfields.php

929 строка
case 'webaddress':

							$_return['fields'][$_fld->name]['formcode'] = '<input type="text" id="'
							. $_prefix.$_fld->name . '_field" name="' . $_prefix.$_fld->name.'" size="' . $_fld->size
							. '" value="' . $_return['fields'][$_fld->name]['value'] .'" '
							. ($_fld->required ? ' class="required"' : '')
							. ($_fld->maxlength ? ' maxlength="' . $_fld->maxlength . '"' : '')
							. $readonly . ' /> ';
							break;


меняем на
case 'webaddress':

							$_return['fields'][$_fld->name]['formcode'] = '<input type="text" id="'
							. $_prefix.$_fld->name . '_field" name="' . $_prefix.$_fld->name.'" size="' . $_fld->size
							. '" value="' . $_return['fields'][$_fld->name]['value'] .'" 
							placeholder="'.$_fld->title.($_fld->required ? '*' : '').'"'
							. ($_fld->required ? ' class="required"' : '')
							. ($_fld->maxlength ? ' maxlength="' . $_fld->maxlength . '"' : '')
							. $readonly . ' /> ';
							break;
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы