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

joonic

  • Новичок
  • 2
  • 0 / 0
Установил тему одной известной студии, но не все элементы отображаются нормально.
mod_zt_latestnews и mod_zt_piecemaker.

Перед каждым из этих элементов идут следующие строки:
1:
Warning: Creating default object from empty value in /home/p65536/www/automobilenow.ru/modules/mod_zt_latestnews/helper.php on line 96
Warning: Creating default object from empty value in /home/p65536/www/automobilenow.ru/modules/mod_zt_latestnews/helper.php on line 96
Warning: Creating default object from empty value in /home/p65536/www/automobilenow.ru/modules/mod_zt_latestnews/helper.php on line 96

2:
Warning: Creating default object from empty value in /home/p65536/www/automobilenow.ru/modules/mod_zt_piecemaker/helper.php on line 179
Warning: Creating default object from empty value in /home/p65536/www/automobilenow.ru/modules/mod_zt_piecemaker/helper.php on line 179
Warning: Creating default object from empty value in /home/p65536/www/automobilenow.ru/modules/mod_zt_piecemaker/helper.php on line 179
Warning: Creating default object from empty value in /home/p65536/www/automobilenow.ru/modules/mod_zt_piecemaker/helper.php on line 179

Спойлер
[свернуть]

Строки файла helper.php:
1:
Код
// Content Items only
$query = 'SELECT a.*, ' .
' CASE WHEN CHAR_LENGTH(a.alias) THEN CONCAT_WS(":", a.id, a.alias) ELSE a.id END as slug,'.
' CASE WHEN CHAR_LENGTH(cc.alias) THEN CONCAT_WS(":", cc.id, cc.alias) ELSE cc.id END as catslug'.
' FROM #__content AS a' .
($show_front == '0' ? ' LEFT JOIN #__content_frontpage AS f ON f.content_id = a.id' : '').
' INNER JOIN #__categories AS cc ON cc.id = a.catid' .
' WHERE '. $where .'' .
($catid ? $catCondition : '').
($show_front == '0' ? ' AND f.content_id IS NULL ' : '').
' AND cc.published = 1' .
' ORDER BY '. $ordering;
$db->setQuery($query, 0, $count);
$rows = $db->loadObjectList();
$i = 0;
$lists = array();
foreach ( $rows as $row )
{
93 $row->slug = $row->id.':'.$row->alias;
94 $row->catslug = $row->catid.':'.$row->category_alias;
95 $imageurl = modZTLatestNewsHelper::checkImage($row->introtext);
96 $lists[$i]->title = htmlspecialchars( $row->title );
97 $lists[$i]->link = JRoute::_(ContentHelperRoute::getArticleRoute($row->slug, $row->catslug));
98
99 if(modZTLatestNewsHelper::FileExists($imageurl)) {
100 $lists[$i]->thumb = modZTLatestNewsHelper::getThumb($row->introtext,$thumbWidth,$thumbHeight,false);
101 $images_size = modZTLatestNewsHelper::getImageSizes($lists[$i]->thumb);
if($images_size[0] != $thumbWidth || $images_size[1] != $thumbHeight) {
@unlink($lists[$i]->thumb);
$lists[$i]->thumb_small = modZTLatestNewsHelper::getThumb($row->introtext,$thumbWidth,$thumbHeight,false);
}
}
$lists[$i]->introtext = modZTLatestNewsHelper::introContent($row->introtext, $intro_lenght);
$lists[$i]->date = date("d F Y",strtotime($row->created));
$lists[$i]->width = $width;
$i++;
}

return $lists;

2:
Код
	$lists = array();
$items = $model->getItems();
if(count($items)){
$i      = 0;

173 $article_count = count($items);
174 foreach ( $items as $item ){
175 $item->slug = $item->id.':'.$item->alias;
176 $item->catslug = $item->catid.':'.$item->category_alias;
177 $imageurl = $this->checkImage($item->introtext);
178 $folderImg = DS.$item->id;
179 $lists[$i]->thumb_diff = '';
180 $lists[$i]->thumb = '';
181 $this->createdDirThumb('com_content',$folderImg);
182 $lists[$i]->title = $item->title;
$lists[$i]->alias = $item->alias;
$lists[$i]->link = JRoute::_(ContentHelperRoute::getArticleRoute($item->slug, $item->catslug));
$lists[$i]->introtext = $this->introContent($item->introtext, $intro_length,'');
if($this->checkImage($item->introtext)) $lists[$i]->thumb = $this->getThumb($item->introtext,$thumbWidth,$thumbHeight,false,$item->id,'com_content');
$i++;
}
}
*

vendn

  • Захожу иногда
  • 105
  • 1 / 2
Re: Ошибки в шаблоне Joomla xenia 2.5
« Ответ #1 : 28.01.2013, 22:36:56 »
попробуй сперва поставить новую и чистую версию Joomla 2.5.8, а затем установить шаблон по новой...
*

joonic

  • Новичок
  • 2
  • 0 / 0
Re: Ошибки в шаблоне Joomla xenia 2.5
« Ответ #2 : 28.01.2013, 23:28:15 »
попробуй сперва поставить новую и чистую версию Joomla 2.5.8, а затем установить шаблон по новой...
не думаю, что поможет, но попробую, если в ближайшие дни других вариантов не будет. Сейчас обновил свою Joomla до 2.5.8, ничего не изменилось.

Да и этот шаблон идет сразу установочным файлом с демо-данными. Без них сложно будет работать. А если заливать только шаблон из папки темплейтс на новую джумлу, тогда демо-данных нет и он на некоторые плагины ругается, говорит что они отсутствуют...
« Последнее редактирование: 28.01.2013, 23:44:20 от joonic »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Создание страниц сайта по шаблону Joomla

Автор romanln2016

Ответов: 0
Просмотров: 12342
Последний ответ 13.08.2025, 16:25:06
от romanln2016
Изменение шаблона Joomla! 2.5.24

Автор SecondPC

Ответов: 0
Просмотров: 6092
Последний ответ 26.03.2021, 18:09:33
от SecondPC
Как в Joomla 3 отключить позицию вывода или убрать надпись?

Автор Алексей Лоскутов

Ответов: 2
Просмотров: 9286
Последний ответ 10.04.2020, 19:07:02
от Алексей Лоскутов
Руководство - создание шаблона для Joomla 2.5

Автор dynamit

Ответов: 6
Просмотров: 33041
Последний ответ 02.02.2020, 22:28:15
от AlinaBut
Добавляем rel="canonical" в шаблоны материалов Joomla 1.7 - 2.5

Автор AmdAveO

Ответов: 126
Просмотров: 98784
Последний ответ 28.05.2019, 18:41:25
от Клим