Василий Наумкин
С нами с 08 декабря 2012; Место в рейтинге пользователей: #1Вчера в 20:17
кнопки для сортировок находятся отдельно от тегаПочему кнопки? Сортировка это обычно выпадающий список, можно ещё переключателями сделать. И список и ...
Sendit и Pagination 2
27 декабря 2024, 15:56
Ух, класс! Вот так работает:
$array = array(111, 112);
if(in_array($modx->controller->resource->get('id'), $array)) {
$modx->regC...
RTE для introtext: помогите пожалуйста с подсказкой 7
27 декабря 2024, 13:50
Огромнейшее спасибо! Работает.
PageBlocks. Удобное управление контентом сайта. 41
26 декабря 2024, 12:43
А как вы в шаблоне письма вывели имя пользователя? У меня просто в шаблоне отрабатывает. А в письме нет.
[[$user.name]]
[[$us...
Sendex - как добавить поле "Имя"? 2
26 декабря 2024, 11:10
Слышу эту песню про программирование — уже с лет 20 точно.
Но пока «мы» даже сверстать макет не можем автоматически, чтобы можно было в продакшен о...
Испытание ИИ Cursor 9
25 декабря 2024, 14:13
В итоге переписала сама. Не знаю можно ли вставлять сюда столько текста, так что чистый JS код, если кому надо, можно найти по ссылке
[xLike] Идеальная система лайков с оптимистичным интерфейсом и правильной формулой 113
24 декабря 2024, 21:46
Это не косяк, это осознанное изменение. Я считаю, что нет смысла показывать «Форма содержит ошибки» и ещё сами ошибки. Однако само сообщение в ответе ...
[SendIt 2.0.0] Пагинация и обновлённая загрузка файлов 28
23 декабря 2024, 18:04
Для версии 3 лучше конечно иметь типа minishop3.
Да для всего этого нужно свободное время конечно же.
minishop2.com. Почему то не хочет в админку сайта заходить 3
23 декабря 2024, 16:08
Добрый день, спасибо за помощь, разобрались на сайте поддержки продукта, сразу просто не увидели там продление поддержки, с Уважением.
Подключение msOptionsColor 2
23 декабря 2024, 03:39
polylang-1.3.16-pl
появились проблемы с кешированием, рандомно не меняется culturekey, после очистки кеша — всё ок
Polylang 142
А как только ты захочешь написать популярное дополнение, которое будет хранить свой контент не в ресурсах, тебе сразу придётся написать еще кучу сниппетов для генерации по ним меню, карты сайта, хлебных крошек и т.д.
То есть, создать параллельную инфраструктуру сайта для твоего допа. Которую людям надо будет осваивать вместо обычной.
Я вот до сих пор этого не сделал, хотя одно время всерьёз над этим подумывал, как вектор для развития miniShop.
Стало быть, храниться в нём будут обычные ресурсы. Вот и подтверждение в процессоре publish на строке 32
Дальше мне копать исходники лень, но вроде и так всё понятно.
И по умолчанию в админке создаётся именно modDocument. Это не для хранения контента? И все сниппеты заточены именно под вывод этих документов, и для построения по ним навигации. Да и поля у этих документов как-бы намекают: published, pub_date, hide_menu, link_attributes и т.д.
Что бы там Джейсон себе не фантазировал, но как только разработчик доходит до мысли, что нужные ему данные проще хранить в своих таблицах, ему резко перестают быть нужны ТВ, шаблоны, чанки и сам MODX.
Потому что он переходит работать на фреймворки, которые создают таблицы и модели гораздо проще и быстрее.
miniShop2 делает так же, но это всё равно ресурсы — они так же попадают в кэш ресурсов сайта и так же приведут к тормозам, если их будет много.
Принципиальной разницы я не вижу.
markdowntohtml.com
Отпускаю с миром.
Потому что, внезапно, скрипты нужно куда-то вставить, для их работы. И если на странице нет body — то вставлять их некуда.
Это после загрузки страницы javascript подставляет количество комментов. Открой исходник страницы и увидишь на месте переменной, что там пусто.
Да и дело даже не в скорости, а в том, что при добавлении нового комментария их общее количество изменится, а склонение — нет.
Поэтому лучше или оставить как есть, без склонения, или делать его на js — и тогда total вообще не нужен.
Так что сейчас у тебя нет этой переменной, он пустая, и количество комментариев выставляется через javascript.
Укажи &setTotal=`1` в вызове TicketsComments, и всё должно заработать.
А вот до сих пор никому было не нужно. Да и сейчас толпы желающих не видно, ты один.
Отсутствие кэширования чего-либо, это не глюк.
Голословно. Fenom выигрывает в производительности за счёт других возможностей.
«Покажи», «кто-то исправил» — хорошо устроился. Тебя волнует — ты и исправляй, не жди никого.
Разрешите выполнять? Бегом?
Ну так ты чего тут сидишь, раз нет проблем?
Да вот вообще никакого желания тратить своё время на тебя нет.
Тему закрываю, всё осудили.
— Fenom дёргает pdoTools::runSnippet()
— Тот дёргает pdoTools::_loadElement()
— Ну а тот делает modX::getObject() для получения содержимого сниппета из БД
Вот и лишний запрос. Наверное, можно переписать так, чтобы без запроса проверять кэш, но пусть это делает тот, кому это сильно надо.
Не нужна работа с файлами, не нужно наследование шаблонов, не нужны циклы и функции, присвоение переменных — не мучай себя, работай с парсером MODX, раз он супербыстрый.
Может потом вдруг окажется, что из-за костылей с парсером, когда нужно вызвать несколько сниппетов, вместо одного цикла, у тебя просадки по скорости выйдут значительно серьёзнее.
Дело не в количестве запросов, а во времени их выполнения.
Но сами теги Fenom в ресурсе остаются, и их Fenom обрабатывает всегда. А вот теги MODX заменяются в кэше на результат, поэтому их парсить повторно не нужно.
Это всё пишу по памяти, могу ошибаться, да и поменять что-то могли.
С Fenom всё иначе, там код есть всегда, но в зависимости от вызова, он либо грузит данные из кэша сниппета, либо работает без него. В любом случае, сами тэги всегда нужно обработать, в кэше они сохранятся как теги, а не как результат.
Лично мне такая более предсказуемая система нравится гораздо больше, чем вечная угадайка с тегами MODX. Работают они, или нет? Что туда попадает, и как отрендерится? Каждый второй совет по проблемам в MODX — это почистить кэш, и регулярный ответ «кэш чистили, не помогает».
Ну а кому ближе логика работы тегов MODX — их и используйте. Бездумное переписывание вообще всего на Fenom не ускорит ваш сайта автомагически, нужно понимать что, где и зачем вы делаете.