Joomla 4. Компонент K2 и форк K2ForJ4 (18 янв 2024)

Если вас, как и меня, достало выслушивать (вычитывать) бесконечные обещания разработчика K2 опубликовать версию компонента K2 под Joomla 4 (без чего невозможно реализовать апгрейд from Joomla 3 to Joomla 4) - воспользуйтесь форком K2ForJ4. Который в данный момент установлен и без каких-либо проблем работает на этом веб-сайте.

Fancy AJAX Contact Form - модуль Joomla 3

Больше
9 года 8 мес. назад - 7 года 9 мес. назад #1 от Aleksej
Aleksej создал тему: Fancy AJAX Contact Form - модуль Joomla 3




Анонс новой статьи в блоге - Fancy AJAX Contact Form - модуль для Joomla 3 . Велкам по ссылке.

16.05.2016. Почти два года прошло со дня публикации этого топика. Судя по web-аналитике, модуль пользуется популярность, его активно качают. Внимание, не рекомендую этого делать сегодня; в самые ближайшие дни, надеюсь, станет доступен для загрузки новый релиз Fancy AJAX Contact Form - модуль Joomla 3. Это будет уже новый модуль - программный код доработан, контактная форма станет более гибкой, появятся новые стили, также и поддержка recaptcha v.2.0. Только одно неизменно - модуль по-прежнему останется бесплатным и свободным. Спасибо за ваш интерес к данному расширению, и подождите, пожалуйста, еще несколько дней: ссылка на описание и загрузку новой версии модуля обязательно появится здесь, в этом топике.

18.05.2016 - опубликовал. jTriad Contact Form - страничка проекта. Welcome.


ВНИМАНИЕ: Спойлер!


Здесь же - продолжение разговора, и прежде всего - обещанный способ рассказать о том, как же нам заполнить хоть какими-то опциями админку, бакенд модуля. Продолжаем наши эксперименты: сделаем для начала в xml-файле модуля (любого) вот такой филд:

Code:
<field name="1email" type="text" default="" label="1 email" description="Введите 1 email" />

и затем, зайдя в админку модуля, присвоим этому вновь созданному полю "1email" (обзовите как хотите) некое значение (любое, от балды напишите чего хотите). "Здесь был Вася", допустим. Сделали? - отлично, а теперь уже в php модуля пропишите всего пару строчек , опубликуйте и взгляните, что же там такое опубликовалось на сайте:

Code:
$email = $params->get('1email'); echo $email;

Получилось? ;)

Ну и вот. Возможность редактирования пунктов выпадающего списка можете попробовать вывести в админку таким примерно способом:

Code:
<option value = "<?=$params->get('1email'); ?>"><?=$params->get('1email'); ?></option>

c адресами электронной почты... ну, все то же самое, разберетесь.
Enjoy!
Последнее редактирование: 7 года 9 мес. назад пользователем p.rishard.
Тема заблокирована.
Dev banner 3
Больше
9 года 8 мес. назад - 9 года 8 мес. назад #2 от serge
serge ответил в теме Fancy AJAX Contact Form - модуль Joomla 3

Aleksej пишет: и затем, зайдя в админку модуля, присвоим этому вновь созданному полю "1email" (обзовите как хотите) некое значение (любое, от балды напишите чего хотите). "Здесь был Вася", допустим.



ну вот так примерно могу выглядеть fields в xml-файле:

Code:
<config> <fields name="params"> <fieldset name="basic"> <field name="1email" type="text" default="" label="1 email" description="Введите 1 email" /> <field name="2email" type="text" default="" label="2 email" description="Введите 2 email" /> <field name="3email" type="text" default="" label="3 email" description="Введите 3 email" /> <field name="4email" type="text" default="" label="4 email" description="Введите 4 email" /> <field name="5email" type="text" default="" label="5 email" description="Введите 5 email" /> <field name="layout" type="modulelayout" label="JFIELD_ALT_LAYOUT_LABEL" description="JFIELD_ALT_MODULE_LAYOUT_DESC" /> </fieldset> <!-- Дополнительные параметры для модуля --> <fieldset name="advanced"> </fieldset> </fields> </config>

вставляется сразу после

Code:
</files>

А я смогу! - А поглядим! - А я упрямый!
Последнее редактирование: 9 года 8 мес. назад пользователем serge.
Тема заблокирована.
Больше
9 года 8 мес. назад - 9 года 8 мес. назад #3 от beginner
beginner ответил в теме Fancy AJAX Contact Form - модуль Joomla 3

Aleksej пишет: Возможность редактирования пунктов выпадающего списка можете попробовать вывести в админку таким примерно способом...


Спасибо за статью. И все-таки. Как добиться отправки сообщения с сайта на несколько адресов, причем чтобы вводить разные emai я мог с админки?!
Последнее редактирование: 9 года 8 мес. назад пользователем beginner.
Тема заблокирована.
Больше
9 года 8 мес. назад #4 от Aleksej
Aleksej ответил в теме Fancy AJAX Contact Form - модуль Joomla 3

beginner пишет: Как добиться отправки сообщения с сайта на несколько адресов, причем чтобы вводить разные emai я мог с админки?!



Прошу прощения, только сейчас дошли руки ответить.
Итак, step-by-step.


В mod_contactform_masterpro.php пишем где-нибудь в самом конце области php:

