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

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Всем привет))

В общем-то, на форуме обсуждалось, как задать нескольким блокам одинаковую высоту
Может не внимательно смотрел, но ничего для себя не нашел. Гуглил...

Вариант с отрицательными margin, padding в данном случае не подходит по некоторым причинам.

Пользуюсь таким скриптом:

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

но он не всегда корректно вычисляет высоту в chrom и safari (и после обновления страницы иногда пересчитывает неправильно)

Может кто-нибудь знает готовые проверенные решения?

Спасибо.

Блин, по ошибке зарядил тему в j1.5!
хотя, в общем-то какая разница
« Последнее редактирование: 30.07.2012, 19:51:46 от fbr »
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Выравнивание блоков по высоте
« Ответ #1 : 30.07.2012, 19:55:07 »
Да нету вроде ничего универсального. В каждом конкретном случае смотреть нужно.
Бордер можно ещё сделать. Тут шустрый описывал
Создание сайтов, шаблонов, помощь в решении проблем.
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Re: Выравнивание блоков по высоте
« Ответ #2 : 30.07.2012, 20:08:46 »
тут немножко не так

2 ряда, по 3 блока в каждом, бордер-радиусы и абсолютно позиционированный span, прижатый к нижней границе ...

без js тут не обойтись :(
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Re: Выравнивание блоков по высоте
« Ответ #3 : 30.07.2012, 20:11:16 »
Вы бы макет нарисовали с границами и блоками, так ничего не понять...
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Re: Выравнивание блоков по высоте
« Ответ #4 : 30.07.2012, 20:36:49 »
Где-то так ..
Извиняюсь за качество, на скору руку
рамку с тенями рисовать не стал

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

[вложение удалено Администратором]
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Re: Выравнивание блоков по высоте
« Ответ #5 : 30.07.2012, 20:44:14 »
версткой и CSS можно сделать, если макет не резиновый. для резины - пичалька... Шаманить надо.


Идея такая...
Задаем внешнему диву бэкграунд, на котором нарисовано три колонки с бэкграундом до самого низа. Нижнего и верхнего закругления нет. Внизу и вверху делаем еще по одному диву, в верхнем  картинка с верхними закруглениями, в нижнем - с нижними. Нижний поднимаем отрицательным маргином.

То же самое для второго блока "с кубиками"

Естественно, они должны быть завернуты каждый в отдельный див, которому и будем задавать основной бэкграунд. Фактически высота у блоков будет разная, визуально - одинаковая.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

dimon888951

  • Захожу иногда
  • 115
  • 24 / 3
Re: Выравнивание блоков по высоте
« Ответ #6 : 30.07.2012, 20:48:21 »
тут немножко не так

2 ряда, по 3 блока в каждом, бордер-радиусы и абсолютно позиционированный span, прижатый к нижней границе ...

без js тут не обойтись :(
А если жестко высоту задать?
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Re: Выравнивание блоков по высоте
« Ответ #7 : 30.07.2012, 20:57:58 »
А если жестко высоту задать?

Я думаю, с жестко заданной высотой тут и вопроса бы не возникло. Вопрос только в переменном по высоте контенте.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Выравнивание блоков по высоте
« Ответ #8 : 30.07.2012, 21:01:20 »
Можно добавить 3 блока {position:absolute;z-index:-1;top:0; bottom:0; left:x;}
Ну и общий обязательно position:relative. И резинку можно...
Создание сайтов, шаблонов, помощь в решении проблем.
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Re: Выравнивание блоков по высоте
« Ответ #9 : 30.07.2012, 21:06:49 »
Можно добавить 3 блока {position:absolute;z-index:-1;top:0; bottom:0; left:x;}
Ну и общий обязательно position:relative. И резинку можно...

Ну да... но там уже столько дивов, что на пальцах не опишешь... код нужен - а лень)))

Хотя, стой. В одном блоке - один абсолют. Больше не даст. Проблемы будут скорее всего.

ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Re: Выравнивание блоков по высоте
« Ответ #10 : 30.07.2012, 21:13:37 »
dimon888951,
задавал жестко, но пришлось ставить ограничение на кол-во выводимых знаков, а это не всегда удобно, особенно если с изображениями

Taatshi,
Спасибо. Все понятно. Не проверяя вижу, что будет работать :)
вот только ... рисовать много. У меня в разных разделах, разное количество колонок и даже разное кол-во блоков в ряду ...
А подтягивая нижний рисунок отрицательным маргином - накрою абсолютный span (хотя, в принципе, его можно и подвинуть)

