Компонент форм Joomla

Автор: Руслан Бощаев. Рубрика - Joomla

Каждый джумлавод наверняка сталкивался с ограниченными возможностями стандартного компонента по созданию форм обратной связи (компонент Контакты) и искал замену ему. Я тоже не стал исключением и подобрал, на мой взгляд, достойную замену компоненту контактов, о чем расскажу в этой записи.

Компонент Fox Contact (для всех версий Joomla) является бесплатным и распространяется по лицензии GNU General Public License, скачать последнюю версию вы можете на странице официального сайта, который легко находится поиском. Приятно то, что компонент русифицирован.

Ну, а теперь немного о самом компоненте. Установка его не составит труда – все делается стандартно.

установка Fox Contact 

Далее есть два пути, все зависит от желаемого результата. Если вы желаете повесить форму на отдельный пункт меню, то переходите в «Меню – Создать», возле «Тип пункта меню» нажимаете кнопку «Выбрать» и выбираете «Страница Fox Contact», далее вы попадете на страницу настроек компонента Fox Contact.

ссылка на Fox Contact из меню 

Если же вы желаете опубликовать форму обратной связи как модуль, то переходите в «Расширения – Менеджер модулей», жмите «Создать» и выбирайте «Fox Contact». Попадете в стандартные настройки модуля и формы.

создаем модуль с формой контактов 

И в зависимости от ваших действий вы получите либо страницу с формой обратной связи, либо модуль, который сможете опубликовать на любой странице сайта.

Несколько слов о возможностях и настройках компонента

Несмотря на то, что компонент Fox Contact позиционируется как компонент для создания простых форм, он имеет довольно большое число настроек, с помощью которых вы в 99% случаев сможете удовлетворить свои запросы к форме. Ведь что надо вебмастеру от формы? Возможность создания неограниченного количества полей разных типов: текстовые поля, выпадающие списки, чек-боксы, возможность прикреплять к сообщению вложения и т.д. Все это есть в компоненте Fox Contact. Пробежимся по основным настройкам компонента, которые помогут вам создать полноценную форму.

Настройка почты

Здесь вы можете указать неограниченное число почтовых ящиков, куда будет отправляться  уведомление о том, что пользователь заполнил и отправил форму. Причем можно настроить, что уведомление будет приходить и через систему личных сообщений Joomla.

настройка почты в Fox Contact 

Поля формы

Здесь настроек очень много и останавливаться на каждой нецелесообразно, т.к. делается все просто. Общий принцип таков, что у каждого требуемого поля выбираете состояние: отключено-обязательно-необязательно. Даете название этому полю, выбираете порядок отображения и все – данные поля будут отображаться на сайте.

настройка полей в Fox Contact 

 

События

Здесь все интуитивно понятно. Пишите тексты, настраиваете редирект после отправки пользователем формы.

настройка событий в Fox Contact 

 

Безопасность

Настраиваем антиспам и капчу. Все делается легко и непринужденно.

настройка безопасности в Fox Contact 

 

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

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

Как убрать powered by fox contact из компонента?

Конечно, убирать копирайты незаконно, но давайте разберемся справедливо ли это в нашем случае? Как уже упоминалось выше, компонент распространяется по лицензии GNU General Public License, которая позволяет модифицировать, копировать, распространять (и даже на коммерческой основе) программный код. Разработчики же Fox Contact установили свой копирайт, который, в зависимости от стилей шаблона, выглядит очень непрезентабельно: крупные буквы, броский цвет. Возможности отключить копирайт через админку нет и более того разработчики позаботились, чтобы никто не смог убрать копирайт, для этого они добавили в компонент один зашифрованный файл foxcontact.inc, где и спрятан копирайт. Для того, чтобы убрать копирайт, разработчики предлагают заплатить денежку.

Возмутил этот факт и сообщество джумлаводов здесь и здесь, которые предложили несколько способов решения проблемы. Один из них, не являясь изящным решением, помогает. Для версии Fox Contact 2.0.14 работает метод замены части кода в файле /components/com_foxcontact/views/foxcontact/tmpl/default.php. А именно, находим в этом файле код: 

