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

lustoff

  • Захожу иногда
  • 137
  • 4 / 1
Здравствуйте, форумчане.
Использую на своем сайте шаблон beez_20 и в нем есть интересная кнопка "Показать/Скрыть информацию", которая показывает/скрывает правый сайдбар. Все хорошо работает, но положение этого переключателя не запоминается.
Подскажите, пожалуйста, как сделать, чтобы запоминалось, что была нажата кнопка "Скрыть информацию", и для этого пользователя при дальнейшей работе правый сайдбар был скрыт, пока он не нажмет "Показать информацию"?

Знаю, что нужно использовать куки, но вот как это правильно сделать, не знаю.
Нашел, где находится функция, которая показывает скрывает - function auf(key) в файле \templates\beez_20\javascript\hide.js

Код
function auf(key) {
var el = document.id(key);

if (el.style.display == 'none') {
el.setStyle('display', 'block');
el.setProperty('aria-expanded', 'true');

if (key != 'right') {
el.slide('hide').slide('in');
el.getParent().setProperty('class', 'slide');
eltern = el.getParent().getParent();
elternh = eltern.getElement('h3');
elternh.addClass('high');
elternbild = eltern.getElement('img');
// elternbild.focus();
el.focus();
elternbild.setProperties( {
alt : altopen,
src : bildzu
});
}

if (key == 'right') {
document.id('right').setStyle('display', 'block');
wrapperwidth(small);
document.id('nav').removeClass('leftbigger');
grafik = document.id('bild');
document.id('bild').innerHTML = rightclose;
grafik.focus();
}
} else {
el.setStyle('display', 'none');
el.setProperty('aria-expanded', 'false');

el.removeClass('open');

if (key != 'right') {
eltern = el.getParent().getParent();
elternh = eltern.getElement('h3');
elternh.removeClass('high');
elternbild = eltern.getElement('img');
// alert(bildauf);
elternbild.setProperties( {
alt : altclose,
src : bildauf
});
elternbild.focus();
}

if (key == 'right') {
document.id('right').setStyle('display', 'none');
wrapperwidth(big);
document.id('nav').addClass('leftbigger');
grafik = document.id('bild');
grafik.innerHTML = rightopen;
grafik.focus();
}
}
// write cookie
saveIt(key);
}

Помогите, пожалуйста, подправить эту функцию.
*

lustoff

  • Захожу иногда
  • 137
  • 4 / 1
Хотя, наверное, что-то в этой функции не так. Или почему она не работает?
Код
function saveIt(name) {
var x = document.id(name).style.display;

if (!x) {
alert('No cookie available');
} else {
if (Browser.Features.localstorage) {
try {
localStorage[name] = x;
}
catch (e) {
// Most likely the storage is full or deactivated
}
} else {
Cookie.write(name, x, {duration: 7});
}
}
}
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как скрыть пустой блок (левое меню) на главной, плз?

Автор k.upak

Ответов: 6
Просмотров: 1477
Последний ответ 10.02.2016, 21:15:23
от k.upak
Как изменить ширину шаблона Beez_20?

Автор Amige

Ответов: 0
Просмотров: 1250
Последний ответ 23.07.2015, 19:19:32
от Amige
Вывести информацию как в ссылке

Автор ramzes_g18

Ответов: 1
Просмотров: 1239
Последний ответ 16.04.2015, 09:34:06
от motokraft
Главная страница шаблона beez_20 Joomla 2.5

Автор bakyt

Ответов: 5
Просмотров: 1502
Последний ответ 29.01.2015, 15:47:12
от bakyt
Скрыть или удалить строку поиск в шаблоне Joomla 2.5

Автор Anatoliy1985

Ответов: 1
Просмотров: 1245
Последний ответ 01.07.2014, 20:13:31
от darkghost