Форум русской поддержки Joomla!® CMS
10.12.2016, 16:49:14 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Изменить текст активации учетной записи

 (Прочитано 148 раз)
0 Пользователей и 1 Гость смотрят эту тему.
_LA_
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 3


« : 04.07.2016, 17:26:13 »

Всем привет!
У кого-нибудь получалось удачно изменить текст активации?
Что текст хранится в "\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
Живу я здесь
******

Репутация: +157/-0
Offline Offline

Сообщений: 1341



« Ответ #1 : 04.07.2016, 19:19:45 »

проверьте в \components\com_users\models\registration.php порядок вызова параметров
Записан
_LA_
Новичок
*

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 3


« Ответ #2 : 05.07.2016, 12:29:31 »

проверьте в \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, 15:28:28 от _LA_ » Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet