Для того чтобы модернизировать форму обратной связи, под свои нужды, к уже имеющимся полям (Имя, E-mail, Тема сообщения, Текст сообщения). Добавляем дополнительные поля (например: Организация, Адрес, Контактное лицо). Перед внесением изменений в файлах сделайте их бэкап.
Открываем файл ваш_сайт.ru/components/com_contact/views/contact/tmpl/ default_form.php находим строку 45 и 46 строкой вставляем новые поля:
<label for="contact_telephone">
<?php echo JText::_( 'Telephone' );?>:
</label><br />
<input type="text" name="telephone" size="30" class="inputbox" value="" />
<br />
<label for="contact_organisation">
<?php echo JText::_( 'Organisation' );?>:
</label><br />
<input type="text" name="organisation" size="30" class="inputbox" value="" />
<br />
<label for="contact_name">
<?php echo JText::_( CONTACTPERSON' );?>:
</label><br />
<input type="text" name="kontakt_name" size="30" class="inputbox" value="" />
<br />
Далее открываем файл - ваш_сайт.ru /components/com_contact/controller.php находим следующий код строка 92 – 98:
$default = JText::sprintf( 'MAILENQUIRY', $SiteName );
$contactId = JRequest::getInt( 'id', 0, 'post' );
$name = JRequest::getVar( 'name', '', 'post' );
$email = JRequest::getVar( 'email', '', 'post' );
$subject = JRequest::getVar( 'subject', $default, 'post' );
$body = JRequest::getVar( 'text', '', 'post' );
$emailCopy = JRequest::getInt( 'email_copy', 0, 'post' );
И заменяем на следующий код:
$default = JText::sprintf( 'MAILENQUIRY', $SiteName );
$contactId = JRequest::getInt( 'id', 0, 'post' );
$name = JRequest::getVar( 'name', '', 'post' );
$email = JRequest::getVar( 'email', '', 'post' );
$subject = JRequest::getVar( 'subject', $default, 'post' );
$UserTelephone = JRequest::getVar('telephone', '', 'POST');
$UserOrganisation = JRequest::getVar('organisation', '', 'POST');
$Kontakt_name = JRequest::getVar('kontakt_name', '', 'POST');
$body = JRequest::getVar('text', '', 'POST');
$emailCopy = JRequest::getInt( 'email_copy', 0, 'post' );
Далее находим код, строка 157 – 159:
// Prepare email body
$prefix = JText::sprintf('ENQUIRY_TEXT', JURI::base());
$body = $prefix."\n".$name.' <'.$email.'>'."\r\n\r\n".stripslashes($body);
И заменяем на код:
// Prepare email body
$prefix = JText::sprintf('ENQUIRY_TEXT', JURI::base());
$nam = JText::sprintf('NAME' );
$em = JText::sprintf('EMAIL' );
$tel = JText::sprintf('TELEPHONE' );
$org = JText::sprintf('ORGANISATION' );
$Kontakt = JText::sprintf('CONTACTPERSON' );
$Message= JText::sprintf('MESSAGE');
$body = $prefix."\n".$nam.': '.$name."\n" .$em.': '.'<'.$email.'>'."\n". $tel.': '.$UserTelephone."\n". $org.': '.$UserOrganisation."\n" ."$Kontakt ".': '.$Kontakt_name ."\n\n". $Message.': '."\r\n". stripslashes($body);
Далее открываем языковые файлы ваш_сайт.ru/language/ en-GB/ en-GB.com_contact.ini
Вставляем:
ORGANISATION=Organisation
MESSAGE=Message
CONTACTPERSON=Contact person
Далее открываем языковые файлы ваш_сайт.ru/language/ ru-RU/ ru-RU.com_contact.ini
Вставляем:
ORGANISATION=Организация
MESSAGE=Текст сообщения
CONTACTPERSON=Контактное лицо
(При сохранении файла следите за тем что - бы он был сохранён в utf-8).
Всё форма готова!
Все изменённые файлы в архиве.
P.S.
Если у кого-то возникнет необходимость, вставить дополнительные поля которые не были описаны здесь, или возникнет необходимость использовать разные формы обратной связи, в разных контактах. Могут свои вопросы задать мне на E-mail: chell.mi@mail.ru, только все ответы будут через форум.
[вложение удалено Администратором]