Новости Joomla

👩‍💻 SW JProjects v.2.6.1 - компонент каталога расширений для веб-приложений.

👩‍💻 SW JProjects v.2.6.1 - компонент каталога расширений для веб-приложений.

Компонент позволяет сделать свой мини-Joomla Extensions Directory - каталог расширений для CMS (не только для Joomla) или файлов. Есть возможность скачивания по лицензионным ключам создания кастомных схем данных для сервера обновлений.

👩‍💻 v.2.6.1. Что нового?
- Правки наследования схем серверов обновлений. Улучшена логика наследования схем серверов обновлений для проектов компонент - категория - проект.
- Не стабильные релизы в сервере обновлений. Теперь в данные сервера обновлений попадают все версии (alpha, beta и т.д.), а не только stable.
- Косметические изменения. В шаблоне по умолчанию сделаны замены некоторых CSS-классов, уточнено присвоение атрибутов loading=lazy и fetchpriority.
- Рефакторинг и правки кода. Текущее обновление кодовой базы.
- Исправление ошибок.

👩‍💻 Больше спасибо за помощь в тестировании участникам нашего сообщества Александру Новикову (@pro_portal) и Александру Судьбинову (@alexrevo).

- Страница расширения
- GitHub расширения
- Joomla Extensions Directory

@joomlafeed

Событие Pizza, Bugs & Fun - 29-30 января 2026 года.

Событие Pizza, Bugs & Fun  - 29-30  января 2026 года.

Уже несколько лет в мире Joomla проводятся мероприятия "Pizza, Bugs & Fun" (#PBF), где каждый может посвятить несколько часов своего мозгового времени тому, чтобы наша любимая CMS стала ближе к идеалу.

Ссылки на видео и статьи из этого поста рассказывает об организационных вопросах, которые пригодятся для участия в PBF, а так же что и как делать.

В рамках события PBF все желающие могут собираться в общий онлайн чат, обсудить вопросы Joomla и приложить к их разрешению свою руку. Самый классный вариант, когда эта встреча происходит оффлайн: тогда организовывается пицца, напитки по вкусу и несколько часов совместного творчества.

Каждый помогает тем, что он умеет:

  • кто-то пишет недостающую документацию,
  • кто-то пишет код,
  • кто-то тестирует как исправлены ошибки или сделан новый функционал.

На сайте события есть карта, можно "захостить" свою локацию. Практически все движки в мире развиваются за счёт спонсирующих их компаний. Joomla одна из немногих, где развитие идёт только усилиями международного сообщества энтузиастов.

https://www.youtube.com/watch?v=a-FuVKXg_Uw 

На момент написания данного поста в репозитории Joomla 810 открытых Issue (как правило это баги) и 236 Pull request (PR, исправление багов и новый функционал). Все PR обязательно тестируются минимум двумя участниками сообщества, дабы в конечный код движка не проскочила ошибка.

Если каждый из участников только нашего сообщества сделает даже одно тестирование, то, боюсь, PR и Issue на всех не хватит 😀 И ничего не останется нашим коллегам из международных Joomla-чатов.

0 Пользователей и 1 Гость просматривают эту тему.
  • 17 Ответов
  • 2465 Просмотров
*

kostolom_brn

  • Осваиваюсь на форуме
  • 19
  • 4 / 0
Здравствуйте, пожалуйста помогите  !
Я делаю плагин который добавляет в каждую страницу сайта HTML код такого содержания
Код
<link type='text/css' href='typography.css' rel='stylesheet'>
В идеале надо, чтобы добавлялось сразу же после <head>
Т.е. после открывающего <head>, а не после закрывающего </hed>

Подскажите php код для этого дела.
Всё остальное готово, манифест и т.д.
Просто не понимаю как сделать сам php скрипт для этого дела.
« Последнее редактирование: 03.11.2013, 00:14:30 от kostolom_brn »
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
Федор, а если надо прям сразу после <head>, а не где-то там в середине?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Разбирать буфер вывода регулярками.
По событию public function onAfterRender()
Или подключать динамически с помощью js (не совсем хорошо)
В Joomla нет возможности управлять порядком подключения CSS. Разве, что вы будете сортировать массив по событию onBeforeCompileHead
В группах упоминают, что в 4 версии планируют сделать динамическую загрузку js. Но это споры пока.
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
угу, вот я о том же...иногда нужно подключить перед всеми подключениями
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
угу, вот я о том же...иногда нужно подключить перед всеми подключениями
Код: php-brief
$doc->addCustomTag("<link type='text/css' href='typography.css' rel='stylesheet'>" );
P. S. Так выведет самым последним
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Либо так.. если я правильно понял что надо..
Код: php
$styleSheets = JFactory::getDocument()->_styleSheets;
$newStyles = array();
$url = 'путь к стилю который надо вывести первым';
$newStyles[$url] = array( 'mime'=>'text/css', 'media'=>'', 'attribs'=>'' );
JFactory::getDocument()->_styleSheets = $newStyles + $styleSheets;
« Последнее редактирование: 03.11.2013, 01:12:28 от Istaan »
*

kostolom_brn

  • Осваиваюсь на форуме
  • 19
  • 4 / 0
Помог последний совет. Встраивается самым первым CSS на странице.
Вот содержание файла плагина:
Код
function Mytypography()
{
$styleSheets = JFactory::getDocument()->_styleSheets;
$newStyles = array();
$url = '/plugins/system/mytypography/typography.css';
$newStyles[$url] = array( 'mime'=>'text/css' );
JFactory::getDocument()->_styleSheets = $newStyles + $styleSheets;
}
Mytypography();

p.s.
ВСЕМ СПАСИБО!  *DRINK*
поставить + в репу не нашёл как  >:(
*

kostolom_brn

  • Осваиваюсь на форуме
  • 19
  • 4 / 0
Под-вопрос так сказать:
А как сделать в mytypography.xml (это к этому плагину) указания о том где брать обновления?
Задача: указать в плагине где проверять обновления.
Нигде не нашёл информацию об этом...
*

kostolom_brn

  • Осваиваюсь на форуме
  • 19
  • 4 / 0
И ещё вопросик по локализации...
Сделал плагин, все языковые переменные правильно прописал.
Все файлы правильно прописал.
Но вот после установки:

Вот что получается, в менеджере ВСЕХ плагинов — нет перевода:

А в настройках самого плагина есть перевод:


Вот приложил готовый плагин, посмотрите пожалуйста, может я где ошибся?!  !
http://yadi.sk/d/AClNPTwZC3NQA - 4КБ
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
поставить + в репу не нашёл как  >:(
Надо 10 сообщений набрать и можно будет менять карму )

И ещё вопросик по локализации...
Сделал плагин, все языковые переменные правильно прописал.
Все файлы правильно прописал.
1. Посмотрите или языковые файлы после уставновки перенеслись в CMS
2. в файлах *.sys.ini
написано:
Цитировать
PLG_SYS_mytypography="Типография на сайте"
PLG_SYS_mytypography_XML_DESC="Плагин для интеграции типографии на сайте"
тоесть часть с  маленькой буквы! возможно потому (файлы *.sys.ini) используются по все системе, а просто .ini в контексте текущего плагина!

А как сделать в mytypography.xml (это к этому плагину) указания о том где брать обновления?
Задача: указать в плагине где проверять обновления.
Нигде не нашёл информацию об этом...

скрипт установки / обновления / удаления и сервер обновлений
*

kostolom_brn

  • Осваиваюсь на форуме
  • 19
  • 4 / 0
Пасиба, буду разбираться и плюсы поставлю, теперь могу :-)

p.s.
русификация заработала корректно (совет помог). ::)
« Последнее редактирование: 03.11.2013, 15:17:27 от kostolom_brn »
*

kostolom_brn

  • Осваиваюсь на форуме
  • 19
  • 4 / 0
Не смог разобраться с тем как получить параметры плагина и обработать их.
Задача такая.
В настройках плагина будет выбор:
Включение шрифтов(параметры выпадающим списком):
  • выкл
  • включить старые
  • включить новые

В зависимости от выбранного будет включаться интеграция того или иного CSS

