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

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
я дописываю одни компонент и стоит задача вывести информацию о авторе объявления. по дефолту у меня есть id этого автора. имя, почту можно вытянуть из $user. а полная информация о пользователе записывается в $contact, то есть телефон, адрес, сайт и т.п.
как получить к ней доступ? id то разные у $user и $contact
*

Aventurier

  • Захожу иногда
  • 129
  • 16 / 0
Под user и contact имеются в виду jos_users и jos_contact, я правильно понял?
*

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
*

Aventurier

  • Захожу иногда
  • 129
  • 16 / 0
Тогда вопрос к вам - если вы писали расширение, то по какому принципу вы вводите данные в таблицу jos_contact, такой таблицы по дефолту нет, то есть вы ее создавали?
*

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
я не сам пишу расширение, а дописываю jea (joomla estate agency). но данные в jos_contact_details я ввел в админке: создал несколько пользователей, и в компоненте контактов ввел нужную информацию и привязал контакты к созданным ранее юзерам. все, информация уже в базе. теперь вопрос как ее оттуда достать и вывести в нужном компоненте?
*

Aventurier

  • Захожу иногда
  • 129
  • 16 / 0
Ааааа, так бы и сказали что это таблица jos_contact_details, а то непонятно же. В этой таблице есть ячейка user_id - к ней и привязывайтесь
*

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
не выходит.
получается у меня есть id юзера - это переменная created_by. из нее я получаю доступ к jos_users, вот таким путем:

  <?php if (is_numeric($this->row->created_by)): ?>
        <?php $agent =& JFactory::getUser($this->row->created_by); ?>

и далее могу вывести информацию которая хранится в юзерс, а это имя, почта. а нужная мне информация уже записана в jos_contact_details. я так понимаю мне нужно переформулировать запрос чтобы брать информацию из jos_contact_details. но как это сделать? ))
*

Aventurier

  • Захожу иногда
  • 129
  • 16 / 0
Сделать запрос в БД в таблицу jos_contact_details и указать по какому параметру выбирать оттуда строку - по user_id, который равен вашей переменной $this->row->created_by
Поищите в сети - там есть указания как делаются такие запросы.
*

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
нагуглил один пример:
       
$db =& JFactory::getDBO();
$sql = "SELECT * FROM  #__contact_details";
$result =  $db->loadResultArray(5);
foreach ($result as  $row)
{
echo($row."<br>");
}

но он почему-то опять таки берет данные из jos_users. вобще не могу понять чего это, я же указал в какой ветке искать
*

Aventurier

  • Захожу иногда
  • 129
  • 16 / 0
$result =  $db->loadResultArray(5);
Не могу понять что за 5 в скобках
$result =  $db->loadResultArray();
*

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
5 строка таблицы. тоесть именно это форма выводит 5й параметр таблицы jos_users, а именно переменную группы пользователя. но почему именно юзерс, я не понимаю. даже если удалить строку поиска $sql = "SELECT * FROM  #__contact_details"; всеравно в итоге выводится переменный из юзерс

может я неправильно запрос написал?
*

nixsystem

  • Захожу иногда
  • 207
  • 10 / 0
Если в таблицах jos_users и jos_contact_details есть данные принадлежащие одному объекту (в данном случае пользователю) то толжно быть поле по которому эти данные связаны (связь один ко многим). Вот по этому полю можно вытащить.
Если этой связи между таблицами нет - то никак это не вытащить, потому что невозможно будет установить какому user'у из jos_users какой contact из jos_contact_details соответствует.

За эту связь как раз и отвечает поле user_id. Чтобы получить искомые данные нужно выполнить следующий запрос
Код: sql
SELECT * FROM  #__contact_details WHERE user_id = 48
В контексте Joomla это будет выглядеть так
Код: php
//$user_id - содержит id нужного пользователя полученный из jos_users
$db = JFactory::getDBO();
$sql = "SELECT * FROM  #__contact_details WHERE user_id = ".$user_id;
$result =  $db->loadResultArray;
foreach ($result as  $row)
{
echo($row."<br>");
}
Этот код построчно выведет все контакты пользователя, если такой контакт не один.
*

