Новости 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 Гость просматривают эту тему.
  • 7 Ответов
  • 7193 Просмотров
*

myxa09

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Здравствуйте!
Есть вопросы:
1) Как прикрутить FancyBox ко всем товарам в VirtueMart?
2) И как сделать так, чтобы при открытии изображения товара в стандартном лайтбоксе, не выезжала нижняя часть (там где название картинки, кнопачка "закрыть"), чтобы открывалось все сарзу как единое целое?
Заранее спасибо!
« Последнее редактирование: 16.05.2011, 13:09:44 от myxa09 »
*

Gruz

  • Завсегдатай
  • 1275
  • 167 / 3
  • gruz@jabber.org | gruz.org.ua
Там достаточно сложно прикрутить. Ибо оно сделано не совсем адекватно - раскидано во многих местах. И в  theme.php
И в productsnapshot.tpl
Ну и т.д. Надобно много шерстить.
Життя має дві форми - горіння і гниття!
-
Со мной на "ты" - Вам лень развёрнуто формулировать вопрос? Нам лень отвечать. Правильный вопрос: - Версии J! и проблемного расширения? - Что хотел? - Что пробовал? - Что получилось и что не получилось? - Какие были ошибки?
*

myxa09

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
а второй вопрос, его можно решить? Кажется slimbox.js, если не ошибаюсь, там что то поменять?
*

Gruz

  • Завсегдатай
  • 1275
  • 167 / 3
  • gruz@jabber.org | gruz.org.ua
1. http://www.google.com.ua/search?q=slimbox+documentation&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:unofficial&client=firefox-a
2. http://www.digitalia.be/software/slimbox
3. captionAnimationDuration: The duration of the caption animation, in milliseconds. Set it to 0 to disable it and make the caption appear instantly. Default is 400.
4. Теперь надо найти, где именно определяется slimbox, чтобы указать этот параметр...
По-моему тут:components/com_virtuemart/js/slimbox-1.71a/js/slimbox.js
или тут По-моему тут:components/com_virtuemart/js/slimbox/js/slimbox.js

Есть место:
Код
	}).slimbox({/* Put custom options here */}, null, function(el) {

Поэкспериментируй.




По поводу fancy нашёл в components/com_virtuemart/themes/default/theme.js

Код
/**
* This function allows you to present contents of a URL in a really nice stylish dhtml Window
* It uses the WindowJS, so make sure you have called
* vmCommonHTML::loadWindowsJS();
* before
*/

Т.е., например, в theme.php добавить в инициализацию
vmCommonHTML::loadWindowsJS();
« Последнее редактирование: 16.05.2011, 17:50:14 от Gruz »
Життя має дві форми - горіння і гниття!
-
Со мной на "ты" - Вам лень развёрнуто формулировать вопрос? Нам лень отвечать. Правильный вопрос: - Версии J! и проблемного расширения? - Что хотел? - Что пробовал? - Что получилось и что не получилось? - Какие были ошибки?
*

myxa09

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Спасибо, буду пробовать.
*

dragus-ildar

  • Осваиваюсь на форуме
  • 23
  • 0 / 0
Цитировать
2) И как сделать так, чтобы при открытии изображения товара в стандартном лайтбоксе, не выезжала нижняя часть (там где название картинки, кнопачка "закрыть"), чтобы открывалось все сарзу как единое целое?

идем к файлу ...\components\com_virtuemart\js\slimbox\js\slimbox.js
находим
Код
overlayFadeDuration:400,resizeDuration:400,resizeTransition:false,initialWidth:250,initialHeight:250,imageFadeDuration:400,captionAnimationDuration:400
меняем на
Код
overlayFadeDuration:0,resizeDuration:0,resizeTransition:false,initialWidth:250,initialHeight:250,imageFadeDuration:0,captionAnimationDuration:1
радуемся
*

yurikfirst

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
  • Ты не одинок во вселенной
Я долго мучился по данному вопросу, бродя по поисковикам и на данном форуме, но все таки докопался.....решил побыть полезным *DRINK*
На моем сайте http://anchor-mr.ru/ я настроил так....(скоро, где то через неделю я его залью обновленным с локалки) а пока все работает
в общем приступим...(если у Вас версия 2.5 Joomla и последняя версия VirtueMart):

1) В файле \components\com_virtuemart\views\category\tmpl\default.php находим что-то вроде
Код
<?php /** @todo make image popup */
echo $product->images[0]->displayMediaThumb ('class="browseProductImage" border="0" title="' . $product->product_name . '" ', TRUE, 'class="modal"');
?>

