Новости Joomla

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

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Подскажите как сделать AJa загрузку материалов в ст модуле mod_article_category? Что то не могу понять что добавить в шаблон вывода
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Подскажите как сделать AJa загрузку материалов в ст модуле mod_article_category? Что то не могу понять что добавить в шаблон вывода
В стандартном модуле такое не сделать:
  • Массив материалов создается в главном файле модуля (mod_article_category.php)
  • В классе хелпера модуля нет нежной функции
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Если переделаю(сделаю свой на основании стандартного) полностью модуль? В хелпер нужно что то добавлять?
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Если переделаю(сделаю свой на основании стандартного) полностью модуль? В хелпер нужно что то добавлять?

Файл: helper.php
Код: php
class ModTestHelper
{
    static function submitAjax()
    {
        // здесь код функции
    }
}

Файл: любой файл альтернативного макета
Код: js
$.ajax({
    data: {
        option: 'com_ajax',
        module: 'test',
        method: 'submit',
        format: 'json'
    },
    method: 'POST',
    dataType: 'json',
    success: function (result) {
        console.log('Result ajax:', result);
    }
});

Подробности здесь: Использование AJAX интерфейса в Joomla!
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

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

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Можете просто мысль направить в йункции в Ajax  я должен написать запрос к БД для выбора количества статей?
Код: php
class ModTestHelper
{
    static function submitAjax()
    {
        $db = JFactory::getDbo();
        $query = $db->getQuery(true);

        $query->select('*')
            ->from('#__content')
            ->where('state = 1')
            ->order('title ASC');

        $db->setQuery($query, 0, 20);
        $items = $db->loadObjectList();
    }
}
или

Код: php
class ModTestHelper
{
    static function submitAjax()
    {
        $app = JFactory::getApplication();

        $model = JModelLegacy::getInstance('Articles',
            'ContentModel', ['ignore_request' => true]
        );

        $model->setState('params', $app->getParams());
        $model->setState('filter.published', 1);

        $model->setState('list.start', 0);
        $model->setState('list.limit', 20);

        $model->setState('list.direction', 'title ASC');

        foreach($model->getItems() as $item)
        {
            // code
        }
    }
}
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Добавил как написано выдает консоль success: false, message: 'Метода submitAjax не существует.', messages: null, data: null}
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Добавил как написано выдает консоль success: false, message: 'Метода submitAjax не существует.', messages: null, data: null}
Имя класса хелпера правильно указали?

Код: php
$input = JFactory::getApplication()->input;
$class = 'Mod' . ucfirst($input->get('module')). 'Helper';
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

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

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Да спасибо поменял. вроде AJAX срабатывает но  в консоль ничего не выводится.

В конце функции submitAjax

Код: php
$items = $model->getItems();
exit(new JResponseJson($items, null, false));
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Warning: Invalid argument supplied for foreach() in D:\OpenServer8\domains\medvestnik.local\components\com_content\models\articles.php on line 587
{"success":true,"message":null,"messages":null,"data":false}

я добавил просто в 
Код
foreach ($model->getItems() as $item) {
           echo '<li class="col-md-4 col-sm-12 col-xs-4 item-news-li">';
            }
я правильно понимаю он мне должен вывести? но выдает предупреждение
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Warning: Invalid argument supplied for foreach()
Функция getItems возвращает не массив, а значит что по вашему запросу выборки ни одного материала не найдено.

Перед foreach добавьте
Код: php
print_r($model->getItems());
будет что ни будь выводить?

я добавил просто в
Если вам надо возвращать просто HTML код, то и так сойдет. Вот только в настройках AJAX параметр dataType измените на 'html'
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

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

Спойлер
[свернуть]

*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Warning: Invalid argument supplied for foreach()
Эта ошибка все ещё есть?
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Да в конце
Покажите полный файла хелпера
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Спойлер
[свернуть]
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Да хер его знает что там не так! Может баг в системе.....
Отключите выводи ошибок да и все
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Спасибо огромное, получилось!
« Последнее редактирование: 26.10.2021, 23:14:33 от Dolphin4ik_1 »
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
но прикол что print_r выводит все. а если его убираю то только предупреждения(

Попробуйте первый вариант (с прямым запросом к БД)
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Единственоое мне вот  в таком виде ответ приходит
Спойлер
[свернуть]

вот код запроса
Спойлер
[свернуть]
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Единственоое мне вот  в таком виде ответ приходит
Правильно! Вот эта строка сработала
Код: php
$items = $model->getItems();
exit(new JResponseJson($items, null, false));
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Вопрос. Я правильно понимаю если я получаю данные в json я и мне нужно допустим только название статьи и картинки мне нужно вытянуть эти данные из json? распарсить что ли)) я должен их в AJAX jquery  преобразовать?
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Вопрос. Я правильно понимаю если я получаю данные в json я и мне нужно допустим только название статьи и картинки мне нужно вытянуть эти данные из json? распарсить что ли)) я должен их в AJAX jquery  преобразовать?
Подготовьте нежные данные на PHP, а в js просто используйте их!
Если для параметра dataType указано json, то функция которая указана в параметре success первым аргументом принимает объект результата (json парсить не надо)
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Подскажите как сделать чтобы в конце не выводилось {"success":true,"message":null,"messages":null,"data":null}
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
Подскажите как сделать чтобы в конце не выводилось {"success":true,"message":null,"messages":null,"data":null}
Код: php
exit(new JResponseJson([], null, false));
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
не убралось, теперь просто выводится {"success":true,"message":null,"messages":null,"data":[]
*

NewUsers

  • Живу я здесь
  • 2310
  • 216 / 0
  • +375 (25) 627-16-99 (WhatsApp, Telegram)
не убралось, теперь просто выводится {"success":true,"message":null,"messages":null,"data":[]
Так я же не знаю в каком формате вы собираетесь возвращать данные!
Поставьте в конце exit; если возвращаете HTML код
Занимаюсь создание расширений для Joomla 4.2.x | Доработка и настройка сайтов. Занимаюсь создание Интернет магазинов с нуля на собственном компоненте + оптимизация загрузки страницы (после предоставляю техподдержку).
*

Dolphin4ik_1

  • Захожу иногда
  • 433
  • 3 / 2
Спасибо огромное все работает, но помледний вопрос. У меня отображается 99 материалов с аяксом я должен подгружать последующие 9 и т.д. это в foreach писать?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Применение ajax (Аякс) в модуле Joomla

Автор tm2010

Ответов: 34
Просмотров: 4768
Последний ответ 26.09.2020, 09:38:35
от b2z
ajax проверку на вход. В стандартном модуле входа?

Автор Dolphin4ik_1

Ответов: 4
Просмотров: 694
Последний ответ 23.07.2020, 15:03:57
от sivers
Ссылки в модуле на сам модуль

Автор SeBun

Ответов: 12
Просмотров: 1584
Последний ответ 06.12.2019, 15:06:38
от Betty1412
Если нужно добавить поле в subform repeatable своим ява скриптом - как сделать?

Автор Progreccor

Ответов: 7
Просмотров: 1093
Последний ответ 03.04.2018, 16:03:54
от Progreccor
Приём и сохранение файлов в модуле Joomla 3.7

Автор Inoken

Ответов: 5
Просмотров: 1112
Последний ответ 06.10.2017, 12:03:15
от Inoken