Всего 125 986 комментариев

Евгений Webinmd
26 января 2022, 17:14
1
0
можно попробовать использовать родной синтаксис [[!+pageCount]]
Александр Мельник
26 января 2022, 17:13
0
Я понял, спасибо.
Если вы действительно осознанно выбрали typescript а не просто следуя трендам, это приятно и похвально.

А Руслан, простите, я думал это ответил автор заметки.
Giant Dad
26 января 2022, 17:08
0
Ну, так то да, но до того, как отработает pdoPage этот плейсхолдер пустой. А мне нужно подтягивать инфу уже в head
Руслан Сафин
26 января 2022, 16:58
+2
Если проект хоть немного больше сайта каталога, ts в разы ускоряет разработку. С ts видишь подсказки что в находится в объектах, минимизируется количество банальных ошибок (опечатки, перепутал название и т.д.)

Пока сами не попробуете ts сложно объяснить его необходимость… Я после ts, на голом js совсем писать не хочу
Евгений Webinmd
26 января 2022, 16:58
0
для pdoPage в документации указан плейсхолдер pageCount

на феноме наверное будет так
{$_modx->getPlaceholder('pageCount')}
Greza
26 января 2022, 16:33
0
На фронте нет возможности редактировать сообщения или отзывы?
В компоненте не нашел метода editMessage.
Павел Бигель
26 января 2022, 13:18
0
Это должно быть интересно каждому разработчику который хочет повысить свой уровень, учитывая что Ваня нереальный гений. Но при этом не наберешь же джунов на это все, должен быть какой-то бэкграуд в разработке.
Я таких человечков в рамках данного сообщества очень немного
Александр Мельник
26 января 2022, 11:41
0
вы правы. я пока только теоретически рассматриваю этот вопрос, как вообще люди подходят к кешированию данных для фильтра. Хочу так сказать чужого опыта набраться)
Александр Мельник
26 января 2022, 11:40
0
Насчет того, влияет ли последовательность выбора характеристик в фильтре. Вы правы, что не влияет. Но это если говорить о фильтре для покупателя. Ему не важно, сначала он выберет что хочет красную футболку а потом добавит что хочет еще и белые, или наоборот.
Но чаще всего наши СЕО специалисты требуют, чтобы фильтр не был только инструментом для пользователя но был и СЕО инструментом и тут начинается такое… Иногда бывают требования, чтобы урл страницы изменялся так, в какой очередности человек кликает в фильтре. К примеру если сначала на красный а потом на белый, то урл чтобы был
site.com/filter/red-white/
а если сначала на белый а потом на красный, то
site.com/filter/white-red/
и не смотря на то, что оба запроса вернут один и тот же товар, но например это позволит «порадовать» клиента, и показать ему товары сначала красные, а потом уже белые, тоесть «первое слово главнее второго)».
И получается что от очередности выбора характеристики напрямую зависит то, сколько данных нужно кешировать.
Алексей Смирнов
26 января 2022, 11:21
0
В данном случае комбинаций будет 3*3*3 = 27, без учета последовательностей. Да и не будет зависимости от последовательности для БД. Так что всего лишь 27+1 разных запросов закэшировать просто. 1 -й это без фильтра вовсе — тоже кэшируется.
Сергей
26 января 2022, 11:15
0
Спасибо большое, заработало!
Алексей Смирнов
26 января 2022, 11:11
0
Думаю, нужно исходить из того какие тормоза. это 1 сек или 10 сек?
по 2му пункту — я выставляю кеширование БД и как раз для часто используемых вариантов — будет профит.
3. кешировать после изменения менеджером какого то свойства — тоже такая себе затея. это нужно делать если хотя бы 1 день никто лазить туда не будет. и то сомнительное удовольствие для шаред хостингов.
Учитывая что магазины у меня не сильно велики, то без кеша БД или кеш по загрузке (включается в MODX настройке) вполне для 5..10 к товаров уместен.
Если товаров более 10к стоит думать об оптимизации, если фильтрация улетает за 2...3 секунды ожидания.
Александр Мельник
26 января 2022, 11:01
0
исправлю немного сам себя. Формула n! имеет смысл если в фильтре есть разница, в каком порядке выбраны характеристики. Если же нет разницы, то формула должна быть другой и общее количество комбинаций будет меньше, но все равно очень большим.
Сергей
26 января 2022, 10:59
0
[[++site_url]] возвращает ссылку на главную страницу сайта, а мне надо на текущую, только что тестил и с любой формы любой страницы вижу ссылку на главную
А [*uri] на текущую страницу, но как вы правильно сказали только на часть ссылки и еще и текстом
Александр Мельник
26 января 2022, 10:56
+1
Думаю, что [*uri] возвращяет вам лишь часть полного урл, в котором отсутствует host
Тоесть не site.com/news/
а /news/
изза чего почтовая программа не воспринимает это как url и отображает как текст.
Попробуйте превратить это в полный url добавив впереди системную настройку [[++site_url]] (не уверен что правильно написал, уже давно не использую этот синтаксис)
Александр Мельник
26 января 2022, 09:28
0
Еще вопрос из той же серии. Простите, но просто хочу понять ход ваших мыслей.
Вы пишите что начали использовать typescript.
Вы реально ощутили необходимость в строгой типизации данных? Прям поняли, что неудобно работать на чистом js, возникают ошибки изза смены типа переменной?
Или же это просто «плыву по течению» и «модно, стильно, молодежно»?
Или к этому толкают правила компании в которой работаете?

ps. прочел внимательнее и понял, что на изучение ts вас толкнул выбор nest.js
Александр Мельник
26 января 2022, 09:07
0
У меня вопрос, философский. Как раз вчера над ним размышлял и возможно вы поможете.
Вопрос наверное можно сформулировать так — откуда берутся стеки технологий?
Поясню, что я имею ввиду.
Если спросить у разработчика php какую базу данных он использует, 99 процентов ответят что mysql.
Врядли они смогут ответить на вопрос — почему.
Если спросить разработчика на python то ответ будет Postgress.
Если у разработчика на node js — ответ будет Mongo.
Хотя каждая из этих систем может работать с любой из этих баз данных.
Хотелось бы услышать ваш опыт — работая на php вы наверняка использовали mysql, а перейдя на nodejs выбрали mongo. Почему?
Просто потому что как в опыте с «обезьянками в запертой комнате» — здесь так принято?
Или вы провели для себя сравнительный анализ между возможными базами и выбрали mongo как лучшую?
Ведь mongo относится к группе nosql баз данных и чтобы работать с ней — нужно кардинально перестроить голову и мысли в ней, она очень отличается по характеру от mysql.
Futuris
26 января 2022, 09:07
0
slim, composer, orm doctrine, twig, php-di
Ну т. е. это комфортная для вас «творческая» среда, в которой вы, видимо, можете сделать что угодно. А не то, чтобы выбор slim зависел от каких-то специфических требований заказчика.