т.е решение простое, но трудоемкое и не универсальное
Для каждого сайта бэкграунды рисовать ...

хоть и не люблю я js использовать (да и не очень разбираюсь), но похоже, универсальное решение может дать только он
вот только где найти? :)
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Re: Выравнивание блоков по высоте
« Ответ #11 : 30.07.2012, 21:21:41 »
Со скриптом вот так хром режет, причем через раз! .. гад

[вложение удалено Администратором]
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Выравнивание блоков по высоте
« Ответ #12 : 30.07.2012, 21:26:12 »
Цитировать
Хотя, стой. В одном блоке - один абсолют. Больше не даст. Проблемы будут скорее всего.
Даст. Только внешнему ещё нужен ещё z-index:1; и overflow:hidden;
ну и left:x - для каждого блока разный (0, 33%, 66%ж)
Создание сайтов, шаблонов, помощь в решении проблем.
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Выравнивание блоков по высоте
« Ответ #13 : 30.07.2012, 21:31:35 »
Вот тут я давал решение для этой задачи:
http://joomlaforum.ru/index.php/topic,212768.msg1117099.html#msg1117099
Ключевое правило: display: inline-block
Вот тут подробно расписан приём: http://chikuyonok.ru/2011/04/inline-vertical-align/
Вот тут можно посмотреть на моём примере: http://prokat777777.ru/
« Последнее редактирование: 30.07.2012, 21:36:06 от Shustry »
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Re: Выравнивание блоков по высоте
« Ответ #14 : 30.07.2012, 21:34:56 »
Тут и думать нечего - только js.
Вместо того чтобы мудрить со стилями, вставил 10 строк кода в файл и пьешь кофе. Я каждый раз заново пишу такой, но если есть сайт, могу вечером написать универсальное решение вам и себе на будующее. С выравниванием блоков по высоте в каждом ряду отдельно и пересчетом при ресайзе окна.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

Shustry

  • Гуру
  • 6434
  • 745 / 3
Re: Выравнивание блоков по высоте
« Ответ #15 : 30.07.2012, 21:37:53 »
lcd25, я тоже могу это написать на JS. Тут и писать нечего. Зачем, если это одной строкой (display: inline-block) решается?
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Re: Выравнивание блоков по высоте
« Ответ #16 : 30.07.2012, 21:41:46 »
щас, буду читать ..

никуда не уходите! :)
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Выравнивание блоков по высоте
« Ответ #17 : 30.07.2012, 21:45:48 »
lcd25, я тоже могу это написать на JS. Тут и писать нечего. Зачем, если это одной строкой (display: inline-block) решается?
А почему они примут максимальную высоту?
Создание сайтов, шаблонов, помощь в решении проблем.
*

varX

  • Живу я здесь
  • 2467
  • 141 / 5
  • разработка компонентов
Re: Выравнивание блоков по высоте
« Ответ #18 : 30.07.2012, 21:51:08 »
Цитировать
lcd25, я тоже могу это написать на JS. Тут и писать нечего. Зачем, если это одной строкой (display: inline-block) решается?

Не буду спорить, т.к. в данный момент нет времени проанализировать решение. Но если оно универсально и кроссбраузерно, то это очень хорошее решение. Я правда сомневаюсь.
Разработка и ремонт. VirtueMart. JoomShopping. Свои компоненты. Принимаю заявки на plasma-web.ru.
*

dimon888951

  • Захожу иногда
  • 115
  • 24 / 3
Re: Выравнивание блоков по высоте
« Ответ #19 : 30.07.2012, 21:51:45 »
А почему они примут максимальную высоту?
Я вот тоже не пойму...
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Re: Выравнивание блоков по высоте
« Ответ #20 : 30.07.2012, 23:52:55 »
Shustry, спасибо, интересное решение ))

Только оно не выравнивает блоки по высоте, а просто заменяет float и необходимость использовать row-separator
Если, как в примере, использовать пару контент-подвал (header-footer в др. примере), то все равно придется "скотчем" приматывать фоновый рисунок между ними, а если учесть, что он может меняться как по размеру, так и по цвету + рамки/тени (понты, конечно...), то гемор еще тот

Похоже, без js не получится

В общем так:
Родительский div
- в нем строка из нескольких контейнеров-оберток
-- в каждой обертке по рабочему div'у

нужно чтобы эти рабочие блоки были одной высоты - по высоте максимального

row-separator,
следующий ряд тоже самое (имена классов, естественно, такие-же)