Прочитал всякие руководства и так и не смог разобраться, до 3х ночи просидел и не понял как это реализовать. :'(
Я прикрепил плагин (http://yadi.sk/d/eu9EhdTaC5eKK - 4кб), посмотрите пожалуйста, и если сможете, дайте новый рабочий код для mytypography.php
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Оу не удивительно что у вас не пашет! в плагине должен быть класс, а не просто функция
class plgГруппаПлагинаИмяПлагина extends JPlugin{

}

и уже внутри этого класса использовать $this->params->get( 'typography_basic', 1 )

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

kostolom_brn

  • Осваиваюсь на форуме
  • 19
  • 4 / 0
Ночью я пытался сделать в конструкторе плагинов, но мне выдавал нулевой архив. сейчас сделался. но всёравно не получается взять переменные из настроек плагина.
В настройках есть переменная typography_fontawesome у неё 3 значения (off, old, new)
Хочу получить значение переменной и в зависимости от ней выполнить действия (функцию).
В идеале сделать так: $переменная=получаем из настроек;
if ($переменная == "old"){работает функция для old;}
Вот содержание файла mytypography.php полученного при помощи конструктора:
Код
<?php
defined( '_JEXEC' ) or die;

class plgSystemMytypography extends JPlugin
{
/**
* Class Constructor
* @param object $subject
* @param array $config
*/
public function __construct( & $subject, $config )
{
parent::__construct( $subject, $config );
$this->loadLanguage();
}

$wwwww=$this->params->get('typography_fontawesome');

}
В конце это я пытался состряпать переменную в которую загрузить значение из настроек, но ничего не получается. ошибка, белый экран.

Пожалуйста, помогите, ума не хватает самому  >:(
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Потому что вам нужно писать в теле метода!
я вижу у вас совсем с ООП слабенько )))
Добавьте в ваш класс метод:
Код: php
<?php
defined( '_JEXEC' ) or die;

class plgSystemMytypography extends JPlugin
{
/**
* Class Constructor
* @param object $subject
* @param array $config
*/
public function __construct( & $subject, $config )
{
parent::__construct( $subject, $config );
$this->loadLanguage();
}
function onAfterInitialise(){
$wwwww=$this->params->get('typography_fontawesome');
var_dump($wwwww);
}
}

метод onAfterInitialise выполнится сам после инициализации приложения, дополнительно его никак вызывать не надо!
*

kostolom_brn

  • Осваиваюсь на форуме
  • 19
  • 4 / 0
Всё... родила царица в ночь, не то сына не то дочь  :D
Малость подшаманю хелпер и скоро добавлю на JED и сюда ссыль пульну.

p.s.
в репу добавил  *DRINK*
*

kostolom_brn

  • Осваиваюсь на форуме
  • 19
  • 4 / 0
Ещё вопросик:
Плагин сделал, работает, но хочу сделать помощь по типографии (примеры использования).
Надо сделать чтобы когда заходишь в настройки плагина, слева, там где краткое описание, вставить HTML код (описание с примерами).
Как правильно это сделать? Просто в языковой файл добавить или ещё есть нормальный способ? А то в языковой файл HTML как-то стрёмно добавлять, кавычки и всё такое...
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Перенесено: Плагин создания полной резервной копии сайта+отправки на ЯндексДиск

Автор b2z

Ответов: 0
Просмотров: 1932
Последний ответ 03.03.2014, 15:09:58
от b2z
Как подгружать js в head из события onContentAfterDisplay ?

Автор mainet

Ответов: 2
Просмотров: 1552
Последний ответ 22.01.2014, 11:39:26
от mainet
[Решено] Как в плагине отправить скрипт в head ?

Автор mainet

Ответов: 1
Просмотров: 1598
Последний ответ 03.12.2012, 12:19:44
от hooten
Как отправить код в head ?

Автор mainet

Ответов: 11
Просмотров: 5172
Последний ответ 19.07.2012, 22:04:14
от mainet
field type=filelist directory

Автор Black Moon

Ответов: 1
Просмотров: 1409
Последний ответ 08.10.2011, 23:10:02
от Lex