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

blade86

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Здравствуйте! Нужна помощь, сайт http://domjudvin.ru
На странице товара при скидке - http://domjudvin.ru/index.php?page=shop.product_details&flypage=flypage.tpl&product_id=488&category_id=65&option=com_virtuemart&Itemid=136 показывается старая и новая цена (со скидкой), нужно чтобы старая была зачеркнута, в файле price.tpl.php прописано всё как надо вроде бы:
<?php
// DISCOUNT: Show old price! Inline style specified for PDF creation, remove it if you don't need it
if(!empty($discount_info["amount"])) {
   ?>
   <span class="product-Old-Price" style="color:red;text-decoration:line-through;">
      <?php echo $CURRENCY_DISPLAY->getFullValue($undiscounted_price);?></span>
   
   <br/>
   <?php
}
?>
но, ничего не зачеркивается, помогите пожалуйста, что может быть не так почему не работает зачеркивание??
« Последнее редактирование: 09.09.2013, 10:43:28 от blade86 »
*

fsv

  • Moderator
  • 2787
  • 413 / 2
почему не работает зачеркивание??
Потому что у вас карточка не с дефолтным классом цены.
Веб-разработка: заказ. Только новая разработка.
*

blade86

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Потому что у вас карточка не с дефолтным классом цены.

А можно подробнее что где изменить чтобы она стала зачеркиваться? пожалуйста очень надо.
*

fsv

  • Moderator
  • 2787
  • 413 / 2
Так вы же сами указали:
<span class="product-Old-Price" style="color:red;text-decoration:line-through;">
      <?php echo $CURRENCY_DISPLAY->getFullValue($undiscounted_price);?></span>
А у вас -
<span class="product_list_price" style="border: none;">Цена: 5 430.00 руб. 5 418.00 руб. </span>

Вы дали код из дефолтной темы VM? Используете другую? Там код сравните с дефолтным, кроме имени класса предполагаю там еще несоответствие будет, у вас 2 цены в одном span выведены, разнесите. Возможно, класс можно и существующий оставить, смотреть надо, где он задействован, только в .css ему стили зачеркивания дописать.
Веб-разработка: заказ. Только новая разработка.
*

blade86

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Так вы же сами указали:
<span class="product-Old-Price" style="color:red;text-decoration:line-through;">
      <?php echo $CURRENCY_DISPLAY->getFullValue($undiscounted_price);?></span>
А у вас -
<span class="product_list_price" style="border: none;">Цена: 5 430.00 руб. 5 418.00 руб. </span>

Вы дали код из дефолтной темы VM? Используете другую? Там код сравните с дефолтным, кроме имени класса предполагаю там еще несоответствие будет, у вас 2 цены в одном span выведены, разнесите. Возможно, класс можно и существующий оставить, смотреть надо, где он задействован, только в .css ему стили зачеркивания дописать.

Да всё из дефолтной темы, вот код из price.tpl (www/domjudvin.ru/components/com_virtuemart/themes/default/templates/common/):
Спойлер
[свернуть]
А вот из flypage.tpl отвечает за страницу товара (www/domjudvin.ru/components/com_virtuemart/themes/default/templates/product_details/):
Спойлер
[свернуть]

Что где нужно изменить чтобы только старая цена зачеркивалась??
« Последнее редактирование: 09.09.2013, 02:19:10 от fsv »
*

fsv

  • Moderator
  • 2787
  • 413 / 2
Попробуйте во flypage заменить
Код
<span class="product_list_price" style="border: none;">Цена: <?echo strip_tags($product_price);?></span>   
   
на
Код
<span class="product_list_price" style="border: none;">Цена: <?php echo $product_price); ?></span>   
   
Веб-разработка: заказ. Только новая разработка.
*

blade86

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Попробуйте во flypage заменить
Код
<span class="product_list_price" style="border: none;">Цена: <?echo strip_tags($product_price);?></span>   
   
на
Код
<span class="product_list_price" style="border: none;">Цена: <?php echo $product_price); ?></span>   
   
Спасибо Вам большое помогло! И ещё момент - а как сделать чтобы цена новая была выше а кнопка купить ниже а то после этих изменений сейчас наоборот где в коде что опустить? вот как сейчас после той правки что Вы сказали http://domjudvin.ru/index.php?page=shop.product_details&flypage=flypage.tpl&product_id=488&category_id=65&option=com_virtuemart&Itemid=136
*

fsv

  • Moderator
  • 2787
  • 413 / 2
И ещё момент - а как сделать чтобы цена новая была выше а кнопка купить ниже
Зашел, посмотрел. Вроде, все как хотели. Вопрос решен?
Веб-разработка: заказ. Только новая разработка.
*

blade86

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Зашел, посмотрел. Вроде, все как хотели. Вопрос решен?
Да прописал стили и всё встало нормально - этот вопрос решён, спасибо! Может с этим http://joomlaforum.ru/index.php/topic,275082.0.html топиком поможете?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Цены на товары в Virtuemart 1.1

Автор skanv

Ответов: 317
Просмотров: 164132
Последний ответ 09.01.2014, 19:37:34
от fsv
Появление кнопки в зависимости цены товара

Автор vertraut

Ответов: 2
Просмотров: 1517
Последний ответ 29.11.2013, 19:24:49
от fsv
не работает кнопка ПОДТВЕРДИТЬ ЗАКАЗ и не отображается Адрес доставки

Автор negas

Ответов: 2
Просмотров: 2429
Последний ответ 21.08.2013, 19:23:58
от ZAIRA
Учет продаж только после оплаты - новое поле в БД, код не работает

Автор Anelka

Ответов: 0
Просмотров: 1403
Последний ответ 01.10.2012, 14:15:23
от Anelka
Подкатегории на глваной в спске и вывод цены с НДС

Автор ranaza

Ответов: 2
Просмотров: 1445
Последний ответ 26.08.2012, 12:20:02
от ranaza