Новости Joomla

Обновлена информация в Плане развития Joomla

👩‍💻 Обновлена информация в Плане развития Joomla.Здесь собрана информация о датах релизов, описаны принципы версионирования, указаны ответственные за релизы, а так же даты окончания поддержки релизов. Опираясь на эту информацию вы можете планировать развитие ваших интернет-проектов.👩‍💻 Что нового?⛔️ Joomla 4.Дата окончания исправления ошибок безопасности в версии 4.x - 14 октября 2025г. ⚠️ После этой даты Joomla 4 прекратит получать какие-либо обновления, в том числе безопасности - вообще. Рекомендуем обновить ваши сайты до актуальной Joomla 5.✅ Joomla 5.- Дата окончания исправления ошибок в версии 5.x - 13 октября 2026г.- Дата окончания исправления ошибок безопасности в версии 5.x - 12 октября 2027 года.- Текущая актуальная (на момент написания заметки) версия - 5.3.1.- Опубликовано расписание выхода релизов Joomla 5.4. Стабильный релиз ожидается 14 октября 2025 года.✅ Joomla 6.- Дата окончания исправления ошибок в версии 6.x - 17 октября 2028г.- Дата окончания исправления ошибок безопасности в версии 6.x - 16 октября 2029г.- Опубликовано расписание выхода релизов Joomla 6.0. Стабильный релиз ожидается 14 октября 2025 года.- Для разработчиков уже доступна Joomla 6.0.0-alpha1.✅ Joomla! Framework.Обновлена информация о Joomla! Framework - полноценном PHP-фреймворке для разработки. Он в версиях 1.х и 2.х был самостоятельным параллельным проектом, однако начиная с версии Joomla 4.0 стал её основой. Добавлена информация о Joomla! Framework 3.x, который вышел 6 октября 2023 года. Его можно использовать в тех случаях, когда вам в проекте не нужна CMS Joomla целиком.Подробнее на сайте Joomla-сообщества Joomlaportal.ru#joomla #community

Компания JetBrains рассказала о своей поддержке Joomla

Компания JetBrains рассказала о своей поддержке Joomla

JetBrains - один из мировых лидеров в разработке программного обеспечения для разработчиков. Её программные продукты - это IDE - профессиональные среды разработки, которые отличаются от простого блокнота/редактора с плагинами набором всевозможных инструментов для разработчиков, глубоким анализом кодовой базы, подсказками по ней и по языку программирования, отладкой ошибок и многим-многим другим. Одним из самых известных продуктов компании является IDE PHP Storm, который можно назвать отраслевым стандартом PHP-разработчика.

В статье How PhpStorm Helps Maintain PHP Open-Source Projects: Interviews and Real-World Examples в блоге компании описываются Open Source проекты, которым JetBrains оказывает поддержку (это могут быть бесплатные лицензии для разработчиков для некоммерческих проектов).

В список попали:

  • PHPUnit - фреймворк для unit-тестирования в PHP
  • Doctrine DBAL - библиотека для PHP, которая предоставляет лёгкий и гибкий слой для коммуникации с базой данных. Она поддерживает различные базы данных через единый и согласованный API.
  • CodeIgniter — популярный MVC-фреймворк для разработки на PHP
  • Joomla! - наша любимая CMS.

Эти названия (кроме "Joomla") чаще всего не слышат вебмастера и разработчики обычных сайтов и интернет-магазинов. Но эти названия хорошо знакомы PHP-разработчикам, которые создают сложные и высоконагруженные проекты и микросервисы. То, что Joomla оказалась в одном ряду с такими программными инструментами - делает ей честь.

🙏 За ссылку спасибо участнику нашего сообщества Ринату Кажетову (@rkazhet).

Подпишитесь на @joomlafeed

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

skylord

  • Захожу иногда
  • 64
  • 0 / 0
mod_menu
« : 13.02.2018, 23:56:44 »
всем привет

вот такая ситуацыя:

предположим есть меню из четырех пунктов, у второго пункта имеется  2 подменю, компонент mod_menu формирует вот такую HTML структуру
<ul>
  <li><a href="">P1</a></li>
  <li><a href="">P2</a>
    <ul>
      <li><a href="">PP1</a></li>
      <li><a href="">PP2</a></li>
    </ul>
  </li>
  <li><a href="">P3</a></li>
  <li><a href="">P4</a></li>
