Новости Joomla

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

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

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

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

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

🏆 Открыто голосование за 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 Гость просматривают эту тему.
  • 4 Ответов
  • 3138 Просмотров
*

tormentor

  • Осваиваюсь на форуме
  • 23
  • 3 / 0
Недавно столкнулся с необходимостью вставить в объявление видео с Youtube.
Погуглил, готового ничего не нашел, но все оказалось не так сложно, вот как я это решил.

1. Идем в админку, создаем новое поле. Тип ставим Text, задаем имя, отображение ставим "NoDisplay", это важно, так как потом мы будем сами решать, где хотим его отображать. Также запомните имя поля, которое вы ввели, оно нам нужно будет для отображения.
Идея в том что пользователь вставляет не ссылку на видео, а только его код(те 11 знаков после ссылки  - например "aFOwZGtDFhs")


2. Открываем файл components/com_adsmanager/views/details/tmpl/default.php - это шаблон нашего объявления. В месте где хотим вывести видео добавляем следующий код:
Код
<?php
if($this->content->ad_Video!=""){
?>
<div>
<object width="300" height="233"><param name="movie" value="http://www.youtube.com/v/<?php echo $this->content->ad_Video; ?>"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param>
<embed src="http://www.youtube.com/v/<?php echo $this->content->ad_Video; ?>" type="application/x-shockwave-flash" width="300" height="233" allowscriptaccess="always" allowfullscreen="true"></embed></object>
</div>
<?php } ?>

где ad_Video - это имя поля которое мы задали в самом начале.
Вот вроде и все, у меня заработало.

UPDATE

Добавил регулярное выражение, для получения id видео, теперь в поле можно вставлять ссылку целиком, парсит ссылки такого вида:
youtube.com/v/{vidid}
youtube.com/vi/{vidid}
youtube.com/?v={vidid}
youtube.com/?vi={vidid}
youtube.com/watch?v={vidid}
youtube.com/watch?vi={vidid}
youtu.be/{vidid}

Вот код:
Код
<?php
if($this->content->ad_Video!=""){
preg_match("#(?<=v=)[a-zA-Z0-9-]+(?=&)|(?<=v\/)[^&\n]+(?=\?)|(?<=v=)[^&\n]+|(?<=youtu.be/)[^&\n]+#", $this->content->ad_Video, $matches);
?>
<div>
<object width="300" height="233"><param name="movie" value="http://www.youtube.com/v/<?php echo $matches[0]; ?>"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param>
<embed src="http://www.youtube.com/v/<?php echo $matches[0]; ?>" type="application/x-shockwave-flash" width="300" height="233" allowscriptaccess="always" allowfullscreen="true"></embed></object>
</div>
<?php } ?>
« Последнее редактирование: 11.04.2012, 16:11:26 от tormentor »
*

avtomastersu

  • Захожу иногда
  • 67
  • 0 / 0
  • Статьи интересных тем katalogclub.com
Re: Интеграция Youtube в AdsManager 2.6
« Ответ #1 : 02.02.2013, 01:22:08 »
А с 2.7 и на новой Joomla 2.6 как, пробовал кто нибудь ?    ;)

P.S. Узнал. Оказывается там существует специальный плагин, который устанавливается через загрузку в самом компоненте.
« Последнее редактирование: 02.02.2013, 02:53:42 от avtomastersu »
*

AdWeb

  • Давно я тут
  • 878
  • 31 / 3
Re: Интеграция Youtube в AdsManager 2.6
« Ответ #2 : 09.02.2013, 15:53:56 »
А с 2.7 и на новой Joomla 2.6 как, пробовал кто нибудь ?    ;)

P.S. Узнал. Оказывается там существует специальный плагин, который устанавливается через загрузку в самом компоненте.
не знаю какой там функционал в плагине, но данный метод работает на версии 2,7 и Joomla 2.5,9  ^-^

PS. использовал второй код
« Последнее редактирование: 09.02.2013, 16:07:22 от AdWeb »
| Хороший Хостинг | Купить Хикашоп | Каталог перекладів Joomla компонентів
PS. спасибо кидать через вебмани: R152456839841 если плюсикофф не хватает :)
*

sheldom

  • Захожу иногда
  • 56
  • 2 / 0
RE: Интеграция Youtube в AdsManager 2.6
« Ответ #3 : 12.07.2014, 19:18:12 »
В версии 2.9 работает первый код. Спасибо автору.
*

zvi

  • Захожу иногда
  • 392
  • 4 / 0
RE: Интеграция Youtube в AdsManager 2.6
« Ответ #4 : 13.07.2014, 21:14:55 »
В версии 2.9 работает первый код. Спасибо автору.

работает и второй вариант в 2.9, а как вывести в лист иконку видео если есть?ad_Video
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

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

Автор nicklas

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

Автор klekovkinandrey

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

Автор FlexNL

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

Автор murovoz

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

Автор kaman62

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