Новости Joomla

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

Компания 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#joomla #community

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

👩‍💻 Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1. Это релиз, в который включены уже проверенные изменения, но ещё очень многие исправления и улучшения ждут своей очереди. Joomla следит за качеством и безопасностью своего кода и каждое изменение должно быть успешно протестировано как минимум ещё двумя участниками сообщества. Разработка Joomla ведётся на платформе GitHub.Филипп Уолтон (Philip Walton) - один из разработчиков, кто активно вносит свой вклад в ядро Joomla. Он уже несколько месяцев посвящает свои послеполуденные часы пятницы работе с Joomla и предлагает присоединиться к нему. 📆 Пятница, 30 мая 2025, с 15:00 до 17:00 по UTC (Лондон) - с 18:00 до 20:00 по Москве.В чате Google Meet Филипп готов помочь с тестированием тем, кто будет делать это в первый раз. А так же он подготовил список лёгких Pull Request, которые можно протестировать довольно быстро. Чем больше тестов будет проведено сейчас, тем меньше ошибок вылезет потом. На данный момент 148 (уже 147 на момент написания заметки) PR на GitHub Joomla ждут тестирования.👩‍💻 Open to all. All together.Также вам поможет сделать первые шаги это видео.GitHub JoomlaДа, это вечер пятницы. Но тестирование занимает порой минут 15, а доброе дело сделано. Просто убедитесь, что разработчик чего-то не пропустил и всё работает как ожидается.#joomla #joomla6 #community

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

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Как вытянуть переменные в плагин на скрине, которые меняются по AJAX. Переменную attr[7]. Понимаю что через POST  запрос, но как отслеживать изменения по AJAX? и что значить ajax=1?
https://prnt.sc/SEW9chvGQtT_
*

kit2m2

  • Живу я здесь
  • 3345
  • 273 / 0
  • Беру сайты на полное сопровождение
Как вытянуть переменные в плагин на скрине, которые меняются по AJAX. Переменную attr[7]. Понимаю что через POST  запрос, но как отслеживать изменения по AJAX? и что значить ajax=1?
https://prnt.sc/SEW9chvGQtT_

Сайт с вашим срином не отображается.

Для работы с атрибутами на странице товара Вам нужен файл - /components/com_jshopping/js/functions.js функция в нем - function reloadAttribSelectAndPrice(id_select)

