Dmitry Rodionov

Dmitry Rodionov

С нами с 01 сентября 2013; Место в рейтинге пользователей: #155
Dmitry Rodionov
19 мая 2015, 13:44
0
ну тогда наверное выделение пунктов меню будет неверным или же оно будет кешироваться для одной страницы только
Dmitry Rodionov
19 мая 2015, 13:30
0
Интересно было бы ускорить генерацию меню если это возможно, а то на 900 категориях это 10-12 секунд, и при вызове каждой страницы оно кешируется по новой, хотя наверное если ускорять пропадет универсальность…
Dmitry Rodionov
19 мая 2015, 13:20
0
Проверил на 200 категориях уровень вложенности 3, разброс на генерацию от 1.7-2.2c с феномом так же, значит разницы нет.
Dmitry Rodionov
19 мая 2015, 12:44
0
Я так понимаю надо переписать дефолтные чанки например у pdoMenu и включить феном чтобы все работало эффективнее?
Dmitry Rodionov
19 мая 2015, 11:56
0
Надеюсь в будущем это изменится, филосов modSmarty же двигает, но феном реально по скорости и памятижорству эффективнее. Интересно было бы если бы феном вешался на текущие конструкции modx и парсил их)))
Удачи с парсером, мы все с замиранием сердца наблюдаем за этим ;)
Dmitry Rodionov
19 мая 2015, 02:58
0
Можно включить парсер для всего сайта? Например чанки которые не вызываются в pdoTools как парсить?
Dmitry Rodionov
19 мая 2015, 02:51
+1
интересно, перепишу интернет магазин с 10к+ товарами посмотрим прирост
Dmitry Rodionov
18 мая 2015, 20:59
0
Можно вынести глобальные переменные с именами в код страницы а скрипт сделать универсальным если хочется.
Dmitry Rodionov
18 мая 2015, 13:01
0
foreach ($langs as $l) {
    // Если папка соответствует языку, определяем нужный нам язык
    if($lang == $l['value']) {
        $lang == $l['value'];
    }
}
вот эта конструкция вообще что делает?
$lang == $l['value']; вернет true и все, да и если тут присвоение — толку тоже чуть, для чего эта конструкция и выше
// Выбираем все существующие на сайте языки
в данном случае достаточно одной проверки на host_language, если не найден — возвращаем первый контекст, если уж правильнее надо вернуть первый по домену, а не вернуть для несуществующего языка по домену test2.ru домен test1.ru
Dmitry Rodionov
17 мая 2015, 20:10
+1
Если интересует один запрос на чистом SQL это будет как-то так:
SELECT s1.`context_key`
FROM `modx_context_setting` as s1
LEFT JOIN `modx_context_setting` as s2
ON s1.`context_key` = s2.`context_key`
WHERE s1.`key`='cultureKey' AND s1.`value`='ru' AND s2.`key`='base_url' AND s2.`value`='/ru/'

Но тут вопрос что удобнее, Сергей предложил более оптимальный выход — поиск по одному параметру
Dmitry Rodionov
17 мая 2015, 19:59
0
по сути можно получать хост и двухбуквенный язык из url если они жестко заданы и находить по этим параметрам контекст
Dmitry Rodionov
17 мая 2015, 19:33
+1
а в чем проблема совместить? сначала получаем несколько контекстов с нужным http_host, а внутри них уже делаем проверку на base_url
хотя по сути это можно было бы сделать и за один запрос, если оптимизировать код
Dmitry Rodionov
17 мая 2015, 12:53
0
Стоит добавить что при переносе сессии в файлы пропадет возможность доступа к чужим сессиям, это может понадобится для аналитики или чего-то подобного.
Dmitry Rodionov
17 мая 2015, 12:42
0
Так и работает, чем мой пример отличается от этого?
Но если сразу 10 запросов будет, то возникнет проблема которую описал выше, но еще раз, если не понятно:
1)Возьмем modx, установленный и настроенный, например тестовый доступ можно получить по адресу minishop2.com/
2)Заходим в админку, элементы, в чанках категории у нас свернуты
3)быстро разворачиваем все категории, на сколько это возможно человеку
4)все категории развернуты как и надо
5)обновляем страницу — часть категорий все еще свернута
В чем проблема?
Скорее всего в том что одновременные запросы не дают монопольный доступ к сессии.

Если же за место 3го шага мы не быстро, а медленно развернем все категории (с интервалом в секунду-две между разворачиванием категорий), то после обновления страницы, они будут все развернуты как надо, а следовательно правильно сохранится состояние в сессии
Dmitry Rodionov
17 мая 2015, 11:24
0
да, конечно, в предпоследнем сообщении написал об этом, в примере рассмотрел 2 изменения, по факту может быть 10 и больше
Dmitry Rodionov
17 мая 2015, 09:04
0
Проблема с любым обработчиком сессий, без привязки к modx даже, поэтому и задаю вопрос как быть?
Пробовал разные хостинги, начиная от таймвеба, заканчивая собственным дедиком, проблема как при обработке сессий по-умолчанию(файлы) так и через базу. Проблема воспроизводится на любом хостинге.
Dmitry Rodionov
16 мая 2015, 21:49
0
если сам json пустой print_r($json); ничего не возвращает, значит проблема либо в curl либо в хостинге, рой в эту сторону, код же можешь проверить на любом другом хостинге вызывающем доверие
Dmitry Rodionov
16 мая 2015, 09:31
0
А весь JSON ответ какой? там может информация об ошибке?
Dmitry Rodionov
15 мая 2015, 18:24
0
Как минимум не настроены события fancybox на кнопки вообще, поэтому и не работают, там где настроены — картинки — там все прекрасно

P.S. сайт вообще не адаптивен, не то что футер вообще ничего
Dmitry Rodionov
18 марта 2015, 19:51
0
хаха, а я некрофил, дату то увы не подметил верно)