Не работает getCollection в консоли

Всем привет!

Столкнулся с необъяснимой ситуацией, сломал с ней голову…

Есть банальный скрипт, который выбирает все ресурсы с определенным TV и он прекрасно работает, НО! только при вызове из браузера. В консоли напрочь отказывается работать. Консоль имею ввиду настоящую, не дополнение к modx.

Код следующий:

<?php

define('MODX_API_MODE', true);
require_once('................./index.php'); // тут полный путь к файлу
$modx = new modX();
$modx->initialize('web');

// здесь проверяем подключился ли modx и он подключился - в консоль выводится заголовок страницы
$res = $modx->getObject('modResource', 1);
echo $res->get('pagetitle');

// а теперь задаем условия выборки для getCollection
$category = 'retail';
$q = $modx->newQuery('modResource');
$q->leftJoin('modTemplateVarResource', 'TemplateVarResources');
$q->leftJoin('modTemplateVar', 'tv', "tv.id=TemplateVarResources.tmplvarid");
$q->where(array(
	array(
		'tv.name'   => 'category', // имя tv по которому ищем
		'TemplateVarResources.value:LIKE' => '%'.$category.'%', // условие поиска
		'deleted' => 0, // не удалён
		'published' => 1, // опубликован
		'publishedon:>' => strtotime(date('Y-m-d')) // опубликован сегодня
	)
));

// получаем все ресурсы с указанной категорией
$resources = $modx->getCollection('modResource', $q);
// и подсчитываем их: по итогу в браузере выводится число таких страниц, НО в консоли выводится 0 (ноль).
echo count($resources);

Подскажите, с чем это может быть связано? Как указал в коде выше, сам modx подключается корректно — просто заголовок страницы в консоль выводится, но getCollection ни в какую не хочет там работать! Пишет, что нулевая выборка. То есть не работает именно getCollection, в то время, как getObject прекрасно отрабатывает.

Спасибо!
Дмитрий
02 февраля 2024, 22:38
modx.pro
841
0

Нужно разработать API для нативного приложения

30 70 000
Добрый день.
Это не интернет-магазин, а накопительная система с QR-кодами.
Есть сайт на MODx, нужно разработать API для нативного приложения (тз внутри). Интересует примерная цена реализации и сроки

техзадание:
Эндпойнты приложение — API:
1. Регистрация карт лояльности (пользователь вводит свои данные и регистрирует себе карточку виртуальную)
2. Подключить существующую карту (ввести номер карты и по нему все данные пользователя должна подтянуться). Вводим номер карты, на номер телефона, который привязан к карте, отправляется смс с кодом. Код верный — авторизируем.
3. Список магазинов (название, адрес, точки координат, фотки)
4. Контент (текстовые страницы: о компании, доставка, оплата, описание системы лояльности, faq. Список акций) Доступен анониму
5. Данные пользователя: имя, телефон, список покупок, бонусы, сколько бонусов скоро сгорит. Список покупок пользователя (название, город, способ оплаты, дата, сумма, полученные бонусы за покупки)
6. Авторизация пользователя OAuth2.0 access, refresh token
anhel123
02 февраля 2024, 15:50
modx.pro
363
0

Не работает текстовое поле в админке Revo на Linux

Всем добрый день! Подскажите, может кто сталкивался, админка на Revo, а точнее редактор в ней, не отображает содержимое текстового поля, то есть нельзя сделать изменения — просто белый фон.

На Windows в любом бразуере все работает корректно. Сайт msch164-fmba.ru/. Может кто сталкивался с проблемой, подскажите?
Валентин
01 февраля 2024, 11:34
modx.pro
305
0

Точки продаж и учет остатков

Всем привет, подскажите пожалуйста, может кто решал подобные задачи.

Требуется полноценный учет товаров и остатков по каждой точке продаж.
Для учета остатков я ранее пользовался msProductRemains — тут все ок, а вот с точками продаж пока не сталкивался, информации тоже пока не нашел.

Есть, конечно, мысль использовать msOptionSeller для точек продаж и к ним подтягивать остатки, но может был у кого реальный кейс — поделитесь направлением
Dima
01 февраля 2024, 11:22
modx.pro
225
0

Определение страны посетителя и вывод ресурсов под это

