Вопросы
Как сделать изменение параметров во всех товарах через Console
Добрый день!
Через следующий плагин, меняю в товарах определенного родителя свойства:
Товаров больше сотни, как через console обработать все товары, чтоб не заходить на каждый и не пересохранять????
Нашла следующий скрипт для обработки в консоле, но он не срабатывает, а я не могу понять как исправить:
Через следующий плагин, меняю в товарах определенного родителя свойства:
<?php
if($scriptProperties['mode']=='upd' && $resource->get("parent") == 15){
$resource->set('color_stone', array('--ФИАНИТЫ--','Бесцветные','Черные','Черно-белые','Зелено-белые','Коньячно-белье','Сиренево-белый','Зелено-белые','Цветные', '-Полудрагоценные камни-','Микс','Хризолит','Гранат','Цитрин','Топаз','Аметист','Раухтопаз','Бирюза','Оникс','Кварц зеленый','Ситал','Аквамарин','Александрит','Турмалин','Лондон топаз','Свис топаз','Родолит'));
$resource->set('color_metal', array('белый', 'красно-белый','красно-лимонно-белый','красный','лимонно-белый', 'лимонный'));
$resource->set('size', array('15', '15.5', '16','16.5','17','17.5','18','18.5','19','19.5','20','20.5','21','21.5','22','22.5'));
$resource->save();
}Плагину назначено событие: OnDocFormSaveТоваров больше сотни, как через console обработать все товары, чтоб не заходить на каждый и не пересохранять????
Нашла следующий скрипт для обработки в консоле, но он не срабатывает, а я не могу понять как исправить:
<?php
// Сколько ресурсов обрабатывать за раз
$step = 1;
// Если процесс уже остановлен, сбрасываем OFFSET
if (!isset($_SESSION['Console']['completed'])) {
$_SESSION['console_offset'] = 0;
}
$offset = isset($_SESSION['console_offset']) && $_SESSION['console_offset'] ? $_SESSION['console_offset'] : 0;
// Формируем запрос
$q = $modx->newQuery('modResource');
$total = $modx->getCount('modResource', $q);
// Пропускаем все уже обработанные объекты
$q->limit($step, $offset);
$resources = $modx->getCollection('modResource', $q);
// Обработка
foreach ($resources as $resource) {
print "<p>Processing resource <b>".$resource->get('pagetitle')."</b></p>";
sleep(0.5);
}
// Меняем offset
$_SESSION['console_offset'] = $offset + $step;
if ($_SESSION['console_offset'] >= $total) {
$sucsess = 100;
$_SESSION['Console']['completed'] = true;
unset($_SESSION['console_offset']);
} else {
$sucsess = round($_SESSION['console_offset'] / $total, 2) * 100;
$_SESSION['Console']['completed'] = false;
}
for ($i=0; $i<=100; $i++) {
if ($i <= $sucsess) {
print '=';
} else {
print '_';
}
}
$current = isset($_SESSION['console_offset']) ?
$_SESSION['console_offset'] :
($sucsess == 100 ? $total : 0);
print "\n";
print $sucsess.'% ('.$current.')'."\n\n"; xParser, Fenom и регулярные выражения
В связи с появлением такого нужного дополнения, как xParser, у многих могут возникнуть трудности в процессе парсинга. Ведь зачастую из кода приходится удалять много «мусора» в виде ссылок, скриптов и классов.
Поэтому обращаюсь за помощью к опытным программистам, для которых написать регулярное выражение не составляет труда.
Попробую описать несколько типовых ситуаций, в которых лично у меня возникли затруднения с регулярками, а всех, кто может помочь, прошу отписаться в комментариях. Я и многие другие пользователи будут благодарны за такого рода шпаргалку по регуляркам в xParser и Fenom.
1) Как удалить из текста все ссылки?
Поэтому обращаюсь за помощью к опытным программистам, для которых написать регулярное выражение не составляет труда.
Попробую описать несколько типовых ситуаций, в которых лично у меня возникли затруднения с регулярками, а всех, кто может помочь, прошу отписаться в комментариях. Я и многие другие пользователи будут благодарны за такого рода шпаргалку по регуляркам в xParser и Fenom.
1) Как удалить из текста все ссылки?
{$content | preg_replace : 'регулярка для удаления всех ссылок'}2) Как удалить из текста все скрипты?{$content | preg_replace : 'регулярка для удаления всех скриптов'}3) Как удалить из текста все div-ы с содержимым?{$content | preg_replace : 'регулярка для удаления всех div-ов с содержимым'}4) Как в тексте заменить все div-ы на p?{$content | preg_replace : 'регулярка для замены всех div-ов на < p>< /p>'} Ошибка подключения default.js в minishop 2
Как увеличить время хранения товаров в корзине?
Нужно сделать так чтобы товары хранились в корзине 2-3 недели после того как пользователь их туда добавит. Что нужно для этого сделать? Сейчас товары хранятся в корзине примерно 3 дня.
[РЕШЕНО] Непонятная ошибка "Permission denied"
Переодически крашится сайт
слетает сессия
в ошибках ничего нет
когда очищаю кэш вот что:
P.S.
snippet с id 36 это самописный снипет для крона
слетает сессия
в ошибках ничего нет
когда очищаю кэш вот что:
Консоль запущена...
PHP warning: unlink(/home/asd/sites/asd.ru/core/cache/includes/elements/modsnippet/36.include.cache.php): Permission denied
PHP warning: closedir(): supplied resource is not a valid Directory resource
Очистка основного кэша: MinifyX
Обработка дат автоматической публикации
-> 0 документов было опубликовано.
-> 0 документов было снято с публикации.
Восстановление кэша системных настроек: Обновлено успешно!
Восстанавление кэшей контекстов
-> mgr: Обновлено успешно!
-> web: Обновлено успешно!лечится очисткой папки кэш и затем в менеджере «очистка кэша»P.S.
snippet с id 36 это самописный снипет для крона
mspYandexMoney как протестировать оплату?
Привет всем!
помогите протестировать оплату
на демо сайте установлен minishop2+mspYandexMoney
Логин: s16626
Пароль: 8c79gfq1fukD
Никак не могу провести тестовый платеж с использованием компонента mspYandexMoney.
Зарегистрировал приложение на demomoney.yandex.ru, получил идентификатор приложения и OAuth2 client_secret ну и номер демо кошелька.
Создал 2 странички, одна с ошибками внутри вызов сниппета
помогите протестировать оплату
на демо сайте установлен minishop2+mspYandexMoney
Логин: s16626
Пароль: 8c79gfq1fukD
Никак не могу провести тестовый платеж с использованием компонента mspYandexMoney.
Зарегистрировал приложение на demomoney.yandex.ru, получил идентификатор приложения и OAuth2 client_secret ну и номер демо кошелька.
Создал 2 странички, одна с ошибками внутри вызов сниппета
[[!mspYandexMoneyErrors]] вторая успешной оплаты со сниппетом[[!mspYandexMoneyConfirm]]Все данные внес в системные настройкиMigx вложенные tv, проблемы с источником файлов и путями у него.
Всем привет.
Вопрос такой:
Есть tv типа migx, вкладка формы такая:
У tv contactSliderforMigx вкладка формы такая:
Вопрос такой:
Есть tv типа migx, вкладка формы такая:
[{"caption":"Салон", "fields": [
{"field":"kids","caption":"Детский?","inputTVtype":"checkbox","inputOptionValues":"Да==Да"},
{"field":"name","caption":"Наименование"},
{"field":"adress","caption":"Адрес"},
{"field":"phone","caption":"Телефон"},
{"field":"slider","caption":"Фото слайдера","inputTV":"contactSliderforMigx"}
]
}]contactSliderforMigx это тоже tv типа migxУ tv contactSliderforMigx вкладка формы такая:
[{"caption":"Изображение", "fields": [
{"field":"image","caption":"Изображение","inputTV":"migxImage","sourceFrom":"migx"}
]
}] Простой фильтр умножения
допустим есть продукт
цена его 37руб. он находится в TV [[+product-price]]
и есть количество продукта в TV [[+product-count]] по умолчанию: 10
и есть input во фронтенде
цена его 37руб. он находится в TV [[+product-price]]
и есть количество продукта в TV [[+product-count]] по умолчанию: 10
и есть input во фронтенде
<input type="number" value"[[+product-count]]">теперь я хочу вывести Итоговую цену продукта умноженную на количество вывожу так:Итого: [[+product-price:mpy=`[[+product-count]]`]]в итоге получается 370руб., все ок, но как мне сделать что бы с фронтенда человек ввел свое количество в input, и сразу получил итоговую цену? Не работает обновление настроек секций тикетов? Tickets
Версия плагина 1.9.2
При создании секции все настройки во вкладках дочерние тикеты и рейтинги сохраняются нормально. Но если редактировать в уже созданном разделе с тикетами то сбивается к заводским.
В логах пусто. Кеш/права чистил.
При обновлении сервер возвращает 200 ответ.
Вкладка основные работает как надо.
Может кто сталкивался и знает как поправить?
При создании секции все настройки во вкладках дочерние тикеты и рейтинги сохраняются нормально. Но если редактировать в уже созданном разделе с тикетами то сбивается к заводским.
В логах пусто. Кеш/права чистил.
При обновлении сервер возвращает 200 ответ.
Вкладка основные работает как надо.
Может кто сталкивался и знает как поправить?
[РЕШЕНО] как в minishop2 добавить производителя программно?
Всем привет! Как в minishop2 добавить производителя программно?
Как создать товар программно я нашел, а как создать производителя — не знаю…
UPD: ответ нашел modx.pro/help/3298#comment-25813
Как создать товар программно я нашел, а как создать производителя — не знаю…
UPD: ответ нашел modx.pro/help/3298#comment-25813