Пример:
Код
$document = JFactory::getDocument();
$document->addCustomTag("<script type=\"text/javascript\">
reloadAttribEvents[reloadAttribEvents.length] = function(json){
jQuery('#dk-block-m').empty();
if (json.available=='0'){
jQuery('#dk-block-m').prepend('".$onorder."').removeClass().addClass('onorder');
} else {
jQuery('#dk-block-m').prepend('".$instock."').removeClass().addClass('instock');
}
}
</script>");

« Последнее редактирование: 23.11.2022, 16:12:10 от kit2m2 »
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Подскажите я получил переменную. С помощью ее я делаю запрос к БД. И мне нужно это запрос вывести в карточки в зависмости от выбранного аттрибута. Куда дальше смотреть? Не могу понять как сделать вывод по  AJAX
*

kit2m2

  • Живу я здесь
  • 3345
  • 273 / 0
  • Беру сайты на полное сопровождение
Подскажите я получил переменную. С помощью ее я делаю запрос к БД. И мне нужно это запрос вывести в карточки в зависмости от выбранного аттрибута. Куда дальше смотреть? Не могу понять как сделать вывод по  AJAX
Свой код покажите, как Вы это делаете.
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Делаю в плагине. plugins\jshoppingproducts\plq_qtyattribute\plq_qtyattribute.php


Получаю значение использую
Код
class plgJshoppingproductsPlq_qtyattribute extends JPlugin
{
    public function __construct(&$subject, $config = array())
    {
        parent::__construct($subject, $config);
    }

    public $column;


    public function onBeforeLoadDisplayAjaxAttrib(&$view)
    {
        $attr = JFactory::getApplication()->input->get('attr',[], 'array');
        if (!empty($attr) && !empty($attr[7]))
        {
            $attr_size = $attr[7];

        }

        $db = JFactory::getDbo();
        $query = $db->getQuery(true);
        $query
            ->select('count', 'attr_29', 'attr_7')
            ->.......
            ->order($db->quoteName('attr_29'). ' ASC');

        $db->setQuery($query);
        $column = $db->loadColumn();
return $this->column;
}
public function onAfterDisplayProduct(&$view){
        $view->_tmp_var_qtyattribute = "<div class='stock_in stockin_bold col-12 col-md-12 col-xs-12'>
        в наличии в <span id=''>'.$this->column.'</div>'";
    }

Но я понимаю что событие быстрее срабатывает чем я получаю запрос из базы.
Добавил
Код
class plgAjaxPlq_qtyattribute extends JPlugin
    {
    public function onAjaxPlq_qtyattribute()
    {
        echo '123';
    }
    }

?>
И добавил в js файле
Код
jQuery(document).ready(function() {
    jQuery.ajax({
        url: 'index.php?option=com_ajax&group=jshoppingproducts&plugin=Plg_qtyattribute&format=json',
        type: "post",
        success: function(data)
        {
            var response = jQuery.parseJSON(data);
            console.log(data);
        },
        error: function (data) {
            console.log(data);
        }
    });
});
пишет что URL не найден 404.
echo 123 это как пример чтобы вывести
« Последнее редактирование: 30.11.2022, 12:03:05 от Dolphin4ik_1 »
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Вывести результат запроса в БД, в зависимости на какой атрибут выбран (сделан клик).
*

kit2m2

  • Живу я здесь
  • 3345
  • 273 / 0
  • Беру сайты на полное сопровождение
Вы наобум пишите код? Вдруг сработает?

Причем здесь функция - onBeforeLoadDisplayAjaxAttrib с параметром &$view? У нее совсем другие параметры - (&$product_id, &$change_attr, &$qty, &$attribs, &$freeattr, &$request))

Вам нужно в функции public function onBeforeDisplayProductView(&$view) делать свой запрос в базу данных и потом через этот код
Код
$document = JFactory::getDocument();
$document->addCustomTag("<script type=\"text/javascript\">
reloadAttribEvents[reloadAttribEvents.length] = function(json){
... ... ... ...
}
</script>");

отслеживать выбранную опцию атрибута и по условию выводить то что Вам нужно выводить.

А если Вам нужно выводить просто текст, что данная опция в наличии, то можете использовать уже готовый мой плагин - Товар на складе или Товар под заказ для JoomShopping
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

kit2m2

  • Живу я здесь
  • 3345
  • 273 / 0
  • Беру сайты на полное сопровождение
Вам нужно в функции public function onBeforeDisplayProductView(&$view) делать свой запрос в базу данных и потом через этот код
Тут запрос на количество и не нужно делать, эти данные и так есть. Если включить показывать кол-во на складе.

Вот пример как это работает: http://kolsold.ru/neokhmelennye-solodovye-ekstrakty/kontsentrat-pshenichnogo-soloda-svetlyj-kpss

Выберите опцию атрибута "Магазин"...
« Последнее редактирование: 30.11.2022, 14:38:23 от kit2m2 »
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
У меня три склада. И 39, 40, 50 размер. В админке склад1- 39 - 2 шт,  склад2 - 39 - 4 шт, склад3-39- 2 шт
Склад1-40 - 2 шт, склад2-40-3шт, склад3-40-0шт и т.д.

И допустим выбирает 39 размер выводятся остатки по всем складам на склад1-2 шт. , склад2-4 шт. , склад3 - 2 шт. Чтобы отоьражались остатки по складам, в жависимости от выбранного размера(аттрибута)
*

kit2m2

  • Живу я здесь
  • 3345
  • 273 / 0
  • Беру сайты на полное сопровождение
И что? Я должен вникнуть и написать Вам решение для ваших складов?

Вы задали вопрос, я дал Вам несколько подсказок, дал направление куда смотреть. Не можете сделать сами? Могу сделать за Вас, за деньги.
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Просто немного запутался в этой теме вы говорили что запрос нужно делать к БД, по другому никак.

Вывод остатков каждого атрибута в карточке товара
*

kit2m2

  • Живу я здесь
  • 3345
  • 273 / 0
  • Беру сайты на полное сопровождение
Просто немного запутался в этой теме вы говорили что запрос нужно делать к БД, по другому никак.
Это если Вам нужно вывести одновременно количество рядом с каждым атрибутом.
А если только выбранного, то так как я раньше написал.
По умолчанию уже есть данные количества каждого выбранной опции атрибута при ее выборе. Поэтому запрос в базу данных не нужен!
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Да нужно вывести одноаременно количество рядом с каждым атрибутом. Вот и не могу увязать клик(выбор) аттрибута и вернуть результат запроса к БД на страницу товара.
*

kit2m2

  • Живу я здесь
  • 3345
  • 273 / 0
  • Беру сайты на полное сопровождение
Да нужно вывести одновременно количество рядом с каждым атрибутом. Вот и не могу увязать клик(выбор) аттрибута и вернуть результат запроса к БД на страницу товара.
Тогда я не понимаю, что Вы хотите... Зачем Вам отслеживать клик, если у Вас количество будет выводиться статично? У каждой опции свое...
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Получается если атрибут выбран по умолчанию то выведутся остатки каждого аттрибута. (Рзамер 49) - склад1 остатки, склад2 остатки, склад3 остатки. Выберу размер другой(45) то вывод остатков изменится  - склад1 остатки, склад2 остатки, склад3 остатки. ?
*

kit2m2

  • Живу я здесь
  • 3345
  • 273 / 0
  • Беру сайты на полное сопровождение
Вы нормально можете объяснить что Вы в итоге хотите добиться? Можете это сделать в скайпе
Расширения для JoomShopping | Ссылка на Телеграм-канал | Сайты и магазины под ключ: Дизайн, Верстка, Программирование (расширения на заказ), СЕО-оптимизация, Сопровождение, Перенос на Joomla 4+ (5+) и JoomShopping 5+
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться