Всего 123 810 комментариев

Александр Туниеков
31 октября 2022, 16:45
+1
Добрый день! С кешированием Я написал что у меня получилось. Кешируется массив значений фильтра и id их ресурсов. Первый запуск медленный. Это когда этот массив собирается из базы. Когда кеш массива есть показ страници и ajax-фильтрация происходит быстро. Цифры привел в статье. Сейчас не охота их заного получать.
хочется что то из коробки
Это не ко мне. Я не автор компонента. Обращайтесь к @Илья Уткин
напишите решение до чего добились в производительности
Текушее решение https://gist.github.com/touol/fd1989021270553eafb6c9540f726965
Но оно тоже не идеальное. Сильно не парился. И не понятно почему может и работать и не работать. Например, не работает и вывод дебага начал выводить вдруг заработало.
Если надо чтоб работало из коробки и так как надо, Илью долбите чтоб начал работать над улучшением mFilter2. mFilter2 — компонент платный. Пусть париться тот кто за это деньги получает.
Руслан Алеев
31 октября 2022, 14:35
0
Здравствуйте.
Ну и делать как меню через pdoMenu, в чем проблема-то? =) Тут вопрос верстки больше, нежели остального.
Евгений
31 октября 2022, 14:09
0
Получилось вернутся к данному вопросу?
Евгений
31 октября 2022, 14:07
0
Тоже бьюсь с кешированием, обновился до последней версии, кэш создается, но толку от него нет. для меня например критично посадочные страницы, т.е первый лист они самые трафиковые, и конечно снимут нагрузку с сервера, да и приятнее получать листинг не за 800мс, а за 200. тк все эти кликания по кнопкам фильтра понятно, но до этого вообще может и не дойти. есть костыль от Ильи Уткина ilyaut.ru/cheats/caching-mfilter/ и по нему реально прирост идет. Допилил настройкой ТВ на странице, которая включала костыль для определенных страниц, но хочется что то из коробки)) напишите решение до чего добились в производительности
Артур Шевченко
30 октября 2022, 17:49
+1
Надо ещё удалить из меню и посмотреть в системных настройках параметр extention_packages. Плагины и сниппеты тоже надо удалить. Чанки и если он используется на страницах, то и оттуда тоже.
Игорь
30 октября 2022, 02:13
0
Добрый день. Будет работать с юмани или уже не поддерживается?
Виталий
29 октября 2022, 21:33
0
Александр, спасибо за участие.
1. Правильно конечно было поставить miniShop2, но для функционала задуманного это не надо, так как просто делаю информационный сайт, просто в силу специфики контента присутствует парт каталоги запчастей, вот и возникла мысль может люди кто занимается продажей захотят к себе целевую аудиторию, поэтому максимум на перспективу парсинг пользователей на мыло продавцов запчастей. И да таблица это просто название и артикул + привяжу деталировку и кнопка запроса. Остальные столбцы лишние, страница просто в тесте.
2. Поставщик это просто адресат кому надо отправить запрос.
3.Да все правильно, цель именно такая чтобы запрос ушел только на адрес соответствующий поставщику. Почему выпадающий список, ну вначале дали наводку пойти этим путем, вот как-то и пошло поехало.
P/s в принципе того что хотел я добился, последним костылем было очистка
option
если не выбран поставщик, сейчас хоть до усери жми кнопку пока не выберешь не отправится форма, ну и закрыв ее спокойно можно посмотреть номер поставщика, выбрать и отправить запрос, тем более при закрытии поля не очищаются и заполнять снова не придется останется только выбрать правильного поставщика. Конечно если было бы валидация со столбцом Поставщик, было бы вообще Огонь, но мне такое тяжело осилить. Если у вас есть другие более интересные способы решения было бы интересно послушать.
Александр Мельник
29 октября 2022, 20:12
0
На мой взгляд, правильный алгоритм решения вашей задачи должен быть таким:
— у вас должны быть поставщики в админке, чтобы их можно было создавать, удалять, редактировать.
— к каждому поставщику должен быть привязан email
— у вас на сайте должны быть товары (можно и просто страницы они же ресурсы), и у товара должна быть привязка к поставщику.
— таблица на вашей странице должна формировать сниппетом, который будет выводить товары, получать информацию — как поставщик связан с этим товаров и выводить инфу о поставщике.
— при отправке формы можно пойти 2-мя путями — решением задачи на php или на javascript. Пока не буду запутывать вас как именно это сделать, но да — и в том и в другом случае вам будут нужны знания.
Александр Мельник
29 октября 2022, 20:01
0
Виталий, ответьте пожалуйста на вопросы:
1) как формируется таблица на вашей странице pdfmanual.ru/zakaz-cherez-formu-1? Ее заполняет менеджер руками для этой страницы? Она формируется сниппетом, на основании товаров? Потому что я попробовал найти на вашем сайте первую из строк в этой таблице «Фильтр топливный» и нет такого товара.
2) Что такое «поставщик» в рамках вашего сайта? Это какая то отдельная сущность? Я имею ввиду у вас на сайте где-то в админке есть место, где «создаются» поставщики? Или «поставщик» это просто руками введенное название в таблице на этой странице pdfmanual.ru/zakaz-cherez-formu-1
3) правильно ли я понимаю «идеальный вариант» того, что вы хотите добиться — пользователь в таблице нажимает на кнопку, заполняет данные формы, а вот то на какую почту отправится это письмо зависит от того, какой email у поставщика, который указан в этой строке прайса? Просто решение с выбором поставщика в выпадающем списке несколько странное и наводит меня на мысль, что я не совсем понимаю, чего вы хотите добиться.
Виталий
29 октября 2022, 19:10
0
Артур, по первой проблеме решилось, сменил выводы ошибок, убрал jGrowl, сделал вывод в самой форме, теперь
<option>
если не выбрать поставщика не очищаются.
По вопросу Дело в том, что это не просто текст, а HTML, а с ним можно работать в js. Например можно кнопке, которая открывает модалку, добавить атрибут data-postavshik=«1» и при открытии модалки брать значение этого атрибута и вставлять в скрытое поле формы. если бы я мог платить, я бы не писал в раздел вопросы. Можно по этому вопросу подсказочку или отсылку на пример или мануал.Спасибо.
Сергей
29 октября 2022, 15:36
0
Вроде сделал)
Обновил информацию в посте
Сергей
29 октября 2022, 15:36
0
Спасибо! Обновил пост — добавил решение.
Сделал франкенштейна из разных кусков :)
Алексей Смирнов
29 октября 2022, 00:15
+1
Еще так можно:
<param name="{$option.caption}">{$option.value is array ? (($option.value | join :',') | ucfirst) : $option.value | ucfirst}</param>
Артур Шевченко
28 октября 2022, 18:26
+1
<param name="{$option.caption}">{if $option.value is array}{$option.value|join :','|ucfirst}{else}{$option.value|ucfirst}{/if}</param>
deleted
28 октября 2022, 17:48
+1
Можно сделать сниппет, который будет сам генерировать ссылку
deleted
28 октября 2022, 17:47
0
Костыль конечно, но можно ссылку в кэш писать. В свою папку, чтоб не чистился. Или в extended пользователя.
UPD. Она устареет же, так что не вариант
Константин
28 октября 2022, 17:19
0
Спасибо за подсказку. Получилось вывести. Только не могу понять, как избавится от пробелов. Вроде в чанке все пробелы стер:
{foreach $options as $option}
{if $option.value[0] != ''}
<param name="{$option.caption}">{if $option.value is array}
	{$option.value|join :','|ucfirst}
	{else}
	{$option.value|ucfirst}
	{/if}</param>
	
{/if}
{/foreach}
А выводится с пробелами до и после значения:
<param name="Тип светодиода"> Smd3535 (rgb) </param>