Василий Наумкин
С нами с 08 декабря 2012; Место в рейтинге пользователей: #1Вчера в 23:19
Напишите в раздел работы или сюда ребята, кто свободен, предложат и варианты реализации и цены.
[UserLocation] - Геолокация и выбор города пользователя 26
Вчера в 22:49
Ваша задача решается так:
1. Определяется город.
2. Делается переадресация на соответствующий домен.
Компоненты, которые определяют город я обознач...
Редирект на поддомен региона 3
Вчера в 20:06
Да на чистом modx все работает. У меня тоже все работало до обновлений до версии 3. Сейчас так и выдает ошибку 503.
Перенес сайт на другой хостинг д...
MODX Revolution 3.0.1 14
Вчера в 17:03
@Александр Мельник правильно написал ниже, лучше переделать на minishop2.
Вопрос по SeoFilter и pdoFetch. + migx 6
Вчера в 14:06
Всех приветствую. Не подскажите, как правильно разместить фильтр в такой конструкции?
<?php
foreach ($modx->query($sql) as $k ...
Вопрос по SeoFilter 14
Вчера в 13:35
Мне кажется «Готовые решения» и так отчасти песочница. Я же вот дал ссылку на репозиторий, копируй себе и твори что хочешь))) Другие тоже так или инач...
[СДЕЛАЙ САМ] Ajax Регистрация, Авторизация, Сброс пароля, Редактирование профиля 12
16 мая 2022, 22:01
Если шаблон в файле можно получить содержимое файла file_get_contents(). Если в БД, можно получить $modx->getObject('modTemplate', $templateId); Но...
Как получить контент страницы перед рендером всех тегов и вызовов? 3
Либо через mod_proxy, либо через mod_rewrite.
А если сайтов 2 или более — то нужен Nginx или Apache2, которые будут разруливать запросы.
Очевидно, что на публичных хостингах тебе просто придётся работать с одним из них.
Тут вот люди даже Hello World пока не могут вывести, а потом начнутся вопросы про реактивность, асинхронность и Vuex.
Для того, чтобы это стало простым и клёвым, нужно взойти на определённую высоту. После этого — да, оно всё просто. А вот MODX и WP наоборот кажутся очень сложными и неудобными, вот такой парадокс.
Насчёт ассемблера… Ну как покажешь веб-сайт на ассемблере, тогда и продолжим сравнения.
На MODX и WP можно пилить сайты вообще без знаний, просто кликая мышкой. А Nuxt и прочее Node.js это уже для серьёзных специалистов.
Придётся учиться, но оно того стоит.
Сам Nginx умеет отдавать только статичные файлы, а обработку php он передаёт другому процессу. Как правило, это php-fpm, который непрерывно крутится в памяти сервера. И для запуска нового сайта на хостинге этот процесс нужно перезапускать.
Разница лишь в том, что сервер php запускает ваш хостер. А сервер node.js нужно запускать самому. Но это говорит лишь о неразвитости хостинга для node. Я могу себе представить с будущем хостинги для node, где всё будет настроено так же удобно, как сегодня для php.
Ровно так же Nginx может отдавать обработку запроса в ruby, python, go, опять же в node.js и еще много куда. Сам Nginx этого ничего не умеет, потому что он reverse-proxy server.
Для справки, Apache2 работу с php тоже сам по себе не поддерживает, он это делает через встроенный модуль mod_php, который может быть и отключен.
Работа с БД не зависит от вида сервера — он просто будет выполнять ваш код.
Смысл в том, что после разбора внутреннего тега [[+id]] получается новый тег, например [[~9]], а он уже превращается в ссылку на документ с id = 9.
То есть, нужно парсить этот тег минимум 2 раза — это и есть рекурсия. Так весь MODX и работает, это его чуть ли не основная фишка.
Ну а замена простых плейхолдеров… Самый главный архитектор системы об этом давно знает и ничего менять не хочет.
Хочешь исправить — ставь pdoTools и пользуйся, для того расширения и нужны.
Ты даже кода чанков не привёл, тупо итоговые цифры и заявление, что разницы нет.
Если ты эти тесты проводил на одном сайте, и парсер pdoTools был включен — то поздравляю, ты уже пользовался оптимизациями, потому что pdoParser разбирает простые плейсхолдеры сам, без modTag.
Я прямо сейчас создал 2 сайта на modhost.pro. На один установил pdoTools, а на другой нет.
Тестовый сниппет:
Простейший чанк:
Обрати внимание, что чанк без Fenom, чисто синтаксис MODX.
Смотрим на 10000 проходов, чтобы разницу было хорошо видно:
— MODX без pdoTools — 1.3216 сек (самый быстрый результат, что удалось увидеть)
— MODX c установленным pdoTools — 0.0557 (самый тормозной результат, было и 0.0156).
Внимание, pdoTools просто установлен, и работает по умолчанию. Никаких специальных оптимизаций.Теперь понятно, что парсер MODX без pdoTools просто тормозное говно и твои тесты ни о чём?
Updated 26.04.2022
Попробовал повторить тест еще раз и не смог — оказалось, что я допустил ошибку. Если сниппет использует $modx->getChunk(), то разницы в скорости не будет, потому что pdoParser тогда не работает.
Сниппет должен использовать $modx->getService('pdoTools')->getChunk('test', $data);, тогда всё быстро.
Всё проверил еще раз и накатал новую заметку с результатами.
Как справится парсер MODX с выводом такой ветки комментариев, если он каждый тэг и условие будет превращать в modTag и запускать его parse?
PHP шаблонизатор всё еще только про удобство, а не скорость?
Выводится без кэша, потому что комментарии отличаются для каждого юзера. Админу выводятся удалённые, автору подсвечиваются его ответы и т.д.
Попробуйте это повторить на парсере MODX. Не думаю, что вывод комментариев на сайте это прям такая уж редкая задача.
Правда, народ на запрещённом сайте тоже недоумевает
2. И если я укажу у кнопки определённый параметр, она отрендерится именно ссылкой, но с классом btn. Будет выглядеть как кнопка и работать как ссылка. Непонятно, что тебя смущает в таком функционале.
3. Я .vue файлы в этом репозитории вообще только в примерах нашёл. Может всё на JS и TS, чтобы код было удобнее расширять?
Мне тоже еще далеко не всё в этой либе понятно, но вот расширение компонентов я использую:
Tailwind тупо новый, и я не вижу причин срочно на него переезжать из-за того, что BootstrapVue слишком хорошо документирован =)
В любом случае, это всё вкусовщина, заметка про другое.
Для тех, кто зачем-то 50 раз в раз в неделю скачивает эту библиотеку с npmjs.org
Про Tailwind, если что, я в курсе.
Возможность создавать страницы админки любым удобным спобом была изначально в Revolution, тут я Америку не открыл. Если раньше никто особо этим не увлекался, то и сейчас вряд ли начнёт.
Хотя как минимум MoreGallery и ContentBlocks не используют ExtJS, являясь при этом очень популярными платными дополнениями.
Это ж от разработчика зависит. В моей заметке есть и видео, и картинки — тебе кажется это монстром Франкенштейна? Лично мне нет, в отличие от вёрстки таблицами и кривой мобильной версии.
Есть системная настройка, отключающая загрузку собранных стилей Bootstrap. При желании можно написать свои, идентичные родным админочным. Смотри, опять же, пример с дополнениями от ModMore.
Вряд ли кто-то бы отказался от качественно переписанного интерфейса miniShop2 и Tickets на VueJS, с нормальной адаптивностью.
Скорее о том, как притащить современные технологии. Это для тех, кто не хочет застрять в 2015 году, и я надеюсь, тут таких много.
Много ты знаешь свободных разработчиков, которые решают подобные задачи через написание дополнения, вместо вызова FormIt с костылями?
Да и потом, я конечно мог бы всё это сделать на xPDO и ExtJS, но зачем? Какой в этом интерес, в чём развитие? Где веселье-то, в конце концов?
А так — есть новая заметка на сайте, и заготовка для нового типа компонентов MODX. Может еще и дискуссию в комментариях нагенерируем.