Какие альтернативы есть модулю Tickets?
Приветствую.
Какие вы знаете альтернативы модулю Tickets?
Какие вы знаете альтернативы модулю Tickets?
Ссылка для чанка
Как создать ссылку для чанка, или что нужно чтобы передать чанк в ссылку href="", что он открывался при нажатии?
Белый экран после переноса сайта на другой хостинг
Сразу к моему порядку действий, так как я уже 2 дня одну и ту же инструкцию с разных сайтов воплощал.
MODx Revo 3.0.1
PHP Version 7.3.31
Перенос с NIC на Beget
Перед переносом:
MODx Revo 3.0.1
PHP Version 7.3.31
Перенос с NIC на Beget
Перед переносом:
- Захожу в админку и удаляю cash через панель управления
- Отключаю RSS, компрессии и новости
- Ручками чищу еще на FTP папку cash/*
- Один раз даже пробовал отключить френдли сылки (где-то советовали)
- Проверю по списку:
- из админки выкинуло
- в базе данных стоит по 0 для rss и компрессии
- папки с cash пуста
Как можно скопировать контент одного из MIGX TV в другой MIGx TV?
Приветствую друзья, весь интернет перерыл, ничего толкового не нашел. Может тут подскажете решение.
Есть на сайте MIGX TV с большим количеством строк заполненных. Создавая новую страницу, весь этот контент заполнять опять руками нереально, и указать ID страницы что бы взять контент TV с другой страницы тоже не вариант, так как сортировка нужна разная, и в паре строк разница, не все строки нужны. Вижу для себя вариант как то копировать все поля одного MIGX TV от одной страницы к другой. Но вот как?
Буду признателен за любые советы и решения, ссылки, направления куда копать.
Есть на сайте MIGX TV с большим количеством строк заполненных. Создавая новую страницу, весь этот контент заполнять опять руками нереально, и указать ID страницы что бы взять контент TV с другой страницы тоже не вариант, так как сортировка нужна разная, и в паре строк разница, не все строки нужны. Вижу для себя вариант как то копировать все поля одного MIGX TV от одной страницы к другой. Но вот как?
Буду признателен за любые советы и решения, ссылки, направления куда копать.
Как создавать опции msync из списка?
Есть простой список с опциями синхронизациями, нужно их все заполнить из него быстро.
Что пытался:
1) Через newObject но он вообще не находит объект опции, схему смотрел класс копировал. Пытался через $xpdo-> а так же $modx
Что пытался:
1) Через newObject но он вообще не находит объект опции, схему смотрел класс копировал. Пытался через $xpdo-> а так же $modx
$newMsPr = $xpdo->newObject('mSyncProductProperty');
$newMsPr->set('source', 'ТЕСТПРИКОЛ');
$newMsPr->set('type', 1);
$newMsPr->set('target', 'testprikol');
$newMsPr->set('active', 1);
$newMsPr->set('default', 0);
$newMsPr->set('is_multiple', 0);
$newMsPr->set('is_primary', 0);
$newMsPr->save();
2) Пытался с эмулировать запрос. Но получал лишь 401 ошибку. Выполнял в косноли<?php
function transliteCyrilic($value){
$converter = array(
'а' => 'a', 'б' => 'b', 'в' => 'v', 'г' => 'g', 'д' => 'd',
'е' => 'e', 'ё' => 'e', 'ж' => 'zh', 'з' => 'z', 'и' => 'i',
'й' => 'y', 'к' => 'k', 'л' => 'l', 'м' => 'm', 'н' => 'n',
'о' => 'o', 'п' => 'p', 'р' => 'r', 'с' => 's', 'т' => 't',
'у' => 'u', 'ф' => 'f', 'х' => 'h', 'ц' => 'c', 'ч' => 'ch',
'ш' => 'sh', 'щ' => 'sch', 'ь' => '', 'ы' => 'y', 'ъ' => '',
'э' => 'e', 'ю' => 'yu', 'я' => 'ya',
);
$value = mb_strtolower($value);
$value = strtr($value, $converter);
$value = mb_ereg_replace('[^-0-9a-z]', '_', $value);
$value = mb_ereg_replace('[-]+', '_', $value);
$value = trim($value, '_');
return $value;
}
$chars = array("Объем, л", "Номенклатура");
$translated_arr = array();
$createUrl = 'https://example.com/assets/components/msync/connector.php/';
foreach ($chars as $char) {
$params = array(
'action' => 'mgr/property/create',
'id' => '',
'default' => '',
'source' => $char,
'type' => 1,
'target' => transliteCyrilic($char),
'is_multiple' => 0,
'is_primary' => 0,
'active' => 1
);
$myCurl = curl_init();
curl_setopt_array($myCurl, array(
CURLOPT_URL => $createUrl,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => http_build_query($params)
));
$response = curl_exec($myCurl);
echo var_dump($response);
die();
curl_close($myCurl);
}
die();
3) Сделал это всё на питоне, там авторизовывался в адмнке, но так же 401 ошибка.import re
from requests import Session
LOGIN_CONTEXT = "mgr"
RETURN_URL = "/manager/"
USERNAME = "ashdjkashldkfjhasldf"
PASSWORD = "sadkfas;lkdjfh;lasd"
LOGIN_URL = "https://example/manager/"
msync_coonector = 'https://example/assets/components/msync/connector.php/'
def main():
chars = {"Объем, л":"obem__l","Номенклатура":"nomenklatura"}
with Session() as session:
req = session.post(LOGIN_URL, data={"login_context": LOGIN_CONTEXT , 'returnUrl': RETURN_URL, 'username': USERNAME, 'password': PASSWORD, 'login': "1"})
for char_key, char_value in chars.items():
send_params = {
'action': 'mgr/property/create',
'id': '',
'default': '',
'source': char_key,
'type': 1,
'target': char_value,
'is_multiple': 0,
'is_primary': 0,
'active': 1
}
create_property = session.post(msync_coonector, data=send_params, timeout=60)
print(create_property.text)
if __name__ == '__main__':
main()
4) Пытался прям на месте через повторить запрос создания опции через chrome tools, но даже там получил ошибку 401, уверен что это из-за mod http auth MobileDetect и debugParser
Обратил внимание, что при проверке debug-ом страницы, я вижу в том числе и отрендеренные теги {mobile} для десктопной версии. Т.е. mobileDetect уже потом вырезает из фактически отрендеренной страницы лишнее?
То есть бессмысленно рассчитывать на то, что плагин MobileDetect поможет еще и в производительности? Т.е. «тяжелые» менюшки полюбому будут рендериться дважды..(
Кстати, «кастомная модификация» MobileDetect в виде плагина отсюда modx.pro/help/6320
не помогает. Даж не знаю, что делать чтобы избегать рендеринга (и соотв. запросов к БД) в ненужных участках.
То есть бессмысленно рассчитывать на то, что плагин MobileDetect поможет еще и в производительности? Т.е. «тяжелые» менюшки полюбому будут рендериться дважды..(
Кстати, «кастомная модификация» MobileDetect в виде плагина отсюда modx.pro/help/6320
не помогает. Даж не знаю, что делать чтобы избегать рендеринга (и соотв. запросов к БД) в ненужных участках.
Как реализовать замену document.write в сниппете
Подскажите пожалуйста, как можно заменить метод document.write в данном примере
<script type="text/javascript">
cityFields = {
actionUrl: "'.$cityFields->config['actionUrl'].'",
cityInDomain: '.($cityFields->cityInDomain?'true,
mainHost: "'.$hostASCII.'"':'false').'
};
typeof jQuery == "function" || document.write("<script type=\"text/javascript\" src=\"' . $cityFields->config['jsUrl'] . 'web/jquery.min.js\"><\/script>");
</script>
pdoResources внутри модификатора
Здравствуйте!
Хочу создать условие, если в адресной строке браузера url текущей страницы открывается вместе с GET параметром, то выводим форму от easyComm.
Хочу создать условие, если в адресной строке браузера url текущей страницы открывается вместе с GET параметром, то выводим форму от easyComm.
Почему я не могу сохранить данные в 2 новых поля при создании заказа?
При создании заказа, в два поля добавляются данные, но получается так что у меня добавляются и сохраняются дданые лишь в последний стоящий в коде, а не в оба. Все данные работают, если всё пробовать в консоли всё великолепно работает.
$msOrder->set('myfield', $fielddata);
$msOrder->set('myfield2', $fielddata2);
$msOrder->save();
Пытался и так$msOrder->set('myfield', $fielddata);
$msOrder->save();
$msOrder->set('myfield2', $fielddata2);
$msOrder->save();
И разделял даже плагины на отдельные куски, то есть в каждом плагине было по 1 сохранению, но всё так же заполняется только последний, хотя данные для обоих. Отправка файла через Formit (Ajax) добавленный через DropFile (Dropzone, drag&drop)
Я нашел несколько тем на форуме. Перерыл много ссылок но не смог разобраться в самом главном.
Как прикрепить файлы закинутые в Dropzone к отправляемой форме?
Поменять значение input type=file нельзя по соображением безопасности.
Как прикрепить файлы закинутые в Dropzone к отправляемой форме?
Поменять значение input type=file нельзя по соображением безопасности.