Как объединить поля Имя и фамилия на странице регистрации в opencart 3.0.2?
Версии 3.0.2 Я хочу объединить поля формы имя и фамилия, чтобы сделать его полным именем, не отключая и не переименовывая ни одно из этих полей формы на странице регистрации.
Напр.. Имя [пробел] фамилия
Если я отключу поле Фамилия и переименую поле имя в полное имя, то на стороне администратора полное имя будет присвоено имени, а фамилия будет пустой, что не правильно при редактировании заказа или клиента.
Я искал в google и OpenCart forum ничего полезного не нашел.
У вопроса есть решение - Посмотреть?
Ответы - Как объединить поля Имя и фамилия на странице регистрации в opencart 3.0.2? / How to merge first and last name field on registration page in opencart 3.0.2?
Является ответом!

05.09.2019 09:15:02
Попробуйте этот трюк
замените две группы форм firstname и lastname этим кодом:
<div class="form-group required">
<label class="col-sm-2 control-label" for="input-fullname">{{ entry_fullname }}</label>
<div class="col-sm-10">
<input type="text" name="fullname" value="{{ fullname }}" placeholder="{{ entry_fullname }}" id="input-fullname" class="form-control" />
{% if error_fullname %}
<div class="text-danger">{{ error_fullname }}</div>
{% endif %}
</div>
</div>
<input type="hidden" name="firstname" id="input-firstname">
<input type="hidden" name="lastname" id="input-lastname">
<script>
$('#input-fullname').on('input', function(){
thisValue = $(this).val().split(' ');
if (thisValue.length > 1 ) {
$('#input-firstname').val(thisValue.shift());
$('#input-lastname').val(thisValue.join(' '));
}
});
</script>
затем добавьте это правило проверки в "каталог / контроллер / учетная запись / регистр.php " в функции validate()
if (count(explode(' ', trim($this->request->post['fullname']) )) < 2) {
$this->error['fullname'] = $this->language->get('error_fullname');
}
Помочь в развитии проекта: