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

Zeya

  • Захожу иногда
  • 177
  • 0 / 0
Здравствуйте! ^-^
 Помогите отладить самодельный шаблон, пожалуйста:

В php шаблона прописано:
Код
<?php

if($this->countModules('left') == 0) $contentwidth = "100";

if($this->countModules('left') == 1) $contentwidth = "70";

?>
Правый блок отображается только на главной. Как сделать, чтоб левое поле не отображалось на других страницах, а правое растягивалось на всю ширину?
Помогите, очень прошу! !
« Последнее редактирование: 18.06.2012, 20:59:09 от _ib_ »
*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
Я делаю простым дедовским способом:
Код
    <?php if($this->countModules('left or right')) : ?>
        <style type="text/css">
    <?php if ($this->countModules('left')): ?>
                #contentWrap{margin: 0 0 0 279px;}
            <?php endif; ?>
    <?php if ($this->countModules('right')): ?>
                #contentWrap{margin: 0 279px 0 0;}
            <?php endif; ?>
        </style>
    <?php endif; ?>
*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
Где #contentWrap по умолчанию имеет width:auto;
*

Zeya

  • Захожу иногда
  • 177
  • 0 / 0
al-teen, спасибо за ответ!
Я в php не сильна, переделала под свой шаблон:
Код
<?php if($this->countModules('left or content')) : ?>
        <style type="text/css">
   <?php if ($this->countModules('left')): ?>
                #contentWrap{margin: 0 0 0 223px;}
            <?php endif; ?>
   <?php if ($this->countModules('content')): ?>
                #contentWrap{margin: 0 223px 0 0;}
            <?php endif; ?>
        </style>
    <?php endif; ?>
Почему-то не работает! Есть идеи, почему?
« Последнее редактирование: 03.06.2012, 22:07:22 от Zeya »
*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
Свой шаблон покажите. Приложите с сообщением
*

Zeya

  • Захожу иногда
  • 177
  • 0 / 0
воть

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

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
Шаблон, а не скриншот шаблона. Папочку с ним из папки templates/  Я по фотографии гадать не умею.  ;D

P.S. сразу все анекдоты про блондинок вспомнил  :laugh:
*

Zeya

  • Захожу иногда
  • 177
  • 0 / 0
каким образом? сжимаю файлы шаблона, архив получается слишком большой
*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
1) Выкладываете сюда
2) Даете ссылку на выложенный файл в тему
*

Zeya

  • Захожу иногда
  • 177
  • 0 / 0
http://rghost.ru/38458778

P.S. сразу все анекдоты про блондинок вспомнил  :laugh:
Вы мне льстите!)))

http://rghost.ru/38458778
*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
Прочтите внимательно тему и темы по ссылкам из нее. Не хорошо ставить шаблон от 1.5 в версию 2.5. Выше я дал лишь образец, а не готовый, написанный за Вас код. Вы бы хоть стили на свои исправили что ли.

Забирайте Вашего пациента, поправил малость, дальше сами.

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

Zeya

  • Захожу иногда
  • 177
  • 0 / 0
al-teen, спасибо!
*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
Пожалуйста
*

Taatshi

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

Zeya

  • Захожу иногда
  • 177
  • 0 / 0
Taatshi, конечно! ;) Я так-то не ушла отсюда навсегда и всегда благодарна всем, кто помогает! Вчера просто уже мозги не фурычили, чесслово... ::)
al-teen, спасибо большое Вам еще раз! :-*
*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
*

Zeya

  • Захожу иногда
  • 177
  • 0 / 0
Разобралась с адаптацией шаблона, спасибо большое!
Но теперь не получается растягивающееся на всю ширину, при отключенном левом блоке, поле контента. Таблицы в Joomla 2.5 не используются? Делать все на ДИВах?
*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
Что есть "на всю ширину"? В том коде, что я дал он тянется на ширину рабочей области шаблона. Если требуется "резиновый" шаблон, то делайте ширину страницы 100%
*

Taatshi

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

Zeya

  • Захожу иногда
  • 177
  • 0 / 0
al-teen, дело в том, что графика нужно разбить на куски, чтоб повторялась средняя часть блока:


Напоминаю: левый блок на других страницах будет отключен, для этого и нужно растягивание контента.
наветрное, нужно DIV-ами делать и расположение DIV-ов пэддингами и флоатом устанавливать?
*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
Саш, а валидатор не ругается? Не проще вывести дивы с классами, а классам уже потом ширину в CSS задать?
Валидатор не ругается. Обычный вынос стилей. Не делаю отдельный файл потому что это лишний запрос.
al-teen, дело в том, что графика нужно разбить на куски, чтоб повторялась средняя часть блока:


Напоминаю: левый блок на других страницах будет отключен, для этого и нужно растягивание контента.
наветрное, нужно DIV-ами делать и расположение DIV-ов пэддингами и флоатом устанавливать?

Именно ими. Плюс еще и позиционирование фоновых картинок. Аля background-position: top right;(0 100%)
*

Zeya

  • Захожу иногда
  • 177
  • 0 / 0
al-teen, спасибо!

