Новости Joomla

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

👩‍💻 События плагинов и порядок их срабатывания при работе с пользовательскими полями Joomla и использовании FieldsHelper.

В процессе работы с Joomla бывает необходимо работать с пользовательским интерфейсом более тонко, чем обычно. Все формы Joomla состоят из стандартных полей, содержанием, стилем отображения, состоянием (включено/выключено, доступно для редактирования или нет и т.д.) можно управлять с помощью плагинов. Да и для нестандартных проектов хорошей практикой является создание одного системного или нескольких плагинов групп "под проект", в которых храниться весь "нестандарт".

В этой статье описаны все триггеры, которые вызываются через Event Dispatcher из administrator/components/com_fields/src/Helper/FieldsHelper.php, с привязкой к жизненному циклу (порядку этапов работы запроса), аргументам, изменяемым данным и дальнейшему распространению по Joomla. Это поможет вам работать с Joomla свободнее и не опасаясь при этом потерять изменения при очередном обновлении движка.

Подходы, описанные в статье, полезны в тех случаях, когда вы работаете с данными в com_fields - механизме создания и редактирования пользовательских полей ядра Joomla и при использовании FieldsHelper. Многие сторонние компоненты не используют эту возможность, поэтому данная статья будет полезна лишь частично.

Читать статью на Хабре.

@joomlafeed

🏆 Открыто голосование за Joomla в премии CMS Critic People’s Choice Awards 2025

🏆 Открыто голосование за Joomla в  премии CMS Critic People’s Choice Awards 2025

🗓 Голосование продлится до 27 февраля 2026 года.

👩‍💻 Проголосовать! 👩‍💻

Номинации, в которых можно проголосовать за Joomla:
⭐️ Best Free CMS
⭐️ Best Open Source CMS
⭐️ Best Enterprise CMS

Также в номинации Best e-Commerce Solution участвуют компоненты интернет-магазинов для Joomla:
⭐️ HikaShop
⭐️ Virtuemart

В номинации Best Website Builder оказались:
⭐️ YooTheme
⭐️ SP Page Builder

Что такое CMS Critic Awards?
С 2012 года премия CMS Critic Awards занимает особое место в сообществе систем управления контентом (CMS). Это единственный в своем роде сайт, который составляет рейтинг системы управления контентом и связанных с ними решений на рынке — от малого до крупного и подчеркивает их инновации и услуги.

Каждый год награда CMS Critic Awards присуждается одному победителю в различных отраслевых категориях, таких как: «Лучшая облачная CMS», «Лучший DXP», «Лучшая Headless CMS и других. Затем результаты оглашаются через СМИ вместе с выбором редакции CMS Critic.
В этом году премия вернулась к своим традициям и только TOP-5 движков по количеству номинаций попали в 2-й этап - голосование.

@joomlafeed

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

uf1976

  • Захожу иногда
  • 242
  • 6 / 5
Google Maps в AdsManager
« : 10.01.2010, 09:22:30 »
Никто не пробовал интегрировать?
*

GlooM

  • Давно я тут
  • 558
  • 91 / 0
  • AdsManager
*

uf1976

  • Захожу иногда
  • 242
  • 6 / 5
Re: Google Maps в AdsManager
« Ответ #2 : 10.01.2010, 13:51:54 »
Вот применение
Отличная реализация!
То, что надо.
А как бы мне применить это решение для 2.1.9 FE?
« Последнее редактирование: 10.01.2010, 14:03:44 от uf1976 »
*

GlooM

  • Давно я тут
  • 558
  • 91 / 0
  • AdsManager
Re: Google Maps в AdsManager
« Ответ #3 : 10.01.2010, 14:18:09 »
Мы делали это на версии 2.5 RC2 и Joostina 1.2
Вся тонкость была в файле includes/joomla.php, а именно в функции mosGetParam(), а именно комментирование строки
Код
$return = intval($return);
и тогда плагин Gmap отлично заработал (кстати, плагин идет вместе с AdsManager 2.5 RC2)
*

uf1976

  • Захожу иногда
  • 242
  • 6 / 5
Re: Google Maps в AdsManager
« Ответ #4 : 10.01.2010, 14:48:42 »
интересно, а в 2.1.9 это плагин пойдёт?
надо попробовать...
*

uf1976

  • Захожу иногда
  • 242
  • 6 / 5
Re: Google Maps в AdsManager
« Ответ #5 : 10.01.2010, 15:33:38 »
попробовал, не получилось,
не понял, как добавить plug.php из gmap.zip в ads 2.1.9

Никто не пытался?
*

SmellaYa

  • Новичок
  • 5
  • 2 / 0
