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

artserge

  • Захожу иногда
  • 118
  • 11 / 0
Ошибка... а у вас в базе есть поле last_name_2 в таблице calcbook_virtuemart_order_userinfos  ?
*

Stasweb

  • Завсегдатай
  • 1501
  • 24 / 0
Да спасибо разобрался все заработало
но вот теперь не работает сортировка в админ в VM
Код
			<th><?php echo $this->sort ('order_number', 'Номер заказа');  ?></th>
<th><?php echo $this->sort ('ofis_ispolnitel', 'Офис исполнитель');  ?></th>
            <th><?php echo $this->sort ('ww', 'Название заказа');  ?></th>
            <th><?php echo $this->sort ('dataj', 'Дата заказа') ; ?></th>
            <th><?php echo $this->sort ('username', 'Имя и телефон');  ?></th>
<th><?php echo $this->sort ('order_email', 'COM_VIRTUEMART_EMAIL');  ?></th>
<th><?php echo $this->sort ('payment_method', 'Способ доставки');  ?></th>
<th><?php echo $this->sort ('payment_method', 'Способ оплаты');  ?></th>
<th><?php echo $this->sort ('created_on', 'COM_VIRTUEMART_ORDER_CDATE');  ?></th>
<th><?php echo $this->sort ('modified_on', 'COM_VIRTUEMART_ORDER_LIST_MDATE');  ?></th>
<th><?php echo $this->sort ('order_status', 'COM_VIRTUEMART_STATUS');  ?></th>
<th><?php echo JText::_ ('COM_VIRTUEMART_ORDER_LIST_NOTIFY'); ?></th>
<th><?php echo $this->sort ('order_total', 'COM_VIRTUEMART_TOTAL');  ?></th>
<th><?php echo $this->sort ('virtuemart_order_id', 'COM_VIRTUEMART_ORDER_LIST_ID');  ?></th>
сортирует те поля которые были в которые я добавил те нет подскажите как это исправить,
*

Stasweb

  • Завсегдатай
  • 1501
  • 24 / 0
как я понял сортировка происходит так
Код
<?php echo $this->sort ('order_number', 'Номер заказа');  ?>
где order_number указывает что надо сортировать по номеру заказа (и он сортирует)
а
Код
<?php echo $this->sort ('ofis_ispolnitel', 'Офис исполнитель');  ?>
где я указал что надо сортировать по ofis_ispolnitel (и он не сортирует)
так же не сортирует ww, dataj, username
 ! ! ! ! !
может их надо еще в другом месте где то прописать если да то подскажите
« Последнее редактирование: 15.03.2014, 09:03:26 от Stasweb »
*

Stasweb

  • Завсегдатай
  • 1501
  • 24 / 0
Проблема осталась
подскажите где они могут редактироваться
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
VirtueMartModelOrders->getOrdersList (administrator/components/com_virtuemart/models/orders.php).
Вам нужно изучить структуру MVC во избежание возникновения таких вопросов.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Stasweb

  • Завсегдатай
  • 1501
  • 24 / 0
VirtueMartModelOrders->getOrdersList (administrator/components/com_virtuemart/models/orders.php).
Вам нужно изучить структуру MVC во избежание возникновения таких вопросов.

сделал так
Код
class VirtueMartModelOrders extends VmModel {

/**
* constructs a VmModel
* setMainTable defines the maintable of the model
* @author Max Milbers
*/
function __construct() {
parent::__construct();
$this->setMainTable('orders');
$this->addvalidOrderingFieldName(array('order_name','order_email','payment_method','virtuemart_order_id','ofis_ispolnitel','ww','dataj','username' ) );

}

больше не где не чего править не надо
*

Stasweb

  • Завсегдатай
  • 1501
  • 24 / 0
еще вопрос как вывести не значение а заголовок поля radio


Название поля в базе у меня (ofis_ispolnitel)
вывести пытаюсь так
Код
echo JHTML::_ ('link', JRoute::_ ($link, FALSE), $order->ofis_ispolnitel, array('title' => JText::_ ('Внести изменения в заказ'). ' ' . $order->ofis_ispolnitel));
но выводится значение а не заголовок

Помогите разобраться 
*

Stasweb

  • Завсегдатай
  • 1501
  • 24 / 0
проблема осталась актуальна
*

Stasweb

  • Завсегдатай
  • 1501
  • 24 / 0
если в странице для печати я вывожу так
Код
<?php echo $order['details']['BT']->dataj; ?>
то для вывода в админку вывожу так
Код
<?php echo $order->dataj; ?>
и в модели в getOrdersList пишу u.dataj

второе поле в печать выводится так
Код
<?php echo $order['details']['ST']->kontak_lic_no_rigistr; ?>
мне надо в админку вывести переменную kontak_lic_no_rigistr;
способом выше описанном не получается
подскажите может где в модели надо в другом месте прописывать
*

Stasweb

  • Завсегдатай
  • 1501
  • 24 / 0
Может у кого есть материал какой как выводить днные вещи

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

Как вывести ID товара в описании товара?

Автор Stasweb

Ответов: 8
Просмотров: 5308
Последний ответ 28.11.2022, 23:22:27
от Evgen Kulibin
Как вывести модуль в страницу VirtueMart?

Автор harddrop

Ответов: 11
Просмотров: 6048
Последний ответ 13.11.2022, 13:11:37
от Evgen Kulibin
Joomla 3 + VM + Universal AJAX Live Search - как вывести картики товара в поиске?

Автор PSN

Ответов: 10
Просмотров: 10555
Последний ответ 27.03.2022, 17:29:00
от Evgen Kulibin
Как вывести товар в пункт меню?

Автор Stasweb

Ответов: 8
Просмотров: 1134
Последний ответ 05.01.2021, 11:33:05
от rsn
Необходимо вывести главную в карту сайта

Автор Stasweb

Ответов: 4
Просмотров: 1080
Последний ответ 22.07.2020, 13:33:31
от Stasweb