На выходе:
универсальный скрипт, который можно вызвать в нужном месте (в пхп-файлах com_content, или модулей)
желательно (но не обязательно), без подгрузки лишних библиотек

Устроит платное решение (в пределах разумного) :)
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Выравнивание блоков по высоте
« Ответ #21 : 31.07.2012, 00:00:03 »
Родительский div
- в нем строка из нескольких контейнеров-оберток
-- в каждой обертке по рабочему div'у

Не совсем понял. На каждый блок есть 2 блока, которые должны быть максимальной высоты?
Создание сайтов, шаблонов, помощь в решении проблем.
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Re: Выравнивание блоков по высоте
« Ответ #22 : 31.07.2012, 00:20:43 »
Код: html4strict
<div class="parent-block-1">
  <div class="wrap-col">
    <div class="work">content</div>
  </div>
  <div class="wrap-col">
    <div class="work">content</div>
  </div>
  ...
</div>
                 <div class="row-separator"></div>

<div class="parent-block-2"> ...

div.work - должны быть одинаковой высоты в контейнере parent-block-1, и parent-block-2

ну в общем, скрипт должен вызываться в цикле, чтобы пересчитывать высоту для каждого ряда

где-то так..
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Выравнивание блоков по высоте
« Ответ #23 : 31.07.2012, 00:30:13 »
Не нужно скрипт.
.wrap-col {display:table-cell; width:33%;position:relative;}
.work {position:absolute; top:0;bottom:0;margin:0 10px; background:#ccc;border-radius:10px;}
Создание сайтов, шаблонов, помощь в решении проблем.
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Re: Выравнивание блоков по высоте
« Ответ #24 : 31.07.2012, 00:31:33 »
Вот один из примеров использования скрипта, который я привел в начале,
в немного подпиленном blog.php
Спойлер
[свернуть]

щас посмотрю,
пока писал уже ответ пришел))
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Re: Выравнивание блоков по высоте
« Ответ #25 : 31.07.2012, 01:09:22 »
Не нужно скрипт.
.wrap-col {display:table-cell; width:33%;position:relative;}
.work {position:absolute; top:0;bottom:0;margin:0 10px; background:#ccc;border-radius:10px;}
в таком виде - не работает ..
Но уже близко! разбираюсь ..
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: Выравнивание блоков по высоте
« Ответ #26 : 31.07.2012, 01:38:43 »
Да. Неправильно. Вот так работает.

.parent-block-1, .parent-block-2 {display:table; border-spacing: 5px;}
.wrap-col{display:table-cell;position:relative;width:30%; border-radius:10px;background:#ccc;}

.work - ничего не надо. position:absolute убрать

P.S. Для .wrap-col border был ненужен. исправил
« Последнее редактирование: 31.07.2012, 01:43:40 от Efanych »
Создание сайтов, шаблонов, помощь в решении проблем.
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Re: Выравнивание блоков по высоте
« Ответ #27 : 31.07.2012, 01:50:28 »
YES!
работает!

Efanych, спасибо огромное :)

это ж сколько теперь всего переделывать ..
напилил)))
« Последнее редактирование: 31.07.2012, 02:06:51 от fbr »
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Re: Выравнивание блоков по высоте
« Ответ #28 : 31.07.2012, 02:24:00 »
Efanych, дивная табличная верстка   ;)  красивое решение  yes!
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

fbr

  • Завсегдатай
  • 1689
  • 211 / 7
Re: Выравнивание блоков по высоте
« Ответ #29 : 31.07.2012, 02:25:51 »
А я таблицами никогда не верстал, теперь отсутствие опыта сказывается ))
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Joomlacomment выравнивание кнопки "отправить комментарий"

Автор lost83

Ответов: 2
Просмотров: 49683
Последний ответ 25.01.2013, 23:33:41
от lost83
Проблема с отображением блоков сайта в Google Chrome

Автор CyberGirl

Ответов: 2
Просмотров: 1548
Последний ответ 01.03.2012, 20:51:46
от CyberGirl
Выравнивание текста по разным краям на одной строке

Автор GoldennVoice

Ответов: 20
Просмотров: 10917
Последний ответ 01.08.2011, 23:18:39
от Shustry
Меню (выпадающий список) с картинками (модуль, выравнивание)

Автор mozhaevde

Ответов: 6
Просмотров: 3464
Последний ответ 18.07.2011, 01:59:38
от Oxlamon
Выравнивание иконки

Автор akhalex38

Ответов: 2
Просмотров: 1522
Последний ответ 22.01.2011, 14:35:34
от akhalex38