Новости Joomla

Вышли релизы Joomla 6.1 и Joomla 5.4.5: новые возможности и стабильность

Релиз Joomla 6.1.0

Проект Joomla! объявил о доступности Joomla 6.1 [Nyota] — новой минорной версии шестой серии, а также о выпуске релиза исправлений ошибок Joomla 5.4.5. Релиз 6.1 приносит ряд долгожданных функций, повышающих удобство управления контентом и защиту от спама.

👩‍💻 Компонент "CS Афиши" для Joomla.

👩‍💻 Компонент "CS Афиши" для Joomla.

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

В состав пакета расширений входят:
- Компонент "CS Афиши"
- Модуль "Календарь событий"
- Модуль "Предстоящие события"
- Библиотека "ImgResize"

Расширение "CS Афиши" позволяет выводить список мероприятий, фильтровать их по датам, поиск по заголовкам и описанию.

Модуль "Календарь событий" отображает предстоящие и прошедшие мероприятие на календаре, с отображением мероприятий на конкретную дату во всплывающем окне.

Модуль "Предстоящие события" показывает список предстоящий событий по порядку их наступления.

P.S. Расширение платное, но плата символическая, чисто для отработки приема платежей. Ключи без ограничения по времени, купившие сейчас - смогут обновляться без ограничений.

Разработчик - участник нашего сообщества Дмитрий Денисов (@codersite).

Страница расширения
Демо

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

volk-beaver

  • Новичок
  • 1
  • 0 / 0
На сайте разработчика плагина LLKcaptcha (основанного на проекте KCAPTCHA) есть инструкция по внедрению этого плагина в компоненты Joomla. Следуя этой инструкции, я попытался прикрутить показ CAPTCHA к комментариям компонента K2, однако у меня это получилось не полностью. Сам вывод CAPTCHA удалось прикрутить к форме отправки комментариев при помощи внесения кода в этот файл: ../components/com_k2/templates/default/item_comments_form.php. Пример кода:

Код
<?php
$plugin = JFactory::getApplication()->getParams()->get('captcha', JFactory::getConfig()->get('captcha'));                                                          
$name='my_name';
$id='my_id';
$class='my_class';
if ($plugin === 0 || $plugin === '0' || $plugin === '' || $plugin === null)
{
      return '';
}
else
{
      if (($captcha = JCaptcha::getInstance($plugin)) == null)
      {
            return '';
      }
}
echo $captcha->display($name, $id, $class);                                                          
?>



А вот код проверки ввода CAPTCHA куда только не вставлял, но так и не смог добиться результата. Комментарии отправлялись вне зависимости от того, что было (или не было) введено в поле проверки CAPTCHA. Пример кода (на сайте разработчика плагина в коде была, по всей видимости, пропущена одна фигурная скобка; прокомментирую в том месте, куда её добавил):

Код
<?php
$plugin = JFactory::getApplication()->getParams()->get('captcha', JFactory::getConfig()->get('captcha'));
if ($plugin === 0 || $plugin === '0' || $plugin === '' || $plugin === null)
{
     return '';
}
else
{
     if (($captcha = JCaptcha::getInstance($plugin)) == null)
     {
            return '';
     }
// Скорее всего именно здесь была пропущена скобка
}
$captcha->CheckAnswer('');
?>

В общем, буду благодарен, если кто-нибудь поможет объяснить, как заставить работать этот плагин в комментариях компонента К2. Мои попытки производились в среде Joomla 3.1.1 и K2 v2.6.7. Кстати, сразу скажу, что особо в PHP не разбираюсь. Спасибо.

В общем, пообщался я с разработчиками этого плагина и они любезно предоставили решение. Описание на сайте.
« Последнее редактирование: 16.07.2013, 03:42:12 от volk-beaver »
*

llsoftby

  • Новичок
  • 2
  • 1 / 0
Добрый день.
Продублирую ответ здесь, возможно, кому-то пригодится.

Итак, интеграция LLKcaptcha в компоненте K2 (комментарии)


1) Вставить в com_k2/templates/default/item_comments_form.php код:

$plugin = JFactory::getApplication()->getParams()->get('captcha', JFactory::getConfig()->get('captcha'));                                                     

$name='my_name';

$id='my_id';

$class='my_class';

 

if ($plugin === 0 || $plugin === '0' || $plugin === '' || $plugin === null) {

      return '';

 } else {

          if (($captcha = JCaptcha::getInstance($plugin)) == null) {

               return '';

           }

     }

echo $captcha->display($name, $id, $class);

