Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

[Решено] как правильно добавить поле телефона в адресе платежа при оформлении заказа?


dm82
 Поделиться

Рекомендованные сообщения

Народ, подскажите пожалуйста, как правильно добавить поле телефона в адресе платежа при оформлении заказа на стандартом шаблоне и стандартном чекауте (1541).

 

Сделал следующее:

 

в 

\catalog\view\theme\default\template\checkout\payment_address.tpl

 

добавил 

  <span class="required">*</span> <?php echo $entry_telephone; ?><br />
  <input type="text" name="telephone" value="<?php echo $telephone; ?>" style="width:78%;" />

в

\catalog\controller\checkout\payment_address.php

 

добавил 

		$this->data['entry_telephone'] = $this->language->get('entry_telephone');


		if (isset($this->session->data['telephone'])) {
			$this->data['telephone'] = $this->customer->getTelephone();		
		} else {
			$this->data['telephone'] = '';
		}


		if (isset($this->error['telephone'])) {
			$this->data['error_telephone'] = $this->error['telephone'];
		} else {
			$this->data['error_telephone'] = '';
		}

и

			if ((utf8_strlen($this->request->post['telephone']) < 3) || (utf8_strlen($this->request->post['telephone']) > 32)) {
				$json['error']['telephone'] = $this->language->get('error_telephone');
			}

В итоге поле появилось, стало отображать номер введенный при регистрации,

но проблемы 2:

- нет валидации (не выводит сообщение об ошибке при пустом поле),

- не сохраняет телефон при нажатии кнопки продолжить для перехода к след. шагу (адрес доставки)

 

Перерыл все файлы, не могу понять в чем секрет. Помогите плиз..

Ссылка на комментарий
Поделиться на других сайтах


afwollis, Спасибо!

 

Но дело в том, что мне нужен тот телефон, который в личных данных.

 

При регистрации (account\register) он у меня убран вместе с валидацией. Поэтому, когда уже зарегистрированный п-ль делает заказ, нужно чтобы он указал свой телефон, если не сделал этого в редактировении личного профиля, поэтому это поле должно быть обязательным (с валидацией), что и пытался сделать..

 

Еще раз.. долго тыкался по форумам, пока удалось его таки вывести.. это получилось. Но вот сохранить и сделать обязательным с валидацией - не выходит. Явно нужна какаято ф-я связанная с кнопкой "продолжить" - но это мне не по зубам..

Подскажите плиз как такое замутить?

Ссылка на комментарий
Поделиться на других сайтах


  • 2 недели спустя...
  • 5 лет спустя...
  • 4 месяца спустя...
В 25.11.2020 в 18:25, comandir22 сказал:

 

ну и что нашли?

трудно написать?

Тоже искал. Нашел как добавить телефон и емаил в печать счета. Сначала пошел трудным путем и нашел как добавить поле телефон в адрес платежа в Симпле (собственно по теме пункт 25) ), но нужно для этого создавать специальное отдельное поле для телефона и добавлять его идентификатор в Страны/локализация, после чего стандартный телефон отключаем и заменяем его новым полем (что бы не было 2 поля с номером телефона при оформлении заказа), при этом поле получается отдельным, созданным в Симпле и если переносить заказы и покупателей при обновлении Опенкарта, то поле с номером телефона скорей всего не перенесется. Поэтому лучше не мудрить, а просто добавить поле с телефоном в файл инвойса для печати заказа.

 

Изменено пользователем qwert5005
Ссылка на комментарий
Поделиться на других сайтах


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.