Dan

Dan

С нами с 29 июня 2021; Место в рейтинге пользователей: #149
Dan
Dan
18 мая 2023, 16:27
-1
Вообще не понимаю, что вы пишете. Причем тут msCategory, и где он выводится по умолчанию.
Вы не понимаете как это работает.
У каждого товара может быть ТОЛЬКО ОДНА основная категория, она указывается в бд в поле parent.
При этом товар может быть в других категориях, которые могут не являться дочерними категориями его parent.
В чанке parent — это то число, которое указано в бд у товара, а не то, что вы указали в parents при вызове сниппет msProducts
Dan
Dan
18 мая 2023, 16:18
0
так выводится основная категория товара, а не та, что на странице вызывается.
Как вывести именно ту, которая в вызове msProduct участвует?
Если вы в момент вызова msProducts находитесь на странице нужной категории, то как я и писал выше, в чанке укажите
{$_modx->resource.pagetitle}
так выведется название текущей страницы, т.е. текущей открытой категории, а не основной родительской категории товара
Dan
Dan
18 мая 2023, 16:08
0
Но надо вывести в каждом товаре pagetitle такой категории. А выводится pagetitle только основной категории, а не той, что задана через [[!msProducts?]]
Имеется в виду в карточке товара, находясь на странице категории, вывести название текущей открытой категории? Не совсем понятен вопрос.
Если да, то может покажете как у вас в чанке выводится? Видимо просто
{$parent | resource : 'pagetitle'}
?

Просто в чанке укажите так:
{$_modx->resource.pagetitle}
если включен fenom, если нет, то
[[*pagetitle]]
Dan
Dan
18 мая 2023, 13:58
0
А что конкретно найти не получается?
Dan
Dan
18 мая 2023, 13:54
0
Ну в 15 минут все функции компонента точно не уложить, а если заснять только часть, то недовольных короткой длительностью видео будет точно больше. Лучше в часовое видео прокрутить и найти, что нужно, чем самому полдня потратить, разбираясь в функционале. Имхо
Dan
Dan
17 мая 2023, 18:47
0
Проблема скорее всего не в Migx, а в самих фото. У фото есть метаданные в формате EXIF, в том числе информация об ориентации (альбомная, книжная) камеры в момент фото.
Достаточно все метаданные фото удалить перед загрузкой и все должно быть норм — это можно сделать онлайн.
Dan
Dan
17 мая 2023, 18:41
0
Был компонент ordersUnformed, правда не знаю насколько он актуален, но думаю должен быть, ибо там все достаточно понятно.
Dan
Dan
16 мая 2023, 16:02
0
Вообще запрос возвращает итоговое количество товаров, но не их id. Не уверен, но такой костыль должен сработать.
1) Так как сделать 301 с помощью js нельзя, а придется как минимум юзать php, то создаешь по адресу assets/components/msearch2/js/web/ файл custom.js
2) Копируешь в него код из default.js, находящегося в той же папке
3) Придется каким-то образом выводить id товара в карточке. Например в data-атрибуте или еще как-нибудь.
4) В созданном файле находишь строчку mSearch2.setTotal(response['data']['total']); и добавляешь следующий код после нее:
if (response['data']['total'] == 1) {
   let product_id = //получаешь id единственного товара в результатах. Как получить - зависит от реализации 3-го пункта. 
   $.post(document.location.href, {action: 'sendRedirect', id:product_id}, function(data) {
      console.log(data);             
   });                    
}
5) Создаешь сниппет с любым названием и вызываешь его некешированным на странице каталога, там где вызван mFilter2.
<?php
if (empty($_SERVER['HTTP_X_REQUESTED_WITH']) || $_SERVER['HTTP_X_REQUESTED_WITH'] != 'XMLHttpRequest') {return;}
if (empty($_POST['action'])) {return;}

switch ($_POST['action']) {
	case 'sendRedirect':
                $url = $modx->makeUrl($_POST['id']);
		header("Location: ".$url."", true, 301);
                exit();

		break;
}