Всем привет!
Необходимо решение для определения ГЕО а точнее страны посетителя и вывод ресурсов в зависимости от от этого
Есть ли какие то пакеты для этого? Подскажите буду благодарен

при помощи ipinfo.io и js определение происходит но вряд ли есть возможность использовать эти данные для фильтра вывода ресурсов
у ресурсов есть TV поле где перечислены страны для которых ресурс в категории не нужно показывать
так же в самом ресурсе есть строка с надписью «доступно в стране или нет»

знаю про PHP geoip2, даже установил его на сервер, но дальше пока не прошел…

пс есть еще пакет Locator но он пока не завелся, точнее работает криво
Евгений
01 февраля 2024, 01:16
modx.pro
504
0

Перестал работать migx

Вячеслав Варов
31 января 2024, 14:34
modx.pro
526
0

Вопрос по msOptionsPrice2 [2.5.22-beta]

Был куплен msOptionsPrice2 и поставлен поверх старой на MODX Revolution 2.8.6-pl, обновили и пропала вкладка «Модификации», позже прочитав подробнее описание увидели сообщение:

[msOptionsPrice2] — Новая версия с модификациями продукта. Кардинально отличается от предыдущей, просто обновиться не получится.
А самой инструкции как обновиться нет либо из за своей неопытности не видим инструкции. Как видно, что последняя ревизия была от 29.11.2019.

Как можно вернуть эту вкладку или какой то костыль, чтобы вернуть ее?
Denis
31 января 2024, 14:02
modx.pro
351
0

Проблема с pThumb и webp с прозрачным фоном

Не пойму почему при конвертами изображения из png в webp pThumb добавляет белый фон изображению
Вызываю сниппет следующим образом:
{'pThumb' | snippet: ['input' => $params.src, 'debug' => 1, 'options' => 'w=1200&f=webP']}
Пробовал использовать Resizer, но получаю ошибку в консоли

Resizer debug output:
    [0] => Resizer v1.0.1
    [1] => Using GD
    [2] => Input file: assets/images/mobile-app-sm.png
    [3] => Input options: 
  'w' => '608',
  'f' => 'webP'
    [4] => *** Error *** Unable to open image assets/images/mobile-app-sm.png
Файл существует и доступен по адресу «assets/images/mobile-app-sm.png», я пробовал указывать и с слешем в начале и полный url до изображения включая домен, все безуспешно.

Подскажите пожалуйста кто уже сталкивался с такой проблемой

Версия php 8.3 версия modx 2.8.6
Вячеслав Варов
31 января 2024, 12:34
modx.pro
451
0

Низкая скорость сайта с большим количеством товаров

Есть сайт с 14к товарами
насколько я понимаю, для минишопа это не проблема
но он очень долго грузится, т.е. где надо, например, фильтровать все 14к товаров время ожидания ответа сервера 10-15 сек
можно ли как-то ускорить работу фильтров mfilter? вроде читал, что минишоп и 40к товаров может потянуть
alexandr.skyrda
30 января 2024, 15:03
modx.pro
314
0

Проблема со спецсимволами &{' в Fenom, ignore не работает

Всем привет.
Использую MODX Revolution 3.0.4, pdotools-3.0.2-pl, migx-3.0.2-beta1.

{set $faqRubric = $_modx->resource.faqRubrics | fromJSON}

{foreach $faqRubrics as $faqRubricItem}

	<h2>{$faqRubricItem.titleRubric}</h2>

	{set $faqRows = $faqRubricItem.faq | fromJSON}

	{foreach:ignore $faqRows as $idx => $row}
		<h3>{$row.q}</h3>
		<p>{$row.a}</p>
	{/foreach}
	
{/foreach}
Не отображает ничего, кроме html-разметки. Если убираю :ignore, то не работает вообще (белая страница и лог ошибки в админке) из-за того, что в {$row.a} находится скопипастенный текст, в котором встречается мусор в разметке типа такого



В связи с этим 2 вопроса:
  1. Как заставить работать ignore во вложенном цикле?
  2. Естьи какой-то способ очистить контент от таких мусорных тегов с помощью sql, console, еще что-то?
Вручную чистить не вариант, т.к. очень много таких страниц, а весь сайт реализован на pdoTools + Fenom.

Буду благодарен за подсказку.
Anton
30 января 2024, 13:26
modx.pro
512
0