0 Пользователей и 1 Гость просматривают эту тему.
  • 2 Ответов
  • 1582 Просмотров
*

_LA_

  • Новичок
  • 3
  • 0 / 0
Всем привет!
У кого-нибудь получалось удачно изменить текст активации?
Что текст хранится в "\language\ru-RUru-RU.com_users.ini" известно, что переопределить языковую константу в "Расширения - Менеджер языков - Переопределение констант" тоже известно: менять нужно языковую константу с тегом "COM_USERS_EMAIL_REGISTERED_WITH_ACTIVATION_BODY", по умолчанию она выглядит так: "Здравствуйте, %s,\n\nБлагодарим вас за регистрацию на сайте %s. Ваша учётная запись создана, но должна быть активирована прежде, чем вы сможете ею воспользоваться.\nЧтобы активировать учётную запись, перейдите по ссылке ниже, или скопируйте её в адресную строку браузера:\n%s \n\nПосле активации вы сможете входить на сайт %s с помощью указанных ниже логина и пароля:\n\nЛогин: %s\nПароль: %s"

Проблема в динамических данных. Статический текст правится без проблем, а вот вместо %s подставляются данные по определенному порядку. Видимо, есть некоторый массив, который постепенно читается, и при очередном %s считывается ячейка, после чего очередь переходит к следующей ячейке и т.д.
Нельзя просто убрать %s из шаблона письма, иначе все письмо "перекосится".

По умолчанию, после "Здравствуйте" должно быть имя пользователя, если удалить %s в шаблоне после "Здравствуйте", то имя пользователя пойдет после текста "...Благодарим вас за регистрацию на сайте", и так далее...все данные сдвинутся на одну позицию.
*

Ilhom666

  • Завсегдатай
  • 1384
  • 184 / 0
проверьте в \components\com_users\models\registration.php порядок вызова параметров
*

_LA_

  • Новичок
  • 3
  • 0 / 0
проверьте в \components\com_users\models\registration.php порядок вызова параметров
Так и есть, спасибо за подсказку!
Но, так как у меня используется chronoforms5, этот файл переопределен по пути /administrator/components/com_chronoforms5/chronoforms/actions/joomla_registration/joomla_registration.php. Там есть аналогичный раздел
Код
$emailBody = JText::sprintf(
'COM_USERS_EMAIL_REGISTERED_WITH_ACTIVATION_BODY',
/*$data['name'],*/
$data['sitename'],
$data['activate'],
$data['siteurl'],
$data['username'],
$data['password_clear']
);
где, как видно, я уже закомментировал $data['name'].
После этого, из шаблона письма можно удалить первый %s и ничего не "перекосится". Каждый %s соответствует по порядку $data в вышеуказаном фрагменте кода.


Остался только один вопрос: этот файл можно как-то переопределить? Ведь при очередном обновлении изменения все сбросятся к дефолту.
« Последнее редактирование: 05.07.2016, 14:28:28 от _LA_ »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Изменить названия языков в модуле Выбор языка

Автор Mick_20

Ответов: 1
Просмотров: 1034
Последний ответ 10.12.2023, 13:09:44
от Mick_20
Текст меню выходит за границы меню.

Автор 7733039

Ответов: 1
Просмотров: 1115
Последний ответ 05.08.2022, 16:32:00
от marksetter
Не приходят письма об активации аккаунта некоторым пользователям

Автор Devif

Ответов: 3
Просмотров: 1004
Последний ответ 11.02.2022, 13:52:13
от marksetter
Изменить background заголовка статьи

Автор alekckim

Ответов: 5
Просмотров: 729
Последний ответ 01.09.2021, 13:29:18
от alekckim
Проблемы с отображения текста - (белый фон - белый текст)

Автор disig

Ответов: 0
Просмотров: 884
Последний ответ 02.05.2021, 06:00:55
от disig