2) В \components\com_k2\controllers\item.php by заменяем существующую функцию function comment()  на:

    function comment(){
        $plugin    = JFactory::getApplication()->getParams()->get('captcha', JFactory::getConfig()->get('captcha'));

       if ($plugin === 0 || $plugin === '0' || $plugin === '' || $plugin === null) {

         return '';

        } else {

         if (($captcha = JCaptcha::getInstance($plugin)) == null) {

              return '';

          }
    }
    if($captcha->CheckAnswer('')) {
                $model = $this->getModel('item');
                $model->comment();
            } else {
                  $mainframe = JFactory::getApplication();
                    JLoader::register('Services_JSON', JPATH_ADMINISTRATOR.DS.'components'.DS.'com_k2'.DS.'lib'.DS.'JSON.php');
                    $json = new Services_JSON;
                    $response = new JObject();
                    $response->set('message','Wrong captcha value. Please, refresh captcha'); //
                    //$response->set('refresh',1);   //to refresh page (after AJAX answer)
                    echo $json->encode($response);
                    $mainframe->close();
            }
   
    }

Подробные инструкции смотрите здесь http://www.llsoft.by/joomla-customization/llkcaptchahowto.
*

AzaLeo

  • Захожу иногда
  • 76
  • 2 / 0
Тема как раз очень пригодилась, спасибо автору. Но есть проблема: каким образом убрать каптчу от зарегистрированные пользователей? Пробовал условием в выводе, но я так понимаю, что создается сессия и ее нужно или как-то убрать или обработать, потому что комментарии все равно не добавляются без ввода кода.
*

AzaLeo

  • Захожу иногда
  • 76
  • 2 / 0
Разобрался. Нужно условие внутри самой функции сделать. Если кому пригодится, то код, который нужно вставить в item.php, должен быть таким:

Код: php
    function comment(){
$user = &JFactory::getUser();
if ($user->guest)
{
         $plugin    = JFactory::getApplication()->getParams()->get('captcha', JFactory::getConfig()->get('captcha'));

       if ($plugin === 0 || $plugin === '0' || $plugin === '' || $plugin === null) {

         return '';

        } else {

         if (($captcha = JCaptcha::getInstance($plugin)) == null) {

              return '';

          }
     }
     if($captcha->CheckAnswer('')) {
                 $model = $this->getModel('item');
                 $model->comment();
             } else {
                   $mainframe = JFactory::getApplication();
                     JLoader::register('Services_JSON', JPATH_ADMINISTRATOR.DS.'components'.DS.'com_k2'.DS.'lib'.DS.'JSON.php');
                     $json = new Services_JSON;
                     $response = new JObject();
                     $response->set('message','Wrong captcha value. Please, refresh captcha'); //
                     //$response->set('refresh',1);   //to refresh page (after AJAX answer)
                     echo $json->encode($response);
                     $mainframe->close();
             }
}
else
{
$model = &$this->getModel('item');
$model->comment();
}
}
*

llsoftby

  • Новичок
  • 2
  • 1 / 0
Добрый день.

Да, можно проверять Вашим способом и выводить (проверять) каптчу только для гостей.
Для удобства, чтобы каждый раз не лазить в код и ставить доп. проверки, обновилась версия llkcaptcha, где добавлен параметр, отвечающий для отображения CAPTCHA: для всех или только для гостей. Скачать можно на нашем сайте.
http://llsoft.by/joomla-customization/llkcaptcha.

С Уважением,
ЛЛСОФТ
*

AzaLeo

  • Захожу иногда
  • 76
  • 2 / 0
Уважаемые разработчики, CAPTCHA перестала защищать комментарии К2 от спама. Приходится усложнять конфигурацию отображения CAPTCHA. Для людей стало сложно проходит проверку, а вот спам все равно проскакивает несколько раз в день. Что-то можно предпринять?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Решено: Более одной группы доп. полей

Автор chilly_bang

Ответов: 75
Просмотров: 14394
Последний ответ 07.02.2022, 17:06:11
от Dobrota
[Решено] K2 не сохраняет настройки

Автор Dobrota

Ответов: 2
Просмотров: 4205
Последний ответ 07.02.2022, 15:58:04
от Dobrota
Перестала работать опция оценки материалов/рейтинг в компоненте K2

Автор Yonakano

Ответов: 4
Просмотров: 2898
Последний ответ 07.02.2021, 00:30:57
от Yonakano
Ошибка ПРИ создании материала В К2 - РЕШЕНО

Автор korchaga

Ответов: 1
Просмотров: 2580
Последний ответ 28.12.2020, 03:21:46
от korchaga
Не отображается Captcha v2 в компоненте K2 2.10.3 Joomla 2.5

Автор Александр Кардаш

Ответов: 4
Просмотров: 2005
Последний ответ 30.07.2020, 12:27:47
от Александр Кардаш