</ul>
ВОПРОС: в каком файле Joomla формирует строку: <a href="">P</a>

мне надо добавить внутрь <а> вот такую конструкцию <i class="fas fa-caret-down"></i>
в итоге должно получится:

<ul>
  <li><a href="">P1<i class="fas fa-caret-down"></i></a></li>
  <li><a href="">P2<i class="fas fa-caret-down"></i></a>
    <ul>
      <li><a href="">PP1</a></li>
      <li><a href="">PP2</a></li>
    </ul>
  </li>
  <li><a href="">P3<i class="fas fa-caret-down"></i></a></li>
  <li><a href="">P4<i class="fas fa-caret-down"></i></a></li>
</ul>


можете подсказать?
« Последнее редактирование: 14.02.2018, 00:00:14 от skylord »
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: mod_menu
« Ответ #1 : 14.02.2018, 00:01:06 »
Смотря какой тип меню... default_component.php для ссылок компонентов...
Создание сайтов, шаблонов, помощь в решении проблем.
*

skylord

  • Захожу иногда
  • 64
  • 0 / 0
Re: mod_menu
« Ответ #2 : 14.02.2018, 00:11:03 »
у меня URL и у них есть порменю
я смотрел в файл deafult_url.php и не нашел, вот код этого файла:

------------------------------
Код
<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_menu
 *
 * [member=126442]copyright[/member]   Copyright (C) 2005 - 2018 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;

$attributes = array();

if ($item->anchor_title)
{
$attributes['title'] = $item->anchor_title;
}

if ($item->anchor_css)
{
$attributes['class'] = $item->anchor_css;
}

if ($item->anchor_rel)
{
$attributes['rel'] = $item->anchor_rel;
}

$linktype = $item->title;

if ($item->menu_image)
{
if ($item->menu_image_css)
{
$image_attributes['class'] = $item->menu_image_css;
$linktype = JHtml::_('image', $item->menu_image, $item->title, $image_attributes);
}
else
{
$linktype = JHtml::_('image', $item->menu_image, $item->title);
}

if ($item->params->get('menu_text', 1))
{
$linktype .= '<span class="image-title">' . $item->title . '</span>';
}
}


if ($item->browserNav == 1)
{
$attributes['target'] = '_blank';
}
elseif ($item->browserNav == 2)
{
$options = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes';

$attributes['onclick'] = "window.open(this.href, 'targetWindow', '" . $options . "'); return false;";
}
/*added*/
if ($item->parent)
{
$linktype =  $item->title . '<i class="fas fa-caret-down"></i>';
}
/*end*/
echo JHtml::_('link', JFilterOutput::ampReplace(htmlspecialchars($item->flink, ENT_COMPAT, 'UTF-8', false)), $linktype, $attributes);

------------------------------
« Последнее редактирование: 14.02.2018, 00:20:44 от Efanych »
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: mod_menu
« Ответ #3 : 14.02.2018, 00:21:29 »
Добавил в ваш код перед нижней строчкой нужное.
P.S. А чтоб не затёрлось при обновлении, скопируйте этот файл и default.php в
templates/ваш_шаблон/html/mod_menu
« Последнее редактирование: 14.02.2018, 00:33:53 от Efanych »
Создание сайтов, шаблонов, помощь в решении проблем.
*

skylord

  • Захожу иногда
  • 64
  • 0 / 0
Re: mod_menu
« Ответ #4 : 14.02.2018, 00:39:49 »
огромное спасибо
а подскажите пожалуйста если в той же конструкции мне надо добавить вне тэга <а>, например вот так строка 3, после </а> но перед <ул> подменю:

<ul>
  <li><a href="">P1</a></li>
  <li><a href="">P2</a> <i class="fas fa-caret-down"></i>
    <ul>
      <li><a href="">PP1</a></li>
      <li><a href="">PP2</a></li>
    </ul>
  </li>
  <li><a href="">P3</a></li>
  <li><a href="">P4</a></li>
</ul>
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Re: mod_menu
« Ответ #5 : 14.02.2018, 00:44:37 »
Тогда вот так
Код
<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_menu
 *
 * [member=126442]copyright[/member]   Copyright (C) 2005 - 2018 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;

$attributes = array();

if ($item->anchor_title)
{
$attributes['title'] = $item->anchor_title;
}

if ($item->anchor_css)
{
$attributes['class'] = $item->anchor_css;
}

if ($item->anchor_rel)
{
$attributes['rel'] = $item->anchor_rel;
}

$linktype = $item->title;

if ($item->menu_image)
{
if ($item->menu_image_css)
{
$image_attributes['class'] = $item->menu_image_css;
$linktype = JHtml::_('image', $item->menu_image, $item->title, $image_attributes);
}
else
{
$linktype = JHtml::_('image', $item->menu_image, $item->title);
}

if ($item->params->get('menu_text', 1))
{
$linktype .= '<span class="image-title">' . $item->title . '</span>';
}
}

if ($item->browserNav == 1)
{
$attributes['target'] = '_blank';
}
elseif ($item->browserNav == 2)
{
$options = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes';

$attributes['onclick'] = "window.open(this.href, 'targetWindow', '" . $options . "'); return false;";
}

echo JHtml::_('link', JFilterOutput::ampReplace(htmlspecialchars($item->flink, ENT_COMPAT, 'UTF-8', false)), $linktype, $attributes);
/*added*/
if ($item->parent)
{
echo '<i class="fas fa-caret-down"></i>';
}
/*end*/
Создание сайтов, шаблонов, помощь в решении проблем.
*

skylord

  • Захожу иногда
  • 64
  • 0 / 0
Re: mod_menu
« Ответ #6 : 14.02.2018, 00:53:24 »
огомное спсибо
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: mod_menu
« Ответ #7 : 14.02.2018, 01:15:20 »
Оффтоп конечно, но не пробовали работать через псевдоэлементы before, вставлять иконки? На уровне CSS при ховере опять же удобней менять как иконку так и оформление будет
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

demis

  • Захожу иногда
  • 67
  • 2 / 0
Re: mod_menu
« Ответ #8 : 10.06.2018, 16:43:10 »
Добрый день.

Подскажите, а как добавить в default_url в <а>, class="..." или другой атрибут например: data-fresco-caption=""

Спасибо.
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: mod_menu
« Ответ #9 : 10.06.2018, 16:47:29 »
Нет, атрибут data вы через админку модуля меню не добавите
Нужно лезть в код шаблона меню, ну или его переопределять
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

demis

  • Захожу иногда
  • 67
  • 2 / 0
Re: mod_menu
« Ответ #10 : 10.06.2018, 16:49:22 »
Нет, атрибут data вы через админку модуля меню не добавите
Нужно лезть в код шаблона меню, ну или его переопределять
Да, я имею ввиду как в шаблоне default_url добавить
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: mod_menu
« Ответ #11 : 10.06.2018, 16:56:28 »
Вы можете создать свой вид меню, к примеру в \templates\шаблон\html\mod_menu\
создать свои копии файлов default.php и default_component.php (это базовые стандартные файлы типов меню, если нужно можете и default_heading default_separator default_url скопировать
При копировании файлов изменяем часть названия до подчеркивания
В новом измененном default.php изменяем строку после 74 где идет переключение типов
Код
case 'url':
require JModuleHelper::getLayoutPath('mod_menu', 'default_' . $item->type);
break;

default:
require JModuleHelper::getLayoutPath('mod_menu', 'default_url');
break;
endswitch;
Меняем default_ на наш новый префикс файлов (это если нам нужны измененные типы урлов внешнего урла\разделителя
В противном случае этот шаг пропускаем
Ну и все, в нашем новом файле catmenu_component.php пишем любые нужные нам атрибуты ссылки

А ну и да - в модуле меню после создания всех этих типов выбрать наш новый шаблон
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

demis

  • Захожу иногда
  • 67
  • 2 / 0
Re: mod_menu
« Ответ #12 : 10.06.2018, 17:19:48 »
Вы можете создать свой вид меню, к примеру в \templates\шаблон\html\mod_menu\
С этим понятно.

Я не соображу как добавить атрибуты в самом файле default_url
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Re: mod_menu
« Ответ #13 : 13.06.2018, 06:58:23 »
С этим понятно.

Я не соображу как добавить атрибуты в самом файле default_url
Код: php
$attributes['data-fresco-caption'] = 'че_нибудь';

Если атрибут должен быть постоянно в ссылке то сделай так
Код: php
$attributes = array('data-fresco-caption' => 'че_нибудь');
« Последнее редактирование: 13.06.2018, 07:02:10 от NewUsers »
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

demis

  • Захожу иногда
  • 67
  • 2 / 0
Re: mod_menu
« Ответ #14 : 13.06.2018, 16:19:06 »
Спасибо всем откликнувшимся и отдельно - NewUsers, то что нужно.
Вопрос закрыт.
*

NIKOLY

  • Захожу иногда
  • 84
  • 1 / 0
Re: mod_menu
« Ответ #15 : 25.09.2021, 15:57:17 »
Здравствуйте! Подскажите пожалуйста где копать если нужно добавить значение в href? Например так идёт < a href="/stranica.html" > а мне нужно < a href="/stranica.html#blok" > т.е. добавка к адресу конкретно значение #blok
Спасибо!
*

sivers

  • Живу я здесь
  • 2578
  • 357 / 0
Re: mod_menu
« Ответ #16 : 25.09.2021, 17:08:27 »
Здравствуйте! Подскажите пожалуйста где копать если нужно добавить значение в href? Например так идёт < a href="/stranica.html" > а мне нужно < a href="/stranica.html#blok" > т.е. добавка к адресу конкретно значение #blok
Спасибо!
Добавить обычный пункт меню, чтоб работала ссылка /stranica.html, а затем добавить еще один пункт меню с типом "внешняя ссылка" и в нем указать /stranica.html#blok.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

draff

  • Гуру
  • 5801
  • 434 / 7
  • ищу работу
Re: mod_menu
« Ответ #17 : 25.09.2021, 17:18:40 »
Подскажите пожалуйста где копать если нужно добавить значение в href? Например так идёт < a href="/stranica.html" > а мне нужно < a href="/stranica.html#blok" > т.е. добавка к адресу конкретно значение #blok
JavaScript - хеш
window.location.hash = 'blok' ;
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: mod_menu
« Ответ #18 : 25.09.2021, 17:49:30 »
в зависимости от шаблона. на некоторых свои системы меню класса "сломай мозг".
но для обычных можно в поле Note пункта меню (первая вкладка, снизу справа) вписать #mylink и потом создать переопределение меню или свой шаблон вывода сюда
html\mod_menu\
и там прописать после
Код
foreach ($list as $i => &$item)
{
   вот это
Код
$item->flink .= $item->note;
лучше делать проверку на наличие в note, скажем, #-символа, на случай если есть заполненные комментарии, хотя обычно никто не юзает его.
*

NIKOLY

  • Захожу иногда
  • 84
  • 1 / 0
Re: mod_menu
« Ответ #19 : 27.09.2021, 13:30:45 »
в зависимости от шаблона. на некоторых свои системы меню класса "сломай мозг".
но для обычных можно в поле Note пункта меню (первая вкладка, снизу справа) вписать #mylink и потом создать переопределение меню или свой шаблон вывода сюда
html\mod_menu\
и там прописать после
Код
foreach ($list as $i => &$item)
{
   вот это
Код
$item->flink .= $item->note;
лучше делать проверку на наличие в note, скажем, #-символа, на случай если есть заполненные комментарии, хотя обычно никто не юзает его.
Спасибо! Дельное решение!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Создать дополнительный шаблон в mod_menu

Автор SLdieR11

Ответов: 3
Просмотров: 613
Последний ответ 28.04.2021, 16:49:46
от gartes
Помогите с mod_menu, как выделить родительский пункт меню?

Автор mrN

Ответов: 3
Просмотров: 1243
Последний ответ 18.12.2017, 11:50:37
от kern.USR
Помогите написать шаблон для меню mod_menu Joomla 3.6.4

Автор DjumaI

Ответов: 4
Просмотров: 1697
Последний ответ 15.03.2017, 22:49:17
от Porohok
Редактирование default_component.php mod_menu Joomla 3.6

Автор DjumaI

Ответов: 2
Просмотров: 1418
Последний ответ 17.12.2016, 21:50:26
от DjumaI
Запутался в default.php mod_menu

Автор BSB

Ответов: 1
Просмотров: 965
Последний ответ 21.09.2016, 03:58:04
от Arkadiy