Василий Наумкин

Василий Наумкин

С нами с 08 декабря 2012; Место в рейтинге пользователей: #1
Василий Наумкин
31 августа 2017, 12:40
0
Ну если из базы пропали — значит, кто-то их удалил.

Причем, не через API, иначе бы они удалились и в Selectel.
Василий Наумкин
31 августа 2017, 09:38
+3
Включаю Fenom и использую extends.
Василий Наумкин
30 августа 2017, 17:49
0
По идее, старый способ подключения классов в новой версии miniShop2 поддерживается, так что нужно искать ошибку или в логах сервера, или в логике сниппета.

Возможно он просто как-то неправильно класс miniShop2 для работы вызывает, или еще что. Попробуй, кстати, у них в сниппете изменить
$miniShop2 = $modx->getService('minishop2');
на
$miniShop2 = $modx->getService('miniShop2');

Код там, конечно, тушите свет. Выставляют всё в плейсхолдеры системы, а потом выводят голый чанк, когда можно было массив плейсхолдеров ему напрямую передать.
Василий Наумкин
29 августа 2017, 15:40
+1
Это я вчера так кое-что починил. Обновись-ка еще раз.
Василий Наумкин
29 августа 2017, 11:17
0
Ну я не знаю, кэш почисти, логи сервера посмотри.

Репозиторий работает как обычно — modstore.pro/extras/home
Василий Наумкин
28 августа 2017, 17:25
0
Как минимум, нужно разобрать 2 тега вместо одного.

Как максимум, потом подобный стиль приводит к такому (сегодня только в другом месте спрашивали)
[[!pdoResources?
        [[+parent:neq=``:then=`
            &parents=`[[+parent]]`
            &sortby=`menuindex`
        `:else=`
            &parents=`0`
            &resources=`[[+resources]]`
            &sortby=`FIELD(modResource.id, [[+resources]] )`
        `]]
        &showHidden=`1`
        &sortdir=`ASC`
        &depth=`0`
        &limit=`[[+limit]]`
	&tpl=`block_tag-row`
	&includeTVs=`[[+image_type]],product_overview-label,content.tag`
	&processTVs=`[[+image_type]],product_overview-label,content.tag`
	&imageType=`[[+image_type]]`
	[[!getUrlParam:neq=``:then=`&tvFilters=`content.tag===[[!getURLParam?&name=`tag`&max=`100`]]``? &name=`tag`]]
	&useWeblinkUrl=`1`
]]

Хотя всё это можно засунуть в один свой сниппет, из которого потом выдать
<?php
if (!empty($_GET['tag'])) {
    $scriptProperties['tvFilters'] = 'content.tag===' . preg_replace('#[^\w]#', '', $_GET['tag']),
}
// ... еще куча своей любой логики

return $modx->runSnippet('pdoResources', $scriptProperties);
И я это еще не самое страшное, что бывает. Когда смотришь чужой проект и пытаешься вникнуть, что происходит в подобном вызове — голова дымится.

То, что система позволяет что-то делать, не говорит о том, что делать так — хорошо и правильно. Но вообще, лично мне пофиг, удачи в разработке сайтов.
Василий Наумкин
28 августа 2017, 14:56
0
Встречный вопросец — а это разве от дополнения зависит?

Пиши код на PHP и node.js который будет тебе всё обновлять на странице.
Василий Наумкин
28 августа 2017, 12:06
0
Потому что MODX сначала разбирает вложенные теги и вставляет результат от них на место вызова.

Вот и работает, хоть и говонокод.
Василий Наумкин
28 августа 2017, 11:59
+1
Если не забивать данные в ресурсы — то проблем вообще никаких не будет.

Да и с ресурсами только одна проблема, что MODX перебирает их все, когда создаёт их карту в кэше и при большом количестве документов могут быть тормоза из-за этого.

А если использовать свои таблицы, то проблеме просто неоткуда взяться. Например, я делал так vrmedia.tv — сотни тысяч разных записей в БД, никаких тормозов.
Василий Наумкин
25 августа 2017, 10:43
+2
Один из вариантов — сохранять в сессии, а в шаблоне доставать через $.session().
В MODX для этого обычно используют массив modX::placeholders, доступ к которому обеспечивается setPlaceholder() и getPlaceholder().
Василий Наумкин
23 августа 2017, 17:46
+4
Занимали ли эти 9307 сайтов более чем 1 Gb каждый?
Не знаю, мы же не храним их бэкапы =)

Полюбому кому то, архив в почте был бы спасением.
Посмотрим, что скажет на это почтовый сервер Яндекс:
telnet smtp.yandex.ru 587
Trying 93.158.134.38...
Connected to smtp.yandex.ru.
Escape character is '^]'.
220 smtp1j.mail.yandex.net ESMTP (Want to use Yandex.Mail for your domain? Visit http://pdd.yandex.ru)
EHLO localhost
250-smtp1j.mail.yandex.net
250-8BITMIME
250-PIPELINING
250-SIZE 42991616
250-STARTTLS
250-AUTH LOGIN PLAIN XOAUTH2
250-DSN
250 ENHANCEDSTATUSCODES

250-SIZE 42991616 означает, что почта Яндекса, например, пропустит не более 43Мб в письме. И это не чистый zip, а в почтовой кодировке, которая только увеличивает архив.

Много сегодня важных сайтов, бэкап которых уместится в 40 мегабайт? Что делать с теми кто не влезет — выгружать на Яндекс.диск и давать ссылку?

Нафига нам это всё надо, если клиент даже не хочет платить? Одни вопросы.
Василий Наумкин
23 августа 2017, 17:20
+1
То он будет повёрнут как надо при генерации превью опцией ar = 1.

Нравится вопросы задавать, взять и попробовать не так интересно?
Василий Наумкин
23 августа 2017, 17:12
0
Да, оригинал на то и оригинал, что никакую обработку не проходит, а просто загружается на сервер.

Сделай еще одно превью большого размера и выводи его вместо оригинала.
Василий Наумкин
23 августа 2017, 16:46
+3
На всех серверах обновил PhpMyAdmin до последней версии, перевёл его на PHP 7.0 и принудительный https.

Немного увеличил лимиты на загрузку и время работы, но гарантий что этого хватит — никаких. Работа с большими базами должна проводиться через консоль, там ограничений по времени нет.
Василий Наумкин
23 августа 2017, 16:44
+1
Кстати в какой раздел Вы бы разместили подобную тематику? (из доступных)
В Twitter, или в Вконтакте.

Если я буду писать про всё наболевшее в раздел «для разработчиков», из него получится мой личный блог. Можно посмотреть, какие сейчас там заметки — вот такие и нужно туда размещать.
Василий Наумкин
23 августа 2017, 16:42
+4
Но для небольших сайтов это было бы спасением.
Наша работа предоставлять хороший сервис, а не спасать забывчивых людей.

Я, почему-то, в любом отпуске проверяю почту, отвечаю на вопросы, оплачиваю ипотеку и не говорю банку «извините, я что-то заотдыхался, как вернусь перечислю деньги, подождите пока». Представляю реакцию банка на такое.

После отключения сайта мы ждём месяц перед удалением всех резервных копий. А нужно, видимо, не меньше полугода ждать, да?

На данный момент, на минуточку, у нас в БД 9307 удалённых сайтов за всё время работы. И где мы должны хранить от них последние бэкапы и на какие средства?
Василий Наумкин
23 августа 2017, 16:27
0
Может кто-нибудь всё-таки решил проблему с переворачивающимися вертикальными фото?
«Проблема» решается чтением документации phpThumb и добавлением параметр ar = 1 в настройки источника файлов.

ar — это Auto Rotate
Василий Наумкин
23 августа 2017, 15:34
+3
Может еще лучше вручную копировать на флешку и привозить домой? Я просто боюсь, что некоторые сайты на 5-10 гигабайт через почту не отправятся.

На мой взгляд, если человек не в курсе, что его сайт не работает пару недель — он ему и не нужен.