Роман Садоян

Роман Садоян

С нами с 26 июня 2015; Место в рейтинге пользователей: #79
Роман Садоян
28 сентября 2016, 18:55
1
+1
Пользуйся, только осторожно!
Добавил: При восстановлении конфигов — очищает /core/cache
#!/bin/bash

USER=$1
if [ "$USER" == "" ];
then
USER=$(getent passwd $UID | sed -e 's/\:.*//')
fi

# Home directory
HOME=$(getent passwd $USER)
HOME=${HOME#*:/}
HOME='/'$(echo $HOME | cut -f1 -d:)
# Site directory
SDIR=$HOME'/www'
# Backup directory
BDIR=$HOME'/config_backup'

echo 'Running for user "'$USER'"'
echo "Enter mode (1 - backup config; 2 - restore config; 0 - exit):"
read MODE

if [ "$MODE" == "1" ];
then
    if ! [ -d $BDIR ]; then
    echo 'Backup directory '$BDIR' is not exists. Creating'
    mkdir $BDIR
    fi
cp $SDIR/connectors/config.core.php $BDIR
cp $SDIR/core/config/config.inc.php $BDIR
chown -R $USER:$USER $BDIR
echo "Done."
elif [ "$MODE" == "2" ];
then
cp $BDIR/config.core.php $SDIR
cp $BDIR/config.core.php $SDIR/connectors
cp $BDIR/config.core.php $SDIR/manager
cp $BDIR/config.inc.php $SDIR/core/config
chown $USER:$USER $SDIR/config.core.php
chown $USER:$USER $SDIR/connectors/config.core.php
chown $USER:$USER $SDIR/manager/config.core.php
chown $USER:$USER $SDIR/core/config/config.inc.php
rm -rf $SDIR/core/cache/
echo "Done."
elif [ "$MODE" == "0" ];
then
exit;
else
echo "Unknown MODE. Do nothing. Exit."
exit;
fi
Роман Садоян
28 сентября 2016, 16:26
0
Или я снова путано объяснил?
скопировать заранее конфиги в новом месте для сайта, чтобы потом руками не менять везде пути и логин/пароль к БД.
Я вот почему то подумал про конфиги со старого сайта.

А теперь всё ясно, конец беготне по /manager/ /core /connectors/ и правке конфигов.

Закину в избранное, люблю баш скрипты =)

Спасибо!
Роман Садоян
28 сентября 2016, 16:11
0
Так пути то всё равно придется править. Я не прав?
Роман Садоян
28 сентября 2016, 10:47
0
Хмм, а может дело в звёздах?

Покажите правила, глянем что там написано.
Роман Садоян
28 сентября 2016, 00:25
0
Тебя никто не осуждает, твое мнение интересно, скажи пожалуйста, какие были проблемы с кэшем? Просто я при разработке при помощи Gulp, статических шаблонов, реально попарился с отключением кэширования. Не знал что «отключить глобальное кэширование» не отключает его целиком, необходимо было так же отключать частичное кэширование ресурсов.
Кэширование реально мощное, что страницы отдаются практически моментально. При посещении от 1000 пользователей, WP очень сильно начинает грузить сервер, однако MODX на том же сервере держит нагрузку нормально. Я говорю об обычном файловом кэшировании. В WP я использовал WP Cache — но скорость ответа от сервера у MODX выше при равных составляющих.
Расскажи о своем опыте — интересно почитать!
Роман Садоян
27 сентября 2016, 18:54
+1
Минусы, кэширование модх
Ага, такой жирный минус, что приходится на Develop аж 3 системные настройки кэша вырубать, что бы этот монстр перестал кэшировать абсолютно всё.
Если сравнивать механизмы кэширования то MODX тут просто Леброн Джеймс, а WP с Плагином WP Cache — мальчик 3х лет играющий с мячиком.

В целом для визиток-корпоративных-интернет магазинов использую модх
Для блого-ориентированных, портальных wordpress
Правильный выбор инструментов лишает головной боли. Тут согласен, но в портальных использовал бы Modx + Tickets и вот он портал.
Роман Садоян
27 сентября 2016, 13:28
0
Ребята, Вам бы в SLACK

А то здесь лесенки строете))))
Роман Садоян
27 сентября 2016, 10:34
0
Задача не простая, пробовал что-то писать, но не особо получилось.
Роман Садоян
25 сентября 2016, 23:03
0
судя по всему не дружит с 2.4.2 и с 2.4.3, проверил у себя только что.
На том же сервере minishop2 2.4.3 работает на modx 2.5.1 прекрасно.

Решение — обновить MODX до актуальной версии.
Роман Садоян
25 сентября 2016, 19:05
0
Журнал ошибок пуст.

А error.log?
Роман Садоян
25 сентября 2016, 01:38
0
Хоть вопрос был и не про контексты, а в случае если для каждого города создать ресурс-контейнер с его именем, но всё равно спасибо, буду юзать контексты.

P.S. Плюсанул все комменты =)
Роман Садоян
24 сентября 2016, 16:48
0
Общие страницы есть, например Реклама, Контакты, Подукция.
Далее идут города каждый со своими страницами.

В случае с чанками, для того, что бы построить меню от Города до ресурса, мне бы пришлось указывать, что самый первый элемент это контейнер нужного города.
Из-за этого мне бы пришлось использовать разные шаблоны и чанки для городов, а это слишком много. А в случае с контекстом с parent =0 и всё.
Если я не прав, то подскажи как быть.
Роман Садоян
24 сентября 2016, 16:10
0
Затем, что разграничить доступ к админке для разных городов проще и лучше с контекстами, чем ресурсами.

Тогда как я буду строить меню для каждого контекста? Мне нужно будет строить до родительского ресурса — получается я буду плодить чанки и шаблоны.
Роман Садоян
24 сентября 2016, 15:26
0
Павел, а если необходимо организовать более 14 городов.
Где у каждого города свои ресурсы.
Использовать контексты? И если использовать контексты, то как быть с Ajax запросами, когда JS обращается по ссылке к ресурсу с пустым шаблоном, где вызывается сниппет, который отрабатывает этот ajax запрос и выдает результат.
В случае с контекстами url будут следующими: site.ru/msk/ site.ru/spb/ придется плодить данные ресурсы в каждом контексте или обращаться в один контекст?
Роман Садоян
23 сентября 2016, 10:01
+1
if ($modx->event->name == 'OnDocFormSave' ) {
// Делаем проверку на родителя, если нужно
// ID родителя лучше вынести настройку client_config или в настройки
if ($resource->get('parent') == 30) { // Мы получаем id родителя у объекта $resource, где хранится только что опубликованный ресурс
echo 'ok';
}

}
Этот код пишется в плагине, также ставится галочка на событие OnDocFormSave
Роман Садоян
22 сентября 2016, 18:14
0
Это где сие, в плагине?
ты можешь сам написать функционал который организует модерацию статей и сделать пул реквест))) Попутно запулить в документацию как этим пользоваться.
Роман Садоян
22 сентября 2016, 18:13
0
Править исходники minishop2, точнее — править extJS.
А extJS это дебри, не каждый захочет туда лезть.
Роман Садоян
22 сентября 2016, 16:32
+1
Проверь пожалуйста еще функцию
$modx->setPlaceholder
как у ТС.