<form enctype="multipart/form-data" id="FoxForm" name="FoxForm" class="foxform" method="post" action="<?php echo($_SERVER["REQUEST_URI"] . "#cid_" . $cid);?>"> <!-- <?php echo("com_" . $this->_name . " " . $xml['version']); ?> -->
<?php echo($this->FormText); ?> </form>

И меняем его на:

<form enctype="multipart/form-data" id="FoxForm" name="FoxForm" class="foxform" method="post" action="<?php echo($_SERVER["REQUEST_URI"] . "#cid_" . $cid);?>"> <!-- <?php echo("com_" . $this->_name . " " . $xml['version']); ?> -->
<?php $this->FormText=(str_replace("http://www.fox.ra.it/", "/",$this->FormText)); echo(str_replace(":10px", ":0",$this->FormText)); ?></form> 


В результате ссылка с копирайтом будет вырезана из кода страницы сайта. Еще раз напомню, что этот способ удаления ссылки был испробован мною на компоненте Fox Contact версии 2.0.14, на других версиях возможно не сработает, т.к. все последние апдейты этого компонента направлены именно на усложнение защиты против удаления копирайта. Возможно, когда вы скачаете Fox Contact, те приемы по удалению копирайта, которые были описаны здесь, будут уже не актуальны. Если что, пишите в комментариях, будем совместно решать проблемы.

 [UPDATE ОТ 9.11.2012] Как убрать powered by fox contact из foxcontact версии 2.0.19?

В новой версии компонента разработчики усложнили процедуру удаления копирайта. Но нет ничего невозможного. Делаем так. 

Для версии Fox Contact 2.0.19 также работает метод замены части кода в файле /components/com_foxcontact/views/foxcontact/tmpl/default.php. А именно, находим в этом файле код: 

<form enctype="multipart/form-data" id="FoxForm" name="FoxForm" class="foxform" method="post" action="<?php echo($_SERVER["REQUEST_URI"] . "#cid_" . $cid);?>"> <!-- <?php echo("com_" . $this->_name . " " . $xml['version']); ?> -->
<?php echo($this->FormText); ?> </form>

И меняем его на:

<form enctype="multipart/form-data" id="FoxForm" name="FoxForm" class="foxform" method="post" action="<?php echo($_SERVER["REQUEST_URI"] . "#cid_" . $cid);?>">
<!-- <?php echo("com_" . $this->_name . " " . (string)$xml->version . " " . (string)$xml->license); ?> -->
<?php $this->FormText=(str_replace("<div class=\"fox-copyright\" style=\"padding:10px 0 !important;text-indent:0 !important\"><a target=\"_blank\" title=\"Joomla contact form\" href=\"http://www.fox.ra.it/\" style=\"visibility: visible !important; display: inline !important; font-size:10px !important;\">powered by fox contact</a>", "",$this->FormText)); echo(str_replace(":10px", ":0",$this->FormText)); ?></form>

Одного изменения кода недостаточно, теперь необходимо удалить файл (лучше переименовать, чтобы можно было вернуть все обратно) /components/com_foxcontact/js/fileuploader.js. Все - копирайт больше не отображается! 

Подписывайтесь на RSS и вы в числе первых ознакомитесь с интересными статьями, посвященными Joomla. 

Как убрать powered by fox contact из модуля?

Этот способ предложил Евгений в комментариях:

Указанный выше метод убирает ссылку только в компоненте, т.е., если создавать пункт меню со страницей формы обратной связи. При создании модулей обратная ссылка (копирайт) остается. 
Чтоб убрать копирайт в модуле, нужно в файле /modules/mod_fo xcontact/tmpl/d efault.php в строке 50 код:

<?php echo($form_text); ?> 

заменить на

