Новости 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 Ответов
  • 2808 Просмотров
*

_Baltazar_

  • Новичок
  • 5
  • 0 / 0
Именно такой шаблончик нужен, простой и с слайд шоу, всего думаю страниц 15 будет, и форум.

Или есть подобные готовые.

Уже лет 15 не занимался сайтами, и не очень много времени что бы снова вникать.

Помогите, если это можно не сильно трудно сделать.
*

voland

  • Легенда
  • 11026
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
А что именно нужно?
И да, нагуглил, но не дождался открытия демки..
*

_Baltazar_

  • Новичок
  • 5
  • 0 / 0
3guns.vv.si/


тут конечно, если нажать на кнопку форум, слайд шоу пропадает.  ну и если другие кнопки меню, то слайд шоу тоже пропадает, только на главной странице показывает.

тут, я как понял файл в тему не сбросишь, я бы файлы скинул шаблона.



*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Смотрите настройки модуля. Он похоже привязан к главной странице.
*

_Baltazar_

  • Новичок
  • 5
  • 0 / 0
вот, я и задаю вопрос, в настройках, нет привязки, понятно что по пунктам меню, можно шаблон привязать, но, на главной есть слайд а на всех остальных нет.

пример генерируемого Ф. главной странице, есть такой код

      
 <div id="wrapper-slide">         
 <div id="slide">       
 <div id="slider" class="nivoSlider">       
 <img src="/templates/ashton/images/slide1.jpg" alt="image1" title="Стрелковый Клуб 3Ган Сибирь" />      
 <img src="/templates/ashton/images/slide2.jpg" alt="image1" title="Новосибирск" />         
 <img src="/templates/ashton/images/slide3.jpg" alt="image1" title="Ружье, Карабин, Пистолет" />      
 </div>   
 </div>   
 </div>

а например в странице статьи, его нет

Я не уверен, но

 <?php $menu = JSite::getMenu(); ?>                          
      <?php $lang = JFactory::getLanguage(); ?>                     
      <?php if ($menu->getActive() == $menu->getDefault($lang->getTag())) { ?>                      
      <?php if ($this->params->get( 'slidedisable' )) : ?>                    
      <?php include "slideshow.php"; ?><?php endif; ?>                         
      <?php } ?>                         
          <div id="wrapper">               
            <div id="main<?php echo $width ?>">                                                           
                  <jdoc:include type="component" />


в индех.рнр
 наверное как раз за вывод отвечает?
а вот от куда она берет параметр не показывать на других страницах?

*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Отсюда:
<?php if ($menu->getActive() == $menu->getDefault($lang->getTag())) { ?>   

Закрывающий кусок условия не забудьте только тоже удалить.
*

_Baltazar_

  • Новичок
  • 5
  • 0 / 0
Большое, пребольшое Спасибо.


как, + поставить
*

ntxp

  • Осваиваюсь на форуме
  • 29
  • 0 / 0
Отсюда:
<?php if ($menu->getActive() == $menu->getDefault($lang->getTag())) { ?>   

Закрывающий кусок условия не забудьте только тоже удалить.

Если не трудно, подскажите, пожалуйста, что надо удалить именно, или поменять, чтобы слайдшоу было везде? Я PHP только начинаю изучать, и для меня это тарабащина :( :( :(
Буду премного благодарен :)
*

MPHS

  • Новичок
  • 3
  • 0 / 0
Отсюда:
<?php if ($menu->getActive() == $menu->getDefault($lang->getTag())) { ?>   

Закрывающий кусок условия не забудьте только тоже удалить.

Добрый день! Подскажите, пожалуйста, что именно нужно удалить, чтобы слайдшоу был на всех страницах? Очень прошу :<
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
*

MPHS

  • Новичок
  • 3
  • 0 / 0
Код покажите

код из файла index.php

</div>             
       <?php $menu = JSite::getMenu(); ?>                           
      <?php $lang = JFactory::getLanguage(); ?>
         <?php if ($menu->getActive() == $menu->getDefault($lang->getTag())) { ?>                     
      <?php if ($this->params->get( 'slidedisable' )) : ?>    
      <?php include "slideshow.php"; ?><?php endif; ?>                          
      <?php } ?>                        
          <div id="wrapper">                
            <div id="main<?php echo $width ?>">                                                          
                  <jdoc:include type="component" />
                      <?php echo $modules_component ;?>            
            </div>      

и вот код с файла slideshow.php

<?php    
 $caption1 = $this->params->get("caption1", "Lorem ipsum dolor sit amet.");  
 $caption2 = $this->params->get("caption2", "Whenever i look into your eyes..");  
 $caption3 = $this->params->get("caption3", "You are always on my mind...");
 $image1   =   htmlspecialchars($this->params->get('image1'));
 $image2   =   htmlspecialchars($this->params->get('image2'));
 $image3   =   htmlspecialchars($this->params->get('image3'));
 $slidedisable   = $this->params->get("slidedisable");
 ?>
 
 <div id="wrapper-slide">         
 <div id="slide">        
 <div id="slider" class="nivoSlider">       
 <img src="<?php echo $this->baseurl ?>/<?php echo htmlspecialchars($image1); ?>" alt="image1" title="<?php echo $caption1 ?>" />      
 <img src="<?php echo $this->baseurl ?>/<?php echo htmlspecialchars($image2); ?>" alt="image1" title="<?php echo $caption2 ?>" />         
 <img src="<?php echo $this->baseurl ?>/<?php echo htmlspecialchars($image3); ?>" alt="image1" title="<?php echo $caption3 ?>" />      
 </div>   
 </div>  
 </div>

Благодарю!  !
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Вот начало: <?php if ($menu->getActive() == $menu->getDefault($lang->getTag())) { ?> Это удалить. А закрывающая часть где-то ниже того куска, что привели. Выглядит так: <?php } ?>   
*

MPHS

  • Новичок
  • 3
  • 0 / 0
Вот начало: <?php if ($menu->getActive() == $menu->getDefault($lang->getTag())) { ?> Это удалить. А закрывающая часть где-то ниже того куска, что привели. Выглядит так: <?php } ?>   

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

С шаблоном it_milano 1.13.0

Автор chechelnitskiy

Ответов: 7
Просмотров: 3591
Последний ответ 14.05.2022, 18:25:39
от marksetter
Что надо скачать?

Автор tmpnikl

Ответов: 5
Просмотров: 2340
Последний ответ 20.03.2019, 14:11:09
от draff
Помогите с шаблоном Leo Lingerie

Автор street

Ответов: 4
Просмотров: 1639
Последний ответ 08.06.2017, 18:16:47
от street
С шаблоном как бы магазин

Автор virus_ostr

Ответов: 11
Просмотров: 1934
Последний ответ 28.05.2015, 10:09:06
от vegushka
Нужна помощь с шаблоном!

Автор Tula55

Ответов: 2
Просмотров: 2121
Последний ответ 30.10.2012, 12:59:47
от Morh