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

ljosha

  • Захожу иногда
  • 122
  • 0 / 0
Коллеги, столкнулся со следующей проблемой. Я правил файл template.css и сделал рамку для картинок.
 
Код
#content img {border: 1px solid #ccc; padding: 7px;margin:0 5px 5px 0 }
Но цель была та, чтобы обрамлялись рамкой лишь те картинки, которые находятся в новостях. А стали обрамляться еще и те которые в модулях. Как сделать так чтобы обрамлялись только картинки в материалах?

спасибо
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Вопрос по стилям в шаблоне
« Ответ #1 : 05.10.2011, 21:58:58 »
Видимо те картинки, что в модулях, в рамках DOM находятся внутри объекта с ID content
Решение - необходимо выделить содержимое определенного объекта либо исключить, если внутри content находятся объекты с явно выраженными классами.
Но цель была та, чтобы обрамлялись рамкой лишь те картинки, которые находятся в новостях.
Посмотрите внимательней исходный код, новости обрамляются отдельным дивом обычно
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

ljosha

  • Захожу иногда
  • 122
  • 0 / 0
Re: Вопрос по стилям в шаблоне
« Ответ #2 : 05.10.2011, 22:04:45 »
Видимо те картинки, что в модулях, в рамках DOM находятся внутри объекта с ID content
Решение - необходимо выделить содержимое определенного объекта либо исключить, если внутри content находятся объекты с явно выраженными классами.Посмотрите внимательней исходный код, новости обрамляются отдельным дивом обычно
Честно говоря, не все понял, что вы хотели мне объяснить. Вот код template.css
Код
body {
background: #fff;
margin: 0;
}


/*text elements*/
a:link, a:hover, a:active, a:visited {
color: #3c5ea2;
}
h1 {
font-family: Calibri, arial;
color: #fff;
font-style: italic;
margin-left: 250px;
margin-top: 20px;
font-size: 27px;
}
h1 span {
color: #fff;
display: block;
font-size: 13px;
}
h2 {
font-family: Trebuchet MS;
}
p {
color: #000;
font-size: 12px;
}


/*позиции*/

.left {
float: left;
width: 230px;
}
.right {
float: right;
width: 260px;
display: block;
}

.user2 {
float: right;
width: 260px;
display: block;
margin: 30px 0 0 0;
}

.center60 {
margin: 0 270px 0 0;;
display: block;
}

.moduletable-crumb{

}

.center80 {
overflow:hidden;
padding-right:0px;
margin-right:20px;
}
.center100 {
float:left;
width:98%;
overflow:hidden;
padding-right:0px;
margin-left:1%;
}
.visible {
display: block !important;
}
.last {margin: 0 !important}



/*Поиск*/
#mod_search_searchword {
    background: none repeat scroll 0 0 #FFFFFF;
    border-radius: 10px 10px 10px 10px;
    opacity: 0.8;
border:0px;
width: 225px;
height: 23px;
padding-left: 10px;
}
.searchbut{
    position: absolute;
    right: 10px;
    top: 3px;
}


/*forms*/
form {
display: block;
margin-top: 0;
position: relative;
left: -2px;
}
input.i_text {
font-size: 13px;
color: #000;
}
/***PAGE***/
#content {
min-width: 950px;
margin: 0 auto;
padding: 0 30px;
}

.lenta li {background:transparent url(../images/star3.png) no-repeat; font-size: 12px; padding-left:13px}

.createdate {font-size:11px; color:#666}



#searchForm {
margin-left:230px;
}
/***HEADER***/
#header {
background: #8badf5 url("../i/header.jpg") no-repeat top right;
margin-bottom: 20px;
height:168px;
}
#header .indent {
padding: 20px 10px 10px 30px;
}

#header .logo {
width: 156px;
height: 109px;
background: url("../i/logo.png") no-repeat;
float: left;
}
#header .logo a {
display: block;
width: 156px;
height: 109px;
text-indent: -10000px;
}
#header .small_top_nav {
float: left;
clear: left;
width: 156px;
text-align: center;
margin-top: 10px;
padding:0;
}

#header .small_top_nav li {
        display: inline-block;
margin-right: 10px;
       

}
#header .small_top_nav li a {
display: block;
width: 12px;
height: 10px;
background: url('../i/icons.gif') no-repeat;
}
#header .small_top_nav li.home a {
background-position: 0 0;
}
#header .small_top_nav li.map a {
background-position: -16px 1px;
}
#header .small_top_nav li.mail a {
background-position: -35px 1px;
}

/*Поиск*/
#header .search{
    bottom: 0;
    display: block;
    float: right;
    position: relative;
}
/*оформление блока поиска*/
#user1 input {
background:url('../i/search.png') no-repeat;
font:11px Arial;
color:#000;
opacity: 0.8;
}