<?php $form_text=(str_replace("http://www.fox.ra.it/", "/",$form_text)); echo(str_replace(":10px", ":0",$form_text)); ?>

Комментарии   

 
0 #70 Julieta 14.08.2017 12:31
Otherwise the advance payment is non-refundable.


Here is my page: full movies online: http://online.fullmoviesu.com/
Цитировать
 
 
0 #69 Saul 24.07.2017 10:37
Just want to say your article is as surprising. The clarity in your post is just great and i can assume you're
an expert on this subject. Fine with your permission allow me to grab your RSS feed to keep
updated with forthcoming post. Thanks a million and please keep up the gratifying work.


my site: home remedies
for face: http://www.nazivka.ru/index.php/component/k2/itemlist/user/188483
Цитировать
 
 
0 #68 Андрей 12.06.2016 23:45
СТАРЕНЬКАЯ ТЕМКА,НО ЧТО-ТО НЕ ПОЛУЧАЕТСЯ СПРЯТАТЬ
ТОТ КОПИРАЙТ.МОЖЕТ КТО РАЗЖУЕТ?
Цитировать
 
 
0 #67 Сергей 05.11.2014 06:33
Помогите пожалуйста! Как убрать ссылку с версии 2.5.22
Ответ если можно на почту.
Спасибо.
Цитировать
 
 
0 #66 женя 17.10.2014 15:23
спасибо огромное! удалил, наконец эту ссылку! все по инстркукции
Цитировать
 
 
0 #65 Alex 03.09.2014 14:00
Цитирую Zac:
Не дождавшись файлик fileuploader.js, сделал все без него :-)
Всем мучающимся с новой версией 2.0.19 выполнить след:

Редактим neon.css и меняем отображение копирайтов.
.fox-copyright {display: none}
html[dir="rtl"] .fox-copyright {display: none}
.fox-copyright a { display: none}

Далее fsubmitter.php
Ищем вывод копирайта:
return $result . 'powered by fox contact';

меняем на:
return $result . '';

Ничего с ява скриптом fileuploader.js делать не надо, файлы аплоадятся на ура, русский Ваня слишком далеко забрёл :lol:
Удачи 8)


Красавец! Все работает!
Цитировать
 
 
0 #64 Вячеслав 06.04.2014 17:00
Добрый день. Подскажите как убрать(заменить ) имя и email отправителя в сообщении, приходящем с сайта чез форму(ведь отравитель фактически сайт, и email отправителя заявки уже есть в строке самой заявки)

Заранее спасибо!!!
Цитировать
 
 
0 #63 Никита 07.02.2014 07:13
Убрал копирайт в css. Незнаю до этого или после но письма фокс контакт не отправляет на почту. Письма приходят только администратору сайта, т.е. непосредственно в админку джумлы. Можно ли как-нибудь настроить пересылку почты в джумле из админки на почтовый ящик или как-то решить проблему с тем, что письма из Фокс контакте не отправляются. Можно ответ на почту
Цитировать
 
 
0 #62 Jey 03.12.2013 16:10
Цитирую Zac:
Не дождавшись файлик fileuploader.js, сделал все без него :-)
Всем мучающимся с новой версией 2.0.19 выполнить след:

Редактим neon.css и меняем отображение копирайтов.
.fox-copyright {display: none}
html[dir="rtl"] .fox-copyright {display: none}
.fox-copyright a { display: none}

Далее fsubmitter.php
Ищем вывод копирайта:
return $result . 'powered by fox contact';

меняем на:
return $result . '';

Ничего с ява скриптом fileuploader.js делать не надо, файлы аплоадятся на ура, русский Ваня слишком далеко забрёл :lol:
Удачи 8)




Отлично, лучше этого варианта не существует, полностью удаляет, в том числе скрытую.
спасибо разработчику.
Цитировать
 
 
0 #61 Георгий 23.11.2013 14:07
проблема что остаться ссылка с анкордом, что не очень любят поисковики...
Цитировать
 

Добавить комментарий


Защитный код
Обновить