Андрей Степаненко

Андрей Степаненко

С нами с 28 октября 2014; Место в рейтинге пользователей: #8
Отправить деньги
Андрей Степаненко
20 сентября 2020, 21:53
0
Ну сразу попахивает н… в отношении владельцев.
Интересно есть патент на modx? или можно самим развивать систему не смотрев на перво источники?
Андрей Степаненко
20 сентября 2020, 21:43
0
В общем нужен ряд авантюрных бизнесменов которые вкинуться в развития новой системы modx которая была бы лучше)) Я за.
Андрей Степаненко
20 сентября 2020, 21:40
0
Сразу смущает: — We do not have a roadmap for development and we know what needs to be done to achieve the next release. Где посмотреть?

Вопрос а зачем нужен владелец modx? Если он кинул всех? Получается разработать свою админку, свою систему. Сделал миграцию, объяснить сообществу что те товарищи решили забить на всю систему, и мы можем сделать лучше. Лучше, используя новые технологии, ломаем все что построили, но в итоге получаем лучшую CMSSSS)).
Но если это так то в чем проблема?

Выскажу свою шуточную идею из высказываний про то что modx вроде как не очень: CMS не нужна, CMF не нужна, админка ненужна — идите учиться сразу на бекенд centos nginx elastic php composer npm gulp webpack… В общем полный трешь… — с уверенность можно сказать забудьте про кнопку сохранить в админке)), все делается через консоль…
полная хрень… никогда всех не научишь писать…
Андрей Степаненко
20 сентября 2020, 21:16
0
Modx стоит развивать, но опять же поддерживаю Василия, не так как это делают владельцы. Хотя может есть смысл скинуться и съездить к ним, объяснить, что так делать нельзя)))
Андрей Степаненко
20 сентября 2020, 21:15
+1
Покажите мне дураку решение типа SeoFilter в интернете?
Где оно такое есть?
Андрей Степаненко
20 сентября 2020, 21:05
+1
Нах. даже не стал читать коменты. Помрут все CMS CMF, это для тех кто хоть чу чуть подрос…

Для начинающих: все так же придется скачивать modx и на чем то учится.
CMS CMF вовсе не нужны так как то что в них есть (бэкенд), ты можешь скачать с packagist.org/

А если не владеешь программирование, ну придется вернутся к основам, типа wordpress joomla ну и modx в конце концов)))
Нахер фреймворки: фронтенд… бекенд не разу в жизни никто не отменял.

Знаю, щас польется куча треша. Но ребят))) Взгляните здравым глазом))) Бэкенд — это nginx apache php node? Да это все бэкенд.

Писать с нуля админку как у modx это сделано, да нахер я не готов (Если это утверждение ложно, то где решение? ). Как и большинство. Админка сделана шикарно. И досихпор она рулили.

Весь composer встраивается в modx, но тут увы что бы modx нормально работал нужен пакет который будет устанавливаться во время установки modx)) Дак а какого хера)) ты composer пользуешься)) ты изначально модифицируешь файлы которые хранятся у тебя на компе. Подключить в modx, плевое дело.
Вот пример того как это делается bustep.ru/records/composer/247-napisanie-svoego-paketa-dlya-composer.html

Итог такой: все CMF CMS помрут… Нужен бэкенд через который придется управлять какими то частями сайта, да ты хоть что делай, менеджеру нужно зайти и залить картинку, даже если у тебя приложение на iphone. Кто согласен что реализация админки в modx хорошая, ставьте лайк)) Шутка