/*оформление главного меню с суффиксом -menu*/
.moduletable-menu {
width:200px;
margin-bottom:30px;

}
/*оформление заголовка меню */
.moduletable-menu h3{
font: bold 12px Arial, Helvetica, sans-serif;
padding:5px 0 5px 0;
border:5px solid #b2d1d7;
color:#fff;
background-color:#3b98b0;
}
/*оформление блока списка в меню */
.moduletable-menu ul li {
    background: none repeat scroll 0 0 #3C5EA2;
    color: #FFFFFF;
    font-family: Trebuchet MS;
    font-size: 12px;
    margin-bottom: 5px;
    padding: 2px 13px;
}

/*оформление блока ссылки в меню*/
.moduletable-menu ul li a {
    color: #FFFFFF;
    font-family: Trebuchet MS;
    text-decoration: none;
}
/*конец оформления меню*/

/*баннеры*/
.left .adv_box {
width: 210px;
text-align: center;
}
.left .adv_box img {
display: inline-block;
margin-bottom: 20px;
}

/*Center*/


/*общие модули и компоненты*/
/*заголовки компонентов*/
.componentheading {
font:bold 22px Arial, Helvetica, sans-serif ;
color:#fff;
text-align:center;
background-color:#e64519;
border:3px double #fff;
margin-bottom:5px;
padding:3px;
margin-top:5px;
margin-left:225px;
display:none;
}

/*оформление кнопок в модулях*/
.button,input.button,button.validate  {
background:#e64519;
height:30px;
font-size:12px;
color:#fff;
margin:2px;
padding:2px 10px 2px 10px;
cursor:hand;
}

/*оформление  модулей*/
.moduletable,.moduletable_custom {
    margin: 0 0 25px 15px;
    width: 245px;
}

/* оформление заголовков модулей */
.moduletable h3,.moduletable_custom h3 {
    background: none repeat scroll 0 0 #3C5EA2;
    color: #FFFFFF;
    font-size: 15px;
    font-weight: normal;
    margin-bottom: 15px;
    padding: 5px 8px;
}

/*форматирование списков во всех модулях*/
.moduletable ul li, .moduletable_custom ul li, .moduletable_bot ul li   {
    margin: 0.5em;
  background: url('../images/img_red1.gif') no-repeat;
line-height: 1.5em;
list-style:none;
}

.moduletable ul, .moduletable_custom ul, .moduletable_bot ul{
  color: #000;
  margin:0.2em;
  padding: 0;
  font-size: 12px;
}

.moduletable li ul, .moduletable_custom li ul,.moduletable_bot li ul {
  margin: 0.5em;
  padding: 0;
}

/*оформление колонок материлов*/
.article_column{
padding-left:10px;
}


/*оформление текстов статей*/
.contentpaneopen {
background-color:#fff;
padding:0px;
line-height: 1.2;
text-align:justify;
margin-top:10px;
 }
 
table.contentpaneopen {

}

#content  p {margin-bottom:7px;line-height:1.0em !important}
#content img {border: 1px solid #ccc; padding: 7px;margin:0 5px 5px 0 }

/*оформление кнопки "читать далее"*/
.readon {margin-top:1px;display:block;float:left;font-style:oblique; color:#ABABAB;
font-weight:bold;margin-top:5px;line-height:14px;font-size:11px;text-decoration:none;border-bottom:dotted 1px #ABABAB;}
/*оформление списков в статьях*/
.contentpaneopen ul {
padding:10px 0 10px 20px;
list-style-image:url('../images/img_green1.gif');
}

/*оформление заголовка материала*/
.contentheading {
    color: #3C5EA2;
    font-size: 15px;
    margin-bottom: 10px;
font-weight: bold;
}
/*оформление текста заголовка материала*/
.contentheading a {
text-decoration:none;
font-family: Trebuchet MS;
}
 
.contentpaneopen li {
padding-bottom:10px;
}

.contentpaneopen ol {
margin:20px;
list-style-type:decimal;
}

/*правый баннер*/
img.pic_adv{
float: none;
margin-top: 10px;
margin-left: 15px;
display:block;
}

/***footer***/
#footer {
margin-top: 30px;
position: relative;
background: #3c5ea2;
}
#footer .indent {
padding: 30px 45px;
}
#footer p a {
color: #fff
}
#footer p.copyright {
font-size: 12px;
color: #fff;
line-height: 140%;
}

/***footer***/

/*оформление модулей newsflash*/
/*модуль преподаватели*/
.nfimages{
padding-right:8px;
float:left;
}
.nftitle{
   
    font-size: 14px;
    font-weight: bold;
   
}
.nftitle a{
    color: #4E4E4E;
   
   
    text-decoration: none;
}
.nfcontent{
}
/*модуль анонсы datenews*/
.date{
color: #4E4E4E;
font-weight:bold;
font-size: 11px;
}

.latestnews a{
color: #4E4E4E;
font-size: 11px;
line-height: 1.1;

}