Попробовала вывести верхнюю часть, но середина почему-то повторяется до конца поля и справа, а правый кусок смешается вниз...

Может, подскажите, что не так в коде:
index:
Код
<!--вывод содержимого контента-->
<div><div id="mh1">1</div><div id="main_header">2</div><div id="mh2">3</div></div>
<div id="main_fon"><jdoc:include type="component" style="xhtml" />4</div>
<div><div id="mb1">5</div><div id="main_bottom">6</div><div id="mb2">7</div></div>
</div>

css:
Код
#mh1{
background: url(../images/mh1.png) no-repeat;
width:25px;
height: 41px;
float:left;
padding:10px 0 0 35px;
margin: 0 0 0 35px;
}
#main_header{
background: url(../images/main_header.png) repeat-x;
width:100%;
height: 41px;
margin: 10px 0 0 0;

}
#mh2{
background: url(../images/mh2.png) no-repeat;
background-position: top right;(0 100%)
width:19px;
height: 41px;
padding:30px 35px 0 0;

float:right;

« Последнее редактирование: 18.06.2012, 20:58:50 от _ib_ »
*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
*

Zeya

  • Захожу иногда
  • 177
  • 0 / 0
al-teen, очень сильно благодарю за подсказку! ;)
*

Zeya

  • Захожу иногда
  • 177
  • 0 / 0
Добрый вечер!
Совершенно запуталась с версткой!
Применила для элемента 1 абсолютное позиционирование, растягивается как нужно, но на главной почему-то элемент 2 и поле 4 продолжаются за левое поле...
И как указать расположение аналогичных нижних элементов, если поле вниз будет растягиваться в зависимости от контента?


Помогите, пожалуйста!

*

al-teen

  • Глобальный модератор
  • 2385
  • 224 / 10
  • im
Там не нужно никакого абсолютного позиционирования.
http://rghost.ru/private/38560177/894e634b2d08fb62f17db11280cfb652
Сделайте свою верстку валидной, тем избавитесь от большинства проблем.
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Я делаю простым дедовским способом:
Код
    <?php if($this->countModules('left or right')) : ?>
        <style type="text/css">
   <?php if ($this->countModules('left')): ?>
                #contentWrap{margin: 0 0 0 279px;}
            <?php endif; ?>
   <?php if ($this->countModules('right')): ?>
                #contentWrap{margin: 0 279px 0 0;}
            <?php endif; ?>
        </style>
    <?php endif; ?>
Я примерно так же, но без стилей в теле:
Код: php
if($this->countModules('left')) {
   $pleft = ' p-left';
}
if($this->countModules('right')) {
   $pright = ' p-right';
}
?>
<div id="contentWrap" class="p-cont<?php echo $pleft.$pright; ?>">...
И запиливаю в файлы стилей:
Код: css
.p-left {padding-left:220px;}
.p-right {padding-right:220px;}
*

Zeya

  • Захожу иногда
  • 177
  • 0 / 0
Одолела блок контента!  ^-^ ;)
Код
.main_header{
margin-left: 35px;
margin-right: 35px;
margin-top: 10px;
overflow:hidden;
background: url(../images/mh1.png) no-repeat left top,
 url(../images/mh2.png) no-repeat right top,
 url(../images/mb1.png) no-repeat left bottom,
 url(../images/mb2.png) no-repeat right bottom;
}

.main_top {
height: 41px;
margin-left: 25px;/*На размер картинки угла*/
margin-right: 19px;/*На размер картинки угла*/
background: url(../images/main_header.png) repeat-x;

}

.main_fon {
background: url(../images/main_fon.png) repeat;

}

.main_bottom {
height: 23px;
margin-left: 16px;/*На размер картинки угла*/
margin-right: 19px;/*На размер картинки угла*/
background: url(../images/main_bottom.png) repeat-x;

}

Код
<!--вывод содержимого контента-->
<div><div class="main_header">
    <div class="main_top"></div>
    <div class="main_fon"><jdoc:include type="component" style="xhtml" /></div>
    <div class="main_bottom"></div>
</div>

« Последнее редактирование: 09.06.2012, 23:18:49 от Zeya »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Классический шаблон Rhuk Milkyway для Joomla 1.6/1.7/2.5/3.0

Автор v-idea

Ответов: 36
Просмотров: 23507
Последний ответ 13.03.2016, 14:56:49
от andryws
Проблема со шрифтами в Yoo Cloud

Автор SaggyA

Ответов: 2
Просмотров: 1520
Последний ответ 03.03.2016, 16:41:50
от SaggyA
Скрыть кнопки в шаблоне от всех кроме адми

Автор kav

Ответов: 9
Просмотров: 1709
Последний ответ 21.01.2016, 10:32:21
от AlekVolsk
Перенесено: Вывод в шапке картинки ?

Автор Shustry

Ответов: 0
Просмотров: 1439
Последний ответ 10.08.2015, 12:53:03
от Shustry
Шаблон Leo-Sport от разработчиков LeoTheme

Автор Gig

Ответов: 2
Просмотров: 1570
Последний ответ 26.07.2015, 09:12:28
от Gig