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

Hol1killer

  • Захожу иногда
  • 215
  • 3 / 0
rel="next и prev" в pagination.php
« : 05.08.2014, 19:56:55 »
Добрый вечер, не могу что-то дописать pagination.php что бы следующая и предыдущая ссылка делалась rel="next" и rel="prev" соответственно. Возможно ли решение без правок системного /libraires/cms/pagination - ?

Пытался изменить функцию pagination_item_active() в pagination в шаблоне - но никак не могу сформировать условие.

Надеюсь на помощь, спасибо.
*

ChaosHead

  • Гуру
  • 5242
  • 451 / 13
Re: rel="next и prev" в pagination.php
« Ответ #1 : 20.01.2015, 17:43:22 »
Открой файл templates/мой_шаблон/html/pagination.php

и замени/добавь там функцию (для Joomla 3.3.6):

Код
/**
 * Renders the pagination list
 *
 * @param   array   $list  Array containing pagination information
 *
 * @return  string         HTML markup for the full pagination object
 *
 * @since   3.0
 */
function pagination_list_render($list)
{

$list['previous']['data'] = str_replace('<a ', '<a rel="prev" ', $list['previous']['data']); //rel prev fix
$list['next']['data'] = str_replace('<a ', '<a rel="next" ', $list['next']['data']); //rel next fix


// Reverse output rendering for right-to-left display.
$html = '<ul>';
$html .= '<li class="pagination-start">' . $list['start']['data'] . '</li>';
$html .= '<li class="pagination-prev">' . $list['previous']['data'] . '</li>';

foreach ($list['pages'] as $page)
{
$html .= '<li>' . $page['data'] . '</li>';
}

$html .= '<li class="pagination-next">' . $list['next']['data'] . '</li>';
$html .= '<li class="pagination-end">' . $list['end']['data'] . '</li>';
$html .= '</ul>';

return $html;
}

Если такого файла нет, то создай.

В разных шаблонах или в других версиях эта функция может выглядеть по другому.
Пробуйте тогда добавить в начало эти строки:

Код
$list['previous']['data'] = str_replace('<a ', '<a rel="prev" ', $list['previous']['data']); //rel prev fix
$list['next']['data'] = str_replace('<a ', '<a rel="next" ', $list['next']['data']); //rel next fix
« Последнее редактирование: 20.01.2015, 17:52:57 от ChaosHead »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Ошибка! Pagination (пагинация) Joomla 3.4.4 дробное значение номера страницы при изменении стандартн

Автор MansEL

Ответов: 10
Просмотров: 2791
Последний ответ 17.05.2016, 14:08:09
от MansEL
pagination

Автор prosimons

Ответов: 5
Просмотров: 2090
Последний ответ 09.10.2015, 14:40:41
от Magnum
Переопределение /libraries/cms/pagination

Автор Pavluk

Ответов: 3
Просмотров: 1628
Последний ответ 17.09.2015, 13:32:54
от Pavluk
Стили pagination из Bootstrap

Автор Bugert

Ответов: 3
Просмотров: 3849
Последний ответ 19.02.2015, 18:47:56
от yarek
Pagination

Автор fiter

Ответов: 2
Просмотров: 1236
Последний ответ 18.08.2014, 16:00:00
от darkghost