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

Aubakirovalex

  • Осваиваюсь на форуме
  • 20
  • 1 / 0
Всем привет.

Мне пришлось модифицировать модуль top_ten, чтобы там выводилась картинка, название, описание, цена.
Нужно добавить поле выбора количества товаров, и кнопку "добавить в корзину".

Вот я вытащил форму:

Код
 
<form action='http://sushi.local/index.php' method='post' name='addtocart' id='addtocart' class='button' />
 
    <input type='submit' class='addcart_button' value='Add to cart' title='Add to cart' onsubmit="handleAddToCart( this.id );return false;"  />
    <input type="hidden" name="category_id" value="<?php echo  @$_REQUEST['category_id'] ?>" />
    <input type="hidden" name="product_id" value="<?php echo $product_id ?>" />
    <input type="hidden" name="prod_id[]" value="<?php echo $product_id ?>" />
    <input type='hidden' name='page' value='shop.cart' />
    <input type='hidden' name='func' value='cartadd' />
    <input type="hidden" name="Itemid" value="<?php echo $sess->getShopItemid()?>" />
    <input type='hidden' name='option' value='com_virtuemart' />
    <input type='hidden' name='set_price[]' value='' />
    <input type='hidden' name='adjust_price[]' value='' />
    <input type='hidden' name='master_product[]' value='' />
    <input type="text" size="4" id="quantity2" name="quantity[]" value="1" />
</form>

Проблема в том что у меня, при нажатии на кнопку, выдает товары не найдены. Если прописать вручную ID категории и товара, все нормально. НО, товаров 10, а форма одна, как сделать эту функцию? !
« Последнее редактирование: 12.11.2011, 17:20:23 от Aubakirovalex »
*

DiffuSer

  • Осваиваюсь на форуме
  • 34
  • 0 / 0
Похоже, у нас схожая проблема. Надо использовать переменные в данном шаблоне, которые изначально не предусмотрены. Тоже мучаюсь, надо $quantity_step в price.tpl использовать, не получается.
*

Aubakirovalex

  • Осваиваюсь на форуме
  • 20
  • 1 / 0
Я вот тоже не пойму, почему со стандартными переменными он не работает. Чего не хвататет
*

DiffuSer

  • Осваиваюсь на форуме
  • 34
  • 0 / 0
Там надо как-то добавить в tpl-> переменные, но я не знаю как, а что тут, что на j-s помощи месяцами ждать. :) Но выбора-то у нас нет.
*

Aubakirovalex

  • Осваиваюсь на форуме
  • 20
  • 1 / 0
Вот в этой теме http://joomlaforum.ru/index.php?topic=86947.0 говорилось о моем случае, но там они вручную задавали id. как же мне быть
*

Aubakirovalex

  • Осваиваюсь на форуме
  • 20
  • 1 / 0
Всем привет! Я решил свою проблему! Я не жадный и делюсь решением.
Модуль модифицировал.

Проблема была в том, что я забыл объявить переменный в самом начале документа.
Вот код в форме    
Код
<input type='hidden' name='product_id' value='<?php $db->p("product_id"); ?>' />


а вот объявленная переменная
Код
/*$list  = "SELECT p.product_id, p.product_sales as sales, p.product_parent_id, p.product_name, c.category_id, c.category_flypage, p.product_thumb_image "; $list .= "FROM #__{vm}_product p, #__{vm}_product_category_xref pc, #__{vm}_category c WHERE "; $q = "p.product_publish='Y' AND "; $q .= "pc.product_id = p.product_id AND "; $q .= "pc.category_id = c.category_id AND "; $q .= "p.product_sales > 0 "; $q .= "GROUP BY p.product_id "; $q .= "ORDER BY sales DESC, p.product_name "; $list .= $q . " LIMIT 0, $num_topsellers ";*/
$list  = "SELECT p.product_id, p.product_sales as sales, p.product_parent_id, p.product_name, c.category_id, c.category_flypage, p.product_thumb_image, d.product_price, p.product_s_desc, p.product_length, p.product_weight, [b]p.product_id[/b] ";
$list .= "FROM #__{vm}_product p, #__{vm}_product_category_xref pc, #__{vm}_category c, #__{vm}_product_price d WHERE ";
$q = "p.product_publish='Y' AND ";
$q .= "pc.product_id = p.product_id AND ";
$q .= "pc.category_id = c.category_id AND ";
$q .= "p.product_id = d.product_id AND ";
$q .= "p.product_sales > 0 ";
$q .= "GROUP BY p.product_id ";
$q .= "ORDER BY sales DESC, p.product_name, p.product_s_desc, p.product_length, p.product_weight, [b]p.product_id[/b] ";
$list .= $q . " LIMIT 0, $num_topsellers ";


Подробнее как модернизировать, в моем блоге http://aubakirovalex.blog.ru/133346003.html
« Последнее редактирование: 14.11.2011, 09:34:31 от Aubakirovalex »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

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

Автор bork

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

Автор 4kict

Ответов: 25
Просмотров: 11844
Последний ответ 14.01.2021, 00:09:53
от gartes
[Решено] Товарная накладная и товарный чек

Автор mikeles

Ответов: 6
Просмотров: 6332
Последний ответ 21.09.2019, 19:48:12
от kungurskiy
[Решено] Чебокс "Показывать только товары, которые есть в наличии"

Автор artMelnikov

Ответов: 20
Просмотров: 8849
Последний ответ 28.06.2017, 11:19:51
от OutLaw1
IceVmCart - новый бесплатный модуль корзины для VirtueMart

Автор Grig2009

Ответов: 105
Просмотров: 56341
Последний ответ 05.02.2017, 11:44:02
от Super_Panda