Code:
$category_name = $params->get('email1'); $category_name1 = $params->get('email2'); $category_name2 = $params->get('email3');

и в этом же файле, например, рисуем три скрытых поля, оговаривая, что значения забираем из php:

Code:
<tr> <td width="70%"><input type="hidden" name="category_name" id="category_name" value="<?=$category_name; ?>" /></td> </tr> <tr> <td width="70%"><input type="hidden" name="category_name1" id="category_name1" value="<?=$category_name1; ?>" /></td> </tr> <tr> <td width="70%"><input type="hidden" name="category_name2" id="category_name2" value="<?=$category_name2; ?>" /></td> </tr>

В submit.php, сразу после

Code:
$mail->AddReplyTo($input->getString('email'), $input->getString('name'));

прописываем эти строчки:

Code:
$mail->AddAddress($input->getString('category_name')); $mail->AddAddress($input->getString('category_name1')); $mail->AddAddress($input->getString('category_name2'));

и далее все, что по-дефолту было в config_start, убираем:

Code:
/* config start */ /* config end */

В mod_contactform_masterpro.xml , в самом конце файла, но перед закрывающим

Code:
</extension>

пишем как-то так:

Code:
<config> <fields name="params"> <fieldset name="basic"> <field name="email1" type="text" default="" label="email1" description="Введите email 1" /> <field name="email2" type="text" default="" label="email2" description="Введите email 2" /> <field name="email3" type="text" default="" label="email3" description="Введите email 3" /> </fieldset> </fields> </config>


Ну вот в принципе и все. Только не спрашивайте меня, почему "$category_name"; попросту это первое что пришло в голову.
Тема заблокирована.
Больше
9 года 8 мес. назад #5 от beginner
beginner ответил в теме Fancy AJAX Contact Form - модуль Joomla 3
что-то с валидацией текстового поля и алерты отображаются криво...
Тема заблокирована.
Больше
9 года 8 мес. назад #6 от Aleksej
Aleksej ответил в теме Fancy AJAX Contact Form - модуль Joomla 3

beginner пишет: что-то с валидацией текстового поля и алерты отображаются криво...



Вы правы, перезалил архив, скачайте еще раз.
Тема заблокирована.
Больше
9 года 8 мес. назад #7 от Aleksej
Aleksej ответил в теме Fancy AJAX Contact Form - модуль Joomla 3
Отредактировал первое сообщение топика, опубликовал еще одну версию модуля с recaptcha. Recaptcha должна быть включена, и лучше выбрать не clean стиль, а любой другой. Ибо иначе не помещается. Свитчера для recaptcha в админке модуля пока что нет. Чуть позже опубликую подробную, насколько смогу, аннотацию...
Тема заблокирована.
Больше
9 года 8 мес. назад - 9 года 8 мес. назад #8 от Aleksej
Aleksej ответил в теме Fancy AJAX Contact Form - модуль Joomla 3

Aleksej пишет: Чуть позже опубликую подробную, насколько смогу, аннотацию...


Опубликовал; равно как и новую версию модуля . Теперь это полноценный модуль Joomla 3.*.





Последнее редактирование: 9 года 8 мес. назад пользователем p.rishard. Причина: Добавлена иллюстрация
Тема заблокирована.
Больше
9 года 8 мес. назад #9 от beginner
beginner ответил в теме Fancy AJAX Contact Form - модуль Joomla 3

Aleksej пишет: Возможность редактирования пунктов выпадающего списка можете попробовать вывести в админку таким примерно способом:

Code:
<option value = "<?=$params->get('1email'); ?>"><?=$params->get('1email'); ?></option>


А можно чуть более развернуто этот момент? не совсем ясно.
Тема заблокирована.
Больше
9 года 8 мес. назад - 9 года 8 мес. назад #10 от Aleksej
Aleksej ответил в теме Fancy AJAX Contact Form - модуль Joomla 3

beginner пишет: А можно чуть более развернуто этот момент? не совсем ясно.


Ок. Все это касается второй ревизии модуля; не третьей.

1. В файле mod_contactform_masterpro.xml добавляем возмоность редактирования элементов выпадающего списка; число их зависит только от вас :

Code:
<field name="list_item_1" type="text" default="" label="Первый пункт списка" description="Введите тему 1" /> <field name="list_item_2" type="text" default="" label="Второй пункт списка" description="Введите тему 2" />


2. В файле mod_contactform_masterpro.php убираем статичный dropdown-список и применяем следующую конструкцию:

Code:
<tr> <td><label for="subject">Тема</label></td> <td> <select name="subject" id="subject"> <option value="" selected="selected"> - Выберите -</option> <option value = "<?=$params->get('list_item_1'); ?>"><?=$params->get('list_item_1'); ?></option> <option value = "<?=$params->get('list_item_2'); ?>"><?=$params->get('list_item_2'); ?></option> <option value = "<?=$params->get('list_item_3'); ?>"><?=$params->get('list_item_3'); ?></option> <option value = "<?=$params->get('list_item_4'); ?>"><?=$params->get('list_item_4'); ?></option> </select> </td> <td>&nbsp;</td> </tr>

Внес изменения в модуль, можно просто скачать и посмотреть.
Последнее редактирование: 9 года 8 мес. назад пользователем Aleksej.
Спасибо сказали: beginner
Тема заблокирована.
Работает на Kunena форум