Дублируется один товар в каталоге
Всем здравствуйте, возникла ситуация, когда в каталоге выводится (дублируется) один и тот же товар 5 раз. Уже переписал чанки вывода, все равно 5 раз дублирует…
Может кто-то сталкивался с такой ситуацией?
Можете подсказать в какую сторону смотреть.
Вывод товаров такой:
Может кто-то сталкивался с такой ситуацией?
Можете подсказать в какую сторону смотреть.
Вывод товаров такой:
Не могу настроить зависимые фильтры в mFilter2
Всем здравствуйте!
Не могу настроить зависимые фильтры в mFilter2
Документацию по mSearch2 читал, там прям скрипт готовый есть.
docs.modx.pro/komponentyi/msearch2/tipovyie-resheniya/zavisimyie-filtryi
И он отлично работает, только одно НО, при условии — марка: Ford, модель Ford Galaxy (то есть название модели включает в себя марку).
А у меня в базе модель просто Galaxy (без Ford) и базу быстро не поменяешь 35 тыс товаров.
Хоть js я и начал учить, но не получается пока, не хватает знаний), я так понимаю data-атирибуты нужны в модели?
Вот такой вопрос собственно, может ли кто-то помочь, может у кого-то есть наработки такие, код или встречался с похожей ситуацией?
Буду признателен за помощь, спасибо!
Не могу настроить зависимые фильтры в mFilter2
Документацию по mSearch2 читал, там прям скрипт готовый есть.
docs.modx.pro/komponentyi/msearch2/tipovyie-resheniya/zavisimyie-filtryi
И он отлично работает, только одно НО, при условии — марка: Ford, модель Ford Galaxy (то есть название модели включает в себя марку).
А у меня в базе модель просто Galaxy (без Ford) и базу быстро не поменяешь 35 тыс товаров.
Хоть js я и начал учить, но не получается пока, не хватает знаний), я так понимаю data-атирибуты нужны в модели?
Вот такой вопрос собственно, может ли кто-то помочь, может у кого-то есть наработки такие, код или встречался с похожей ситуацией?
Буду признателен за помощь, спасибо!
Не работает json_encode, мешает fenom
Всем привет, задрался гуглить. Плз, хелп:
Имеется сниппет
Я подозреваю, что после кодирования массива в json парсер еще раз вызывается зачем-то и спотыкается об эту фигурную скобку. И все ломается
Что интересно, этот же код не вызывает ошибку, если тестировать в modalConsole
Полный код сниппета:
Имеется сниппет
$array = [
'parents' => '5',
'limit' => '0',
'includeTVs' => '
gallery,
price,
seats,
year,
',
'where' => '{"template:=":3}',
'return' => 'json'
];
$output = $modx->runSnippet('pdoResources', $array);
$output = json_decode($output, true);
...
...
print_r(json_encode($arr);
Белый экран, а в журнале Unexpected token ':' in 6659645b22726b14e4c56b6a41d87d64 line 16, near '{"catid":' <- there
При том, что если массив $arr не пытаться декодить, то он прекрасно выводится.Я подозреваю, что после кодирования массива в json парсер еще раз вызывается зачем-то и спотыкается об эту фигурную скобку. И все ломается
Что интересно, этот же код не вызывает ошибку, если тестировать в modalConsole
Полный код сниппета:
<?php
$array = [
'parents' => '5',
'limit' => '0',
'includeTVs' => '
gallery,
price,
seats,
year,
',
'where' => '{"template:=":3}',
'return' => 'json'
];
$output = $modx->runSnippet('pdoResources', $array);
$output = json_decode($output, true);
$arr = [];
foreach($output as $o){
global $modx;
$pids = $modx->getParentIds($o['id'], 10, array('context' => 'web'));
$gal = [];
foreach($o['tv.gallery'] as $g){
$gal[] = $g['image'];
}
$a = [
"catid" => $pids[0],
"id" => $o['id'],
"title" => $o['pagetitle'],
"uri" => $o['uri'],
"year" => $o['tv.year'],
"seats" => $o['tv.seats'],
"price" => $o['tv.price'][0],
"gallery" => $gal
];
$arr[] = $a;
}
print_r(json_encode($arr));
Как добавлять свои таблицы в modx 3.0.1 ?
До выхода 3 версии modx отлично работали CMPGenerator, CMPGeneratorPro и UICMPGenerator
Есть аналоги для 3 версии?
Есть аналоги для 3 версии?
Переменная в пути обьекта в FENOM
Подскажите, может кто знает как подставить переменную в путь объекта?
Например итоговый вывод такой: $resp->material->wall->width, но нужно что-то на подобие $resp->material->($type)->width. То есть часть пути объекта является переменной. Всю голову сломал.
Вижу, что есть не понимание — пожалуй напишу детский пример.
Есть 3 значения в объекте $resp, которые нужно перебрать: wall, ceil, floor методом foreach. Внимание вопрос: как можно подставить переменную чтобы fenom сработал?
Например итоговый вывод такой: $resp->material->wall->width, но нужно что-то на подобие $resp->material->($type)->width. То есть часть пути объекта является переменной. Всю голову сломал.
Вижу, что есть не понимание — пожалуй напишу детский пример.
Есть 3 значения в объекте $resp, которые нужно перебрать: wall, ceil, floor методом foreach. Внимание вопрос: как можно подставить переменную чтобы fenom сработал?
{foreach ['wall','ceil','floor'] as $type}
{$resp->material->($type)->width}
{/foreach}
Modx. Любые внутренние страницы сайта открываются с ошибкой 500?
Главная страница сайта работает без проблем.
При открытии любой внутренней страницы типа:
— site.ru/uwheru/
— site.ru/oiwer.html
Браузер показывает ошибку:
«Страница недоступна. Сайт site.ru пока не может обработать этот запрос.
HTTP ERROR 500»
Сайт работ на modx. Ошибки в файлах логов (/var/www/1diplom/data/www/site.ru/core/cache/logs/error.log):
При открытии любой внутренней страницы типа:
— site.ru/uwheru/
— site.ru/oiwer.html
Браузер показывает ошибку:
«Страница недоступна. Сайт site.ru пока не может обработать этот запрос.
HTTP ERROR 500»
Сайт работ на modx. Ошибки в файлах логов (/var/www/1diplom/data/www/site.ru/core/cache/logs/error.log):
(ERROR @ /var/www/1diplom/data/www/site.ru/core/components/ajaxform/model/ajaxform/ajaxform.class.php : 74) PHP warning: file_put_contents(/var/www/1diplom/data/www/site.ru/assets/components/ajaxform/js/config.js): failed to open stream: Permission denied
[2022-07-26 11:09:42] (ERROR @ /index.php) Error HY000 executing statement:
Array
(
[0] => HY000
[1] => 3065
[2] => Expression #1 of ORDER BY clause is not in SELECT list, references column '1diplom_diplom1.tvtpl.rank' which is not in SELECT list; this is incompatible with DISTINCT
)
Доработки на сайте
30 50 000
Добрый день, нужно реализовать на сайте указанный в ТЗ функционал с версткой и мобильной адаптацией
docs.google.com/document/d/1T6_hJ_rYLtFltcxH2wm6ZwjQCdTY4Sx4_KoPuL9d_Is/edit?usp=sharing
Почта для связи — info@dolmax.ru
Или вацап — 89117671829
docs.google.com/document/d/1T6_hJ_rYLtFltcxH2wm6ZwjQCdTY4Sx4_KoPuL9d_Is/edit?usp=sharing
Почта для связи — info@dolmax.ru
Или вацап — 89117671829
Загрузка файла в tickets
Делаю на tickets каталог с возможностью добавления анкеты зарегистрированным пользователем, проверкой этой анкеты админом и публикацией анкеты после проверки. Анкета после добавления имеет статус не опубликовано, до момента пока админ не проставит галку опубликовано. В анкете застрял на добавлении видео-файла.
ДАНО:
1) TV *video
2) чанк tickets.form.create.tpl создания самой анкеты:
Проблемы:
1) Видео файл передается в папку video в корне, но не отображается в TV video в самом документе.
2) Видео файл не передается при редактировании формы при tickets.form.update.tpl
3) При создании нескольких анкет файлы в папке видео просто затираются и в паке остается только один последний файл.
Есть ли у кого-то готовый рабочий пример передачи файла через тикет? Думаю, что накосепорил с событием и самимb чанками создани и обновления анкеты. Передаются все ТВ, загрузка изображений через msgallery, но один ТВ файл не хочет заводиться.
ДАНО:
1) TV *video
2) чанк tickets.form.create.tpl создания самой анкеты:
<form class="well create" enctype="multipart/form-data" method="post" action="" id="ticketForm">
...
<div class="col-md-12 col-sm-12 mt-2">
<label for="ticket-photo">Insert video (maximum size 3 Mb, only mp4)</label>
<div class="custom-file">
<input type="file" class="custom-file-input" name="video" id="video">
<label class="custom-file-label" for="customFile">Choose video file</label>
<span class="error" id="error_video"></span>
</div>
</div>
3) чанк tickets.form.update.tpl обновления анкеты после публикации (на случай испарвления)<form class="well update" method="post" action="" id="ticketForm">
....
<div class="col-md-12 col-sm-12 mt-2">
<label for="ticket-photo">Insert video (maximum size 3 Mb, only mp4)</label>
<div class="custom-file">
<input type="file" class="custom-file-input" name="video" id="video">
<label class="custom-file-label" for="customFile">Choose video file [[+video]]</label>
<span class="error" id="error_video"></span>
</div>
</div>
4) Плагин, который запускается по событию OnBeforeDocFormSave. На OnDocFormSave форма после нажатия сохранить вообще зависает.<?php
if ($modx->event->name == 'OnBeforeDocFormSave') {
if($mode == 'new'){
if (!empty($_FILES)) {
$id = $resource->get('id');
$folder = 'video'; // имя папки куда грузить, должна быть создана (в корне сайта)
$path = MODX_BASE_PATH.'/'.$folder.'/'; // Путь от корня до нужного места
$tv_name = 'video'; // имя нашей тв
// все значения файла
$nameFile = $_FILES['video']['name'];
$typeFile = $_FILES['video']['type'];
$tmpNameFile = $_FILES['video']['tmp_name'];
$sizeFile = $_FILES['video']['size'];
$limit_size = 3*1024*1024; // 3 Mb - максимальный размер загружаемого файла
$file_types = array("mp4", "MP4"); // доступные расширения для загрузки
$extensionFile = substr(strrchr($nameFile, '.'), 1); // получаем расширение файла
$NewNameFile = 'id_'.$id.'_'.date("m_d_y").'.'.$extensionFile; // наше новое имя файла
if(is_uploaded_file($tmpNameFile)) // проверяем зашёл ли файл
{
if($limit_size > $sizeFile)
{ // Проверка на размер
if(in_array($extensionFile, $file_types)){ // проверка на тип
move_uploaded_file($tmpNameFile, $path.$NewNameFile); // загрузка файла
$resource->setTVValue($tv_name, $folder.'/'.$NewNameFile); // запись в ТВ
}
}
}
}
}
}
5) Создан источник файлов Video и выбран для TV video в настройках самого TVПроблемы:
1) Видео файл передается в папку video в корне, но не отображается в TV video в самом документе.
2) Видео файл не передается при редактировании формы при tickets.form.update.tpl
3) При создании нескольких анкет файлы в папке видео просто затираются и в паке остается только один последний файл.
Есть ли у кого-то готовый рабочий пример передачи файла через тикет? Думаю, что накосепорил с событием и самимb чанками создани и обновления анкеты. Передаются все ТВ, загрузка изображений через msgallery, но один ТВ файл не хочет заводиться.