2) Меняем всё это на:
Код
<?php /** @todo make image popup */
echo $product->images[0]->displayMediaThumb ('class="browseProductImage" border="0" title="' . $product->product_name . '" ', TRUE, 'class="fancybox" rel="group"',true,true);
?>

Я думаю внимательные поймут, в чем фишка изменения... ;)

3) Далее идем по адресу templates\ваш_шаблон\index.php
Добавляем туда в <head>:

Код
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript" src="<?php echo $document->baseurl; ?>/components/com_virtuemart/assets/js/fancybox/jquery.easing-1.3.pack.js"></script>
<script type="text/javascript" src="<?php echo $document->baseurl; ?>/components/com_virtuemart/assets/js/fancybox/jquery.fancybox-1.3.4.js"></script>
<script type="text/javascript" src="<?php echo $document->baseurl; ?>/components/com_virtuemart/assets/js/fancybox/jquery.mousewheel-3.0.4.pack.js"></script>
<link rel="stylesheet" href="<?php echo $document->baseurl; ?>/components/com_virtuemart/assets/js/fancybox/jquery.fancybox-1.3.4.css" type="text/css" />

понятно, что никаких файлов не надо добавлять, так они уже есть по умолчанию в VirtueMart, просто кто-то по своей дебильности их не задействовал(я про разработчиков) 8)
если их все таки не нашлось по этим адресам, что выше, то бежим сюда http://fancybox.net/ , скачиваем их и припрятываем по этим путям..(если поменяется версия, меняем соответственно в коде)

4) После этих кодов, что добавили добавляем в head:

Код
</script>
<script type="text/javascript">
$(document).ready(function() {
$("a.fancybox").fancybox({
           transitionIn : "elastic",
           transitionOut : "elastic"
});
});
</script>

тут -
Код
transitionIn : "elastic",
transitionOut : "elastic"

для прикольного выезжания 8)

это было для картинок...


5) А для отображения PDF доков я добавил туда же рядом

Код
<script type="text/javascript">
   $(document).ready(function() {
       $("a.iframe").fancybox({
  width : 850,
  height : 600,
           transitionIn : "elastic",
           transitionOut : "elastic"
    });
});
</script>

а в ссылке с доком пишем так:

Код
<a class="iframe" href="ПУТЬ_К ДОКУМЕНТУ/ДОКУМЕНТ.pdf" title="Заголовок документа">Название документа</a>

Всё.. пойду пить чай)

*

husky2

  • Новичок
  • 9
  • 0 / 0
реализовал вашим способом, все хорошо работает, но после него перестало работать всплывающее окно после нажатия кнопки "Добавить в корзину" и корзина сразу не обновляется, приходится перезагрузить страницу чтобы показало что в корзине есть товар)))

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

VirtueMart - SMS уведомления о сделаном заказе.

Автор bork

Ответов: 42
Просмотров: 25042
Последний ответ 26.07.2021, 22:11:25
от Oleg91
Отчеты и статистика для VirtueMart

Автор 4kict

Ответов: 25
Просмотров: 11889
Последний ответ 14.01.2021, 00:09:53
от gartes
IceVmCart - новый бесплатный модуль корзины для VirtueMart

Автор Grig2009

Ответов: 105
Просмотров: 56383
Последний ответ 05.02.2017, 11:44:02
от Super_Panda
Модуль недавно просмотренные товары для VirtueMart 1.1.X

Автор aleks_yug

Ответов: 97
Просмотров: 30902
Последний ответ 25.10.2016, 15:03:07
от Igoritaly
Хаки для убыстрения VirtueMart (уменьшение запросов и т.п.)

Автор yadrinez

Ответов: 197
Просмотров: 83830
Последний ответ 05.02.2016, 21:53:34
от flyingspook