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

gordeev

  • Осваиваюсь на форуме
  • 34
  • 0 / 1
Доброго времени суток всем, есть огромная надежда на вас - если не сложно помогите.
В index.php на пол страницы прописаны стили, выглядит это вот так:

Код
<link href="http:// /templates/gk_thenews/css/suckerfish.css" rel="stylesheet"  type="text/css" />
<link href="http:// /templates/gk_thenews/css/template_css.css" rel="stylesheet"  type="text/css" />
<link href="http:// /templates/gk_thenews/css/joomla_classes.css" rel="stylesheet"  type="text/css" />
<link href="http:// /templates/gk_thenews/css/gk_stuff.css" rel="stylesheet"  type="text/css" />
<!--[if IE 6]>
<link href="http:// /templates/gk_thenews/css/ie6_css.css" rel="stylesheet" type="text/css" />
<style type="text/css">
#logo {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/logo.png", sizingMethod="crop");}
a.readon-red{
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/readonredbg.png", sizingMethod="scale");
}
a.readon,
.back_button a{
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/readonbg.png", sizingMethod="scale");
}
.shadow-top  {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/shadow-top.png", sizingMethod="scale");}
.shadow-bottom  {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/shadow-bottom.png", sizingMethod="scale");}
a.gk_news_image_next {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/gk_stuff/next.png", sizingMethod="crop");}
a:hover.gk_news_image_next {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/gk_stuff/next-h.png", sizingMethod="crop");}
a.gk_news_image_prev {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/gk_stuff/prev.png", sizingMethod="crop");}
a:hover.gk_news_image_prev {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/gk_stuff/prev-h.png", sizingMethod="crop");}
a.gk_news_image_play {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/gk_stuff/play.png", sizingMethod="crop");}
a:hover.gk_news_image_play {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/gk_stuff/play-h.png", sizingMethod="crop");}
a.gk_news_image_pause {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/gk_stuff/pause.png", sizingMethod="crop");}
a:hover.gk_news_image_pause {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/gk_stuff/pause-h.png", sizingMethod="crop");}
div.gk_news_image_tb_prev {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/gk_stuff/s_prev.png", sizingMethod="crop");}
div.gk_news_image_tb_prev:hover {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/gk_stuff/s_prev-h.png", sizingMethod="crop");}
div.gk_news_image_tb_next {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/gk_stuff/s_next.png", sizingMethod="crop");}
div.gk_news_image_tb_next:hover {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="http:// /templates/gk_thenews/images/gk_stuff/s_next-h.png", sizingMethod="crop");}
</style>
<![endif]-->
<!--[if IE 7]>
<link href="http:// /templates/gk_thenews/css/ie7_css.css" rel="stylesheet" type="text/css" />
<![endif]-->

причем как я понимаю стили для IE7 выведены в отдельный файл нормально, а вот что делать с кодом выше не знаю, подскажите, как мне правильно вынести все это в отдельный файл   .css без появления проблем с дизайном. Пробовал выносить эти стили сам (и в отдельно созданный файл и пробовал дополнять ie6.css - в опере, мозиле все - ок, экплорер естественно нет - плывет дизайн логотипа, появляются не родные цвета в частности белый.) Помогите кто может. Далее за этим кодом идет ява, но с ним я вроде разобрался-вынес в отдельный файл без пробл.

PS. Дорабатываю сам для себя после "специалистов" - в связи с этим еще один вопрос - где можно оставить негативный отзыв на тех кто криво ставит Joomla и берет эа это нормальные деньги?

*

poizon

  • Захожу иногда
  • 495
  • 187 / 1
  • Buu
в целом сделано вполне нормально, но вот альфа фильтры я бы вынес в отдельный файл.
А минус за это ставьте тем, кто сделал этот шаблон.
P.S это не Ваши "специалисты" наберите в гугл "gk_thenews"
*

yunoshev

  • Завсегдатай
  • 1271
  • 179 / 1
Проблем с выносом быть не должно совершенно.
1. Значит, вам в указанный в коде файл ie6_css.css нужно вставить весь следующий код:
Код
#logo {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/logo.png", sizingMethod="crop");}
a.readon-red{
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/readonredbg.png", sizingMethod="scale");
}
a.readon,
.back_button a{
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/readonbg.png", sizingMethod="scale");
}
.shadow-top  {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/shadow-top.png", sizingMethod="scale");}
.shadow-bottom  {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/shadow-bottom.png", sizingMethod="scale");}
a.gk_news_image_next {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/next.png", sizingMethod="crop");}
a:hover.gk_news_image_next {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/next-h.png", sizingMethod="crop");}
a.gk_news_image_prev {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/prev.png", sizingMethod="crop");}
a:hover.gk_news_image_prev {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/prev-h.png", sizingMethod="crop");}
a.gk_news_image_play {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/play.png", sizingMethod="crop");}
a:hover.gk_news_image_play {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/play-h.png", sizingMethod="crop");}
a.gk_news_image_pause {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/pause.png", sizingMethod="crop");}
a:hover.gk_news_image_pause {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/pause-h.png", sizingMethod="crop");}
div.gk_news_image_tb_prev {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/s_prev.png", sizingMethod="crop");}
div.gk_news_image_tb_prev:hover {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/s_prev-h.png", sizingMethod="crop");}
div.gk_news_image_tb_next {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/s_next.png", sizingMethod="crop");}
div.gk_news_image_tb_next:hover {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/s_next-h.png", sizingMethod="crop");}

2. В index.php после
Код
<link href="http:// /templates/gk_thenews/css/ie6_css.css" rel="stylesheet" type="text/css" />
удалить все до
Код
<![endif]-->
.

Должно усе пойтить... :)
*

yunoshev

  • Завсегдатай
  • 1271
  • 179 / 1
а кому пожаловаться на недобросовестных заказчиков? сделал сайт и 2 недели бегаю за ними, прошу посмотреть... это мне нужен сайт или им? :)
*

gordeev

  • Осваиваюсь на форуме
  • 34
  • 0 / 1
такой полезный пост - решает все мои траблы!  ;D

истерика.....кто-то может помочь реально?
*

gordeev

  • Осваиваюсь на форуме
  • 34
  • 0 / 1
ааа блин тупо не открыл все окно ..сорри не увидел решения -сейчас буд смотреть-пасиб..
*

gordeev

  • Осваиваюсь на форуме
  • 34
  • 0 / 1
парадокс - все работает но в эксплорере пропал логотип, но в опере и мозиле все ок...пробую решать правда уже глаза липнут друг к другу..(((
если есть идеи подскажите плиз..
*

gordeev

  • Осваиваюсь на форуме
  • 34
  • 0 / 1
кстати рекомендованное решение надеюсь понял правильно - просто вставил весь указанный код в указанное место сверху того что уже было получилось вот так

Код
#logo {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/logo.png", sizingMethod="crop");}
a.readon-red{
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/readonredbg.png", sizingMethod="scale");
}
a.readon,
.back_button a{
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/readonbg.png", sizingMethod="scale");
}
.shadow-top  {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/shadow-top.png", sizingMethod="scale");}
.shadow-bottom  {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/shadow-bottom.png", sizingMethod="scale");}
a.gk_news_image_next {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/next.png", sizingMethod="crop");}
a:hover.gk_news_image_next {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/next-h.png", sizingMethod="crop");}
a.gk_news_image_prev {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/prev.png", sizingMethod="crop");}
a:hover.gk_news_image_prev {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/prev-h.png", sizingMethod="crop");}
a.gk_news_image_play {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/play.png", sizingMethod="crop");}
a:hover.gk_news_image_play {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/play-h.png", sizingMethod="crop");}
a.gk_news_image_pause {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/pause.png", sizingMethod="crop");}
a:hover.gk_news_image_pause {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/pause-h.png", sizingMethod="crop");}
div.gk_news_image_tb_prev {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/s_prev.png", sizingMethod="crop");}
div.gk_news_image_tb_prev:hover {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/s_prev-h.png", sizingMethod="crop");}
div.gk_news_image_tb_next {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/s_next.png", sizingMethod="crop");}
div.gk_news_image_tb_next:hover {
background: none;
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="../images/gk_stuff/s_next-h.png", sizingMethod="crop");}
div#search {
right: 16px;
top: 162px;
}
div#contentwrap {
margin-top: -15px;
}
div.us_1-left, div.us_1-right, div.us_1-center, div.us_2-left, div.us_2-right, div.us_2-center, div.us_3-left, div.us_3-right, div.us_3-center, div.us_4-left, div.us_4-right, div.us_4-center {
overflow: hidden;
}
div.gk_news_image_tb_prev, div.gk_news_image_tb_next {
margin-top: 30px;
}
#user_position-1, #user_position-4 {
position: relative;
background: #000;
height: 100%;
}
a.readon,
a.readon-red{
margin-right: -2px;
color: #fff;
}
.contentheading-red{
padding-top: 11px;
}
a.readon,
a.readon-red {
line-height: 18px;
}

div#search {
top: 163px;
margin-right: -11px;
}
div#user_position-1 img{
float: left;
}
div.moduletable-black1 h3{
padding-top: 7px;
}
div.moduletable-black1.color-white h3{
padding-bottom: 5px;
}
a.readon:visited{
color: #fff;
}
div.back_button a:visited,
a.readon-red:visited,
a.readon:visited{
color: #fff;
}
#poller ul{
padding-bottom: 20px;
}
#poller ul li{
background: none;
width: 270px;
float: left;
margin-bottom: -10px;
}
#poller ul li label{
display: block;
float: right;
width: 240px;
padding-left: 5px;
}

div.moduletable-black2.advert h3{
padding-bottom: 8px;
}



все правильно?
*

yunoshev

  • Завсегдатай
  • 1271
  • 179 / 1
все правильно но если не идет то пропишите полный путь к картинкам
*

gordeev

  • Осваиваюсь на форуме
  • 34
  • 0 / 1
да, помогло-спасибо огромное!!!

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

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

Код
1	           MOS Image 	 	  	  	 	Public 	content 	mosimage 
2 Legacy Mambot Includer Public content legacybots
3 Code support Public content moscode
4 SEF            Public content mossef
5 MOS Rating Public content mosvote
6 Email Cloaking Public content mosemailcloak
7 Load Module Positions Public content mosloadposition
8 MOS Pagination     Public content mospaging
9 No WYSIWYG Editor   Public editors none
10 TinyMCE WYSIWYG Editor Public editors tinymce
11 MOS Image Editor Button             Public editors-xtd mosimage.btn
12 MOS Pagebreak Editor Button Public editors-xtd mospage.btn
13 Search Content   Public search content.searchbot
14 Search Weblinks Public search weblinks.searchbot
15 Search Contacts Public search contacts.searchbot
16 Search Categories Public search categories.searchbot
17 Search Sections Public search sections.searchbot
18 Search Newsfeeds

и что еще можно предпринять для улучшения загрузки сайта - предпринять без существенных знаний?
*

yunoshev

  • Завсегдатай
  • 1271
  • 179 / 1
на эту тему есть топик от physicist
*

gordeev

  • Осваиваюсь на форуме
  • 34
  • 0 / 1
это тот что описал оптимизацию?
оптимизация черновик-эта ветка?
если да,я не увидел там описания того, какие мамботы можно потереть-если нет подскажи плиз где это, дай ссылку..
*

yunoshev

  • Завсегдатай
  • 1271
  • 179 / 1
да этот топик, нужно читать всё.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как вставить свой CSS в общий файл CSS шаблона Yootheme?

Автор Lemonez

Ответов: 16
Просмотров: 1976
Последний ответ 21.01.2021, 05:11:58
от Lemonez
helix 3 не могу заставить работать position: sticky;

Автор platonische

Ответов: 0
Просмотров: 2249
Последний ответ 04.01.2020, 16:01:16
от platonische
Не могу вывести картинку нужно размера

Автор stonehand

Ответов: 3
Просмотров: 1564
Последний ответ 22.03.2019, 21:55:29
от sivers
Файл CSS сбрасывает на значения по умолчанию

Автор UN_Tony

Ответов: 4
Просмотров: 1607
Последний ответ 20.09.2018, 14:15:17
от UN_Tony
Не могу найти где закодирован цвет

Автор olderman

Ответов: 2
Просмотров: 1844
Последний ответ 15.12.2016, 11:50:58
от darkghost