/***fix boxes***/
.clearfix:after {
    clear: both;
    content: ".";
    display: block;
    height: 0;
    visibility: hidden;
}
.clearfix {
    display: block;
}


* HTML .clearfix {
    height: 1%;
}

*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Вопрос по стилям в шаблоне
« Ответ #3 : 05.10.2011, 22:10:22 »
Нет, дайте адрес страницы с указанием картинок, которые должны по другому обрамляться, нежели те что в модулях
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

ljosha

  • Захожу иногда
  • 122
  • 0 / 0
Re: Вопрос по стилям в шаблоне
« Ответ #4 : 05.10.2011, 22:11:42 »
Нет, дайте адрес страницы с указанием картинок, которые должны по другому обрамляться, нежели те что в модулях
http://n.eurocollege.ru
обрамляться должны исключительно те, которые находятся в материалах, а не все которые есть на странице (в модулях)
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Вопрос по стилям в шаблоне
« Ответ #5 : 05.10.2011, 22:14:50 »
Ну конечно, content - это почти вся оболочка сайта
Попробуйте вот так
Код: css
.blog img {border: 1px solid #ccc; padding: 7px;margin:0 5px 5px 0 }
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

ljosha

  • Захожу иногда
  • 122
  • 0 / 0
Re: Вопрос по стилям в шаблоне
« Ответ #6 : 05.10.2011, 22:19:23 »
Ну конечно, content - это почти вся оболочка сайта
Попробуйте вот так
Код: css
.blog img {border: 1px solid #ccc; padding: 7px;margin:0 5px 5px 0 }

Супер, все получилось. Но когда открываешь сам материал, рамки пропадают, а хочется чтобы они присутствовали и внутри статей!
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Вопрос по стилям в шаблоне
« Ответ #7 : 05.10.2011, 22:27:05 »
Супер, все получилось. Но когда открываешь сам материал, рамки пропадают, а хочется чтобы они присутствовали и внутри статей!
Тогда замените код на следующий
Код: css
.contentpaneopen img {border: 1px solid #ccc; padding: 7px;margin:0 5px 5px 0 }

P.S. Mozilla и FireBug + неделя на изучение хтмл и наследования стилей вложенными элементами избавят вас от миллиона вопросов
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

ljosha

  • Захожу иногда
  • 122
  • 0 / 0
Re: Вопрос по стилям в шаблоне
« Ответ #8 : 05.10.2011, 22:33:09 »
Тогда замените код на следующий
Код: css
.contentpaneopen img {border: 1px solid #ccc; padding: 7px;margin:0 5px 5px 0 }

P.S. Mozilla и FireBug + неделя на изучение хтмл и наследования стилей вложенными элементами избавят вас от миллиона вопросов

Спасибо огромное, получилось. Если бы не диплом, сел бы прямо сейчас. И последний вопрос, если будет возможность тоже помогите с кодом
Я сделал отступы между абзацами этим кодом:
Код
#content  p {margin-bottom:7px;line-height:1.0em !important}
и опять же он применялся по всей странице втч в модулях, а как сделать чтобы он применялся так же как и рамка к картинкам (т.е только к материалам)
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: Вопрос по стилям в шаблоне
« Ответ #9 : 05.10.2011, 22:35:17 »
Я сделал отступы между абзацами этим кодом:
Код
#content  p {margin-bottom:7px;line-height:1.0em !important}
и опять же он применялся по всей странице втч в модулях, а как сделать чтобы он применялся так же как и рамка к картинкам (т.е только к материалам)
Аналогично
Код: css
.contentpaneopen p {margin-bottom:7px;line-height:1.0em !important}
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

ljosha

  • Захожу иногда
  • 122
  • 0 / 0
Re: Вопрос по стилям в шаблоне
« Ответ #10 : 05.10.2011, 22:37:37 »
Аналогично
Код: css
.contentpaneopen p {margin-bottom:7px;line-height:1.0em !important}

Вы гений, спасибо огромное еще раз! Плюсанул)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как создать новый блок в шаблоне?

Автор moov

Ответов: 7
Просмотров: 9137
Последний ответ 17.12.2018, 14:08:12
от arma
Вопрос по добавлению тега в МЕНЮ j 1.5

Автор berTalino

Ответов: 12
Просмотров: 5898
Последний ответ 29.03.2017, 16:20:43
от berTalino
Поменять цвет блоков в шаблоне

Автор nuon

Ответов: 7
Просмотров: 5699
Последний ответ 10.01.2016, 23:11:34
от nuon
Ребят - В шаблоне Default

Автор Djaga

Ответов: 4
Просмотров: 2950
Последний ответ 10.12.2015, 08:01:47
от Djaga
Замена фона в шаблоне Joomla

Автор Jons$

Ответов: 7
Просмотров: 12736
Последний ответ 12.10.2015, 15:49:09
от darkghost