Вопрос Василию, есть решение в отношении бэкенда?
Андрей Степаненко
04 августа 2020, 09:33
0
Вы грузите в корневую директорию картинку. Это можно делать только из вкладки Файлы
Андрей Степаненко
18 мая 2020, 11:54
+1
в этом коде нету переменных, там return
Андрей Степаненко
15 мая 2020, 13:57
1
0
В общем вот решение для dev и product
<?php
switch ($modx->event->name) {
    case 'OnHandleRequest':
        // Загрузка общих настроек
        $site_all = MODX_CORE_PATH . 'config/settings/';
        if (file_exists($site_all) and is_dir($site_all)) {
            foreach (glob($site_all . '*.inc.php') as $file) {
                $response = require($file);
                if (is_array($response)) $modx->config = array_merge($modx->config, $response);
            }
        }
        
        // Конфигурация для сайта с конфигом MODX_CONFIG_KEY
        $site_dir = MODX_CORE_PATH . 'config/settings/' . MODX_CONFIG_KEY.'/';
        
        if (file_exists($site_dir) and is_dir($site_dir)) {
            foreach (glob($site_dir . '*.inc.php') as $file) {
                $response = require($file);
                if (is_array($response)) $modx->config = array_merge($modx->config, $response);
            }
        }
        break;
}
Структура папок
core/config/dev.inc.php
core/config/settings/*.inc.php # здесь общие настройки
core/config/settings/dev/*.inc.php # здесь настройки персонально для dev (MODX_CONFIG_KEY)
Андрей Степаненко
15 мая 2020, 13:10
0
В списке городов хранятся синонимы (Москва, Москве) которые так же пишутся в настройки. Ну это уже здесь не обязательно, можно уже ниже вынести в базу или как в твоем варианте в отдельные файлы.
Андрей Степаненко
15 мая 2020, 13:04
0
Делаю чтобы на основе домена подменялась папка с кэшем, чтобы не вызывало проблем с кэшем на страницах.

Написал плагин, который во время сброса кэша срабатывает и удаляет директории с кэшем городов.
Ну и по аналогии обновление ресурсов при сохранении.

В папке
/core/cache/
создаются папки
/core/cache/city/kemerovo
/core/cache/city/moskva
Собственно так и выяснялось что в классе xPDOCacheManager невозможно изменить cache_path

Есть другие разные ухищрения как можно реализовать подобный функционал, сейчас не об этом.

Текущее решение очень простое и работает)
Андрей Степаненко
15 мая 2020, 12:54
1
0
Лучше так
<?php
switch ($modx->event->name) {
    case 'OnHandleRequest':
        foreach (glob(MODX_CORE_PATH . 'config/settings/*.php') as $file) {
            $response = require ($file);
            if (is_array($response)) $modx->config = array_merge($modx->config, $response);
        }
    break;
}
а то если несколько конфигов будет, то MODX_CONFIG_KEY не поможет.
Андрей Степаненко
15 мая 2020, 12:44
0
Оба вариант подходящие. Но они 100% не рассчитаны на менеджеров сайта))
Андрей Степаненко
15 мая 2020, 12:43
0
Это да, но для работы с двумя сайтами одновременно у тебя в любом случае настройки у dev версии будут отличатся от product

Варианты:
  1. Указывать через конфиг config.inc.php (с удалением записи в бд.)
  2. Добавить плагин через modzone.ru/blog/2016/12/23/downloaded-configs-from-files/
Андрей Степаненко
15 мая 2020, 12:32
0
Почти все:
cache_path — однозначно нужно в файле config.inc.php заменять
Андрей Степаненко
15 мая 2020, 12:28
0
проблем с обновлением в любом случае не будет))
Тут проблем в том что если удалишь site_name то при обновлении он заново будет создан.
Андрей Степаненко
15 мая 2020, 11:36
0
а как?))
Пытался найти как изменить cache_path у класса xPDOCacheManager не нашел)
Андрей Степаненко
15 мая 2020, 10:46
0
То же хороший вариант.
А cache_path кажется не получиться сменить?
Андрей Степаненко
14 мая 2020, 14:51
0
про ClientConfig смысла наверное нету все таки упоминать.
Тут идея в том чтобы иметь разные настройки у сайтов и добавлять новые через файл.
С файлом куда проще работать чем с БД, это еще даже если не брать во внимание работу с git.