Re: Google Maps в AdsManager
« Ответ #6 : 10.06.2010, 16:08:52 »
Не понимаю, как установить((( запуталась совсем...
Дорогой GlooM, подскажите, пожалуйста?
*

DT3

  • Осваиваюсь на форуме
  • 44
  • 5 / 0
Re: Google Maps в AdsManager
« Ответ #7 : 14.07.2010, 00:27:48 »
а можно поподробней по поводу
$return = intval($return);

 у меня не сохраняются правильно поля долгота и широта, происходит округление
*

rmm

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Google Maps в AdsManager
« Ответ #8 : 20.07.2010, 11:31:10 »
Подскажите, как настроить модуль adsmaplocation...хотелось бы, чтобы юзер мог указывать свои координаты на карте.
*

grinat

  • Захожу иногда
  • 356
  • 34 / 2
Re: Google Maps в AdsManager
« Ответ #9 : 25.07.2010, 13:42:15 »
Цитировать
попробовал, не получилось,
не понял, как добавить plug.php из gmap.zip в ads 2.1.9

Никто не пытался?
В 2.1.9 нет поддержки плагинов, коли вам он сильно необходим, то удалите 2.1.9 и установите 2.5, поля, объявления, категории при этом не удаляются.
*

sefez

  • Осваиваюсь на форуме
  • 20
  • 0 / 0
Re: Google Maps в AdsManager
« Ответ #10 : 31.07.2010, 22:56:07 »
Всё отлично работает! Только как при редактировании объявления удалить карту?
*

AlexAl

  • Захожу иногда
  • 309
  • 13 / 0
Re: Google Maps в AdsManager
« Ответ #11 : 20.08.2010, 14:06:49 »
Добрый день. нужна помощь. Хотелось бы что бы при просмотре объявлений показавалась карта с маркером, но помимо маркера автора объявления показывались и другие объявления. открыл плагин plug.php

нашел функцию отображения
Код
global $database;
$query = "SELECT lat,lng FROM #__adsmanager_fieldgmap ".
"WHERE fieldid = $field->fieldid AND contentid = $contentid";
$fieldid = $field->fieldid;
$database->setQuery($query);
$database->loadObject($result );
if ($result)
{
$lat = $result->lat;
$lng = $result->lng;
$database->setQuery("SELECT * FROM #__adsmanager_fieldgmap_conf WHERE fieldid = $field->fieldid");
$database->loadObject($conf);
$map_width = $conf->map_width;//500;
$map_height= $conf->map_height;//300;
$google_key = $conf->google_key;//
$return = '<script src="http://maps.google.com/maps?file=api&amp;v=2.x&amp;key='.$google_key.'" type="text/javascript"></script>';
$return .= '<script type="text/javascript">';

    $return .= 'function initialize() {';
    $return .= '  if (GBrowserIsCompatible()) {';
    $return .= '    var map = new GMap2(document.getElementById("map_canvas'.$fieldid.'"));';
    $return .= '    map.setCenter(new GLatLng('.$lat.', '.$lng.'), 13);';
$return .= ' var center = new GLatLng('.$lat.', '.$lng.');';
$return .= '    var marker = new GMarker(center); map.addOverlay(marker);';
$return .= ' map.addControl(new GSmallMapControl());';
    $return .= '    map.addControl(new GMapTypeControl());';
    $return .= '  }';
    $return .= '}';
    $return .= '</script>';
$return .= '</script>';
        $return .= '<div id="map_canvas'.$fieldid.'" style="width: '.$map_width.'px; height: '.$map_height.'px"></div>';
$return .= '<script type="text/javascript">initialize();</script>';

return $return;
}

тут мы видем что отбирается маркер по условию WHERE fieldid = $field->fieldid AND contentid = $contentid

в тиории можно убрать условие и через цикл вывести все маркеры. К сожелению знания синтаксиса мне не позволяет это сделать. Кто может помоч?
*

AlexAl

  • Захожу иногда
  • 309
  • 13 / 0
Re: Google Maps в AdsManager
« Ответ #12 : 21.08.2010, 14:34:49 »
Не ужели не кому не интересна эта функция?
*

Tomass

  • Осваиваюсь на форуме
  • 31
  • 0 / 0
Re: Google Maps в AdsManager
« Ответ #13 : 27.08.2010, 22:44:41 »
Как вообще вывести карту к объявлениям подскажите объявления размещаются а карты нет может кто подскажет что я не так сделал. смотреть
*

AlexAl

  • Захожу иногда
  • 309
  • 13 / 0
Re: Google Maps в AdsManager
« Ответ #14 : 27.08.2010, 22:47:24 »
нужно добавить плагин через компонент потом создать новое поле с типом карты и все
*

Tomass

  • Осваиваюсь на форуме
  • 31
  • 0 / 0
Re: Google Maps в AdsManager
« Ответ #15 : 30.08.2010, 16:28:36 »
нужно добавить плагин через компонент потом создать новое поле с типом карты и все

Поле как добавить знаю, а как там всё настроить?
*

HeadD

  • Новичок
  • 7
  • 1 / 0
Re: Google Maps в AdsManager
« Ответ #16 : 01.07.2011, 16:56:08 »
Адаптировал плагин под Joomla 1.6

http://narod.ru/disk/17774297001/gmap.zip.html
*

marozz1k

  • Захожу иногда
  • 316
  • 8 / 0
Re: Google Maps в AdsManager
« Ответ #17 : 13.07.2011, 17:58:37 »
удалите плс
« Последнее редактирование: 13.07.2011, 18:09:20 от marozz1k »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено]Дублирования ссылки "объвления" в breadcrumb, в компоненте AdsManager

Автор nicklas

Ответов: 4
Просмотров: 6106
Последний ответ 25.04.2024, 23:13:18
от Rinat abzyi
AdsManager вывод нужных полей по отдельности

Автор klekovkinandrey

Ответов: 2
Просмотров: 16767
Последний ответ 06.04.2024, 09:54:15
от Rinat abzyi
AdsManager загрузка файлов

Автор FlexNL

Ответов: 1
Просмотров: 5317
Последний ответ 21.10.2021, 17:20:09
от khan-alex
AdsManager 2.9.13 Есть ли возможность добавить функцию снять с публикации по мимо редактировать и уд

Автор murovoz

Ответов: 11
Просмотров: 15753
Последний ответ 27.03.2020, 22:39:23
от Pavel
Два компонента AdsManager в одном движке

Автор kaman62

Ответов: 12
Просмотров: 30621
Последний ответ 27.03.2020, 22:32:04
от Pavel