Aventurier

  • Захожу иногда
  • 129
  • 16 / 0
Да, а я совсем не заметил что у вас WHERE отсутствует, прошу извинить, еще опыта маловато. :)
*

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
спасибо, код работает, но всеравно информация берется из jos_users и поле "$sql = "SELECT * FROM  #__contact_details WHERE user_id = ".$user_id;" воообще игнорируется. даже без него выдается тот же результат, из джос_юзерс.

как можно проследить как работает запрос? или может это у меня на странице где-то ошибка? или компонент изначально кривой?
*

nixsystem

  • Захожу иногда
  • 207
  • 10 / 0
Конкретный пример запроса и кода его сопровождающего приведите пожалуйста, тогда будет видно что откуда - куда и почему.
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
$db = JFactory::getDBO();
$sql = "SELECT * FROM  #__contact_details WHERE user_id = ".$user_id;
$db->setQuery($sql);
$result =  $db->loadResultArray;
foreach ($result as  $row)
{
var_dump($row);
}
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
именно с $db->setQuery($sql); выдает ошибку Warning: Invalid argument supplied for foreach()
еще у одного человека та же самая беда с этим компонентом. я делаю вывод, значит где-то есть какой-то глобальный параметр, который задает этот путь по умолчанию, откуда берутся потом данные (в данном случае это джос_юзерс). придется перелопатить весь компонент.
на что обратить внимание? я прав в теории о глобальном параметре?
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Да какой параметр. sql-запрос неправильный. Не вытаскивает данные из базы. Почему сам выясняй. Отладь запрос на чем нибудь. Инструментов для этого куча.
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
подскажи пожалуйста, как отладить, что за инструменты?
*

Lex

  • Завсегдатай
  • 1615
  • 274 / 1
Жизнь заставила учиться.
В личке на вопросы не отвечаю.
*

Aventurier

  • Захожу иногда
  • 129
  • 16 / 0
$db = &JFactory::getDBO();
 $db->setQuery('SELECT * FROM #__contact_details WHERE user_id = '.$user_id);
 $article_id = $db->loadObjectList();
 или
 $article_id = $db->loadResultArray();

Надеюсь не ошибся
*

Aventurier

  • Захожу иногда
  • 129
  • 16 / 0
Кстати, может я упустил, откуда взялась переменная $user_id ? У вас вроде $this->row->created_by
*

chikvito

  • Захожу иногда
  • 60
  • 2 / 0
отладка и вправду помогла, у меня два лишних пробела было в запросе))))

Код
$db->setQuery('SELECT * FROM #__contact_details WHERE user_id = '.$user_id);

а нужно было
Код
user_id='.$user_id);

всем спасибо за помощь)))
« Последнее редактирование: 03.04.2012, 04:59:53 от chikvito »
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

модуль Newsflash: как вывести дату?

Автор joomloid

Ответов: 5
Просмотров: 3483
Последний ответ 03.04.2019, 12:25:27
от pH43
Как вывести все категории всех разделов на одной странице?

Автор genius

Ответов: 4
Просмотров: 2136
Последний ответ 22.01.2019, 08:38:30
от genius
Как вывести список новых статьи?

Автор maxo127

Ответов: 4
Просмотров: 2234
Последний ответ 16.06.2018, 02:44:50
от maxo127
Вопрос о правильности разметки тегами на странице

Автор dpy1995

Ответов: 10
Просмотров: 6299
Последний ответ 09.01.2018, 12:49:25
от kungurskiy
Появление элемента на странице которого не должно быть - откуда?

Автор sergey113

Ответов: 1
Просмотров: 1679
Последний ответ 29.03.2016, 02:08:24
от sergey113