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

srg777

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Проблема со шрифтами
« : 12.07.2012, 14:20:03 »
Такая проблема. Купил хороший шаблон. В шаблоне используется Google web-шрифт Lobster. Я посмотрел, этот шрифт имеет и кирилличный набор символов.
Однако, в шаблоне русские буквы показываются стандартным шрифтом шаблона, а английские буквы шрифтом Лобстер.
Служба поддержки пока что мою проблему решить не может. Отзываются они быстро, но пока решения нет.

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

Я никогда не пользовался гугловскими веб-шрифтами. Но решил попробовать, что это и как это. И когда я выбрал этот Лобстер на гугле, то при нажатии на кнопку USE мне предложили указать галочками, какой набор символов я хочу использоваться. Среди выбора был кирилличный набор и латинский.
Могло ли быть так, что автор шаблона при использовании гугловского веб-шрифта просто-напросто не выбрал кирилличный набор символов, поэтому кириллица этим шрифтом и не показывается?

Может еще какие-то идеи. А лучше предложения от знающих людей.
Спасибо.
*

Ragivort

  • Завсегдатай
  • 1156
  • 58 / 2
  • Такая Life
Re: Проблема со шрифтами
« Ответ #1 : 12.07.2012, 15:41:59 »
Если в Google, у этого шрифта есть кириллица, то подключите его, у вас латиница подключена. Зайдите на гуглфонтс, найдите шрифт и там будет коды для вставки
Дозволь мне свершить то добро, которое я способен свершить, теперь, ибо я могу более не вернуться сюда.
*

srg777

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Re: Проблема со шрифтами
« Ответ #2 : 12.07.2012, 21:26:41 »
еще бы разобраться куда вставлять код.

Вот получил я код. Во вкладке Standard. Как я понимаю, вкладка Import и Javascript меня не интересует.
<link href='http://fonts.googleapis.com/css?family=Lobster&subset=latin,cyrillic-ext,latin-ext,cyrillic' rel='stylesheet' type='text/css'>

А куда этот код вставлять? В CSS файлы или в PHP файлы?

Если бы в шаблоне этот шрифт был подключен через подобный код, то я думаю, что там была бы где-то ссылка на fonts.googleapis.com.
Но я этой ссылки ни в одной CSS и PHP не нашел.

Но есть вот такой PHP, про шрифты судя из названия. Там перечислены используемые в шаблоне шрифты, которые я могу использовать через админ панель в Joomla.
Но опять же - там только созданы массивы и все. А как они подключены - не понял.

Если кому не сложно, может посмотрите файл? Я в PHP не разбираюсь. Может знающие люди сразу все поймут? Может в этот файл и надо вставлять данный код?

Вот код файла gfonts.php

<?php
defined('_JEXEC') or die( 'Restricted access' );
jimport('joomla.html.html');
jimport('joomla.form.formfield');
class JFormFieldGFonts extends JFormField
{

   protected $type = 'fonts';

   protected function getInput() {   
      // Initialize variables.
        $session = JFactory::getSession();
        $options = array();
      $attr = '';
        // Initialize some field attributes.
        $attr .= $this->element['class'] ? ' class="'.(string) $this->element['class'].'"' : '';
        // To avoid user's confusion, readonly="true" should imply disabled="true".
        if ( (string) $this->element['readonly'] == 'true' || (string) $this->element['disabled'] == 'true') {
            $attr .= ' disabled="disabled"';
        }
        $attr .= $this->element['size'] ? ' size="'.(int) $this->element['size'].'"' : '';
        $attr .= $this->multiple ? ' multiple="multiple"' : '';
        // Initialize JavaScript field attributes.
        $attr .= $this->element['onchange'] ? ' onchange="'.(string) $this->element['onchange'].'"' : '';
      
      $gfont_group = array (
                  'Latin'=>array(
                        'Droid Sans','Droid Serif','Lobster','Yanone Kaffeesatz','Nobile','Reenie Beanie',
                        'Tangerine','Neucha','Josefin Slab','OFL Sorts Mill Goudy TT','Molengo','PT Sans',
                        'Vollkorn','Just Me Again Down Here','Ubuntu','Cantarell','Inconsolata','Crimson Text',
                        'Cardo','Cuprum','Droid Sans Mono','Neuton','Arvo','Philosopher','Old Standard TT','Josefin Sans',
                        'Covered By Your Grace','Arimo','IM Fell','Geo','Copse','Raleway','Allerta','Just Another Hand',
                        'Tinos','Puritan','Mountains of Christmas','Cabin','Sniglet','Allan','Lato','Orbitron','Vibur',
                        'Gruppo','Allerta Stencil','Cousine','Syncopate','Merriweather','Kristi','Anonymous Pro','Coda',
                        'Corben','Buda','Bentham','Lekton','UnifrakturMaguntia','UnifrakturCook','Kenia','Rock Salt',
                        'Calligraffitti','Cherry Cream Soda','Chewy','Coming Soon','Crafty Girls','Crushed','Fontdiner Swanky',
                        'Homemade Apple','Irish Growler','Kranky','Luckiest Guy','Permanent Marker','Schoolbell','Slackey',
                        'Sunshiney','Unkempt','Walter Turncoat'
                     ),
                  'Cyrillic'=>array('Anonymous Pro','Cuprum','Neucha','PT Sans','Philosopher','Ubuntu'),
                  'Greek'=>array('GFS Didot','GFS Neohellenic','Ubuntu','Anonymous Pro'),
                  'Khmer'=>array('Hanuman')
                  );
      
      $lists = "";
      $option[] = JHTML::_('select.option', ' ', '-------- None select --------');
      foreach ($gfont_group as $group=>$gfonts) {
         $option[] = JHTML::_('select.optgroup', $group);
         foreach ($gfonts as $gfont) {
            $option[] = JHTML::_('select.option', $gfont, $gfont);
         }
      }
   
      $lists .= JHTML::_('select.genericlist', $option, $this->name, trim($attr), 'value', 'text', $this->value, $this->id );
      //return JHTML::_( 'select.genericlist', $mitems, $this->name,trim($attr), 'value', 'text', $this->value, $this->id );
      return $lists;
   }
}
?>
*

srg777

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Re: Проблема со шрифтами
« Ответ #3 : 12.07.2012, 21:28:11 »
Кстати, как видно, в файле перечислены и кирилличные шрифты. Правда я пробовал их применить к сайту.
Английские слова меняются, а русские - ни в какую.
Да елки палки.
*

Ragivort

  • Завсегдатай
  • 1156
  • 58 / 2
  • Такая Life
Re: Проблема со шрифтами
« Ответ #4 : 13.07.2012, 10:50:29 »
Гуглофонт подключается по-другому. Подключите как указано на сайте http://www.google.com/webfonts и будет вам счастье
Дозволь мне свершить то добро, которое я способен свершить, теперь, ибо я могу более не вернуться сюда.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Проблема с шаблоном Joomla 1.6

Автор skorpion97

Ответов: 3
Просмотров: 2093
Последний ответ 05.02.2012, 12:29:15
от skorpion97
Проблема с поиском шаблона

Автор polkan

Ответов: 9
Просмотров: 3863
Последний ответ 12.06.2010, 10:52:31
от Pazys