Всего 101 368 комментариев

Павел Голубев
Вчера в 10:20
0
А как у вас Modx видит 1С? Они физически находятся на одном сервере, объединены в сеть по VPN, 1С доступна из вне или еще как-то?
Павел Бигель
Вчера в 10:17
0
Ровно до первых нестандартных кейсов)
Роман Ильин
Вчера в 10:16
+1
[[+tag:getTvKey=`[[!+tagKey]]`]]

Сниппет getTvKey
<?php
if(empty($options))return $input;

if(gettype($id) != "number") {
    $tv = $modx->getObject('modTemplateVar',array('name'=>$options));
    $id = $tv->get('id');
}

$a = $modx->getObject('modTemplateVar', $id);
$b = explode('||',$a->get('elements'));
foreach($b as $key => $value):
    list($text, $number) = explode('==',$value);
    if($number==$input)return $text;
endforeach;
Александр
Вчера в 10:01
+1
Нашел модификатор, но он работает только с тегами modx — [[*country:tvkey]].
Если вызвать в феном {$country|tvkey} — выводит ошибку.
$result = [];

$tv = $modx->getObject('modTemplateVar', array('name' => $name));

$delimiter = $tv->get('output_properties')['delimiter'];
$input = explode($delimiter, $input);

$tvElements = explode('||', $tv->get('elements'));
$tvElementsArray = [];
foreach ($tvElements as $tvElement){
  $item = explode('==', $tvElement);
  $tvElementsArray[$item[1]] = $item[0];
}

foreach ($input as $value){
  $result[] = $tvElementsArray[$value];
}

return implode($delimiter, $result);
Максим
Вчера в 09:39
0
Проблема была в mod_security, проверить включен ли он можно через
<?php
    phpinfo();
?>
Если включен, то нужно попросить хостера выключить
Михаил
Вчера в 09:19
0
Ну я бы не сказал, что он не очень. При определенном допиливании справляется
Павел Бигель
Вчера в 09:16
0
Тоесть вы создаете php class Product, описывая в нем свойства товара?
Да
Вот это вообще не понял. Под моделью вы понимаете терминологию MODX? тоесть модель это файловое отображение таблицы в базе данных? Вы создаете таблицы в базе свои? Что значит промежуточное состояние?
Модель это класс. Промежуточное состояние может быть разным. В моем случае это json файлы.
Тоесть в директории products у вас на скрине что хранится? Файлы json где в каждом файле один товар?
А после этого вы запускаете какой-то свой скрипт, который считает json файлы и запускает процессор создания товара?
Да, все верно
Роман Ильин
Вчера в 09:13
0
у моего компонент есть зависимость от другого компонента AjaxForm, который тоже использует jQuery
В один прекрасный день AjaxForm обновится, уберет из себя jquery и все сайты с вашим дополнением сломаются.

Поймите, что разработка для себя кардинально отличается от разработки для сообщества. Для себя вы хоть на Mootools можете писать, никто слова против не скажет, для сообщества нужно поддерживать современные стандарты и качество кода, тем более раз уж взялись всё переписать с чистого листа.
Александр Мельник
Вчера в 09:04
0
Так, а для особо «одаренных» можно поподробнее.
Вам 1с предоставляет файлы с данными в формате xml.
описывается класс конкретной сущности с которой вы будете работать.
Тоесть вы создаете php class Product, описывая в нем свойства товара?
Когда модели описаны, можно перейти к непосредственному переводу модели в какое-то промежуточное состояние — допустим JSON объект.
Вот это вообще не понял. Под моделью вы понимаете терминологию MODX? тоесть модель это файловое отображение таблицы в базе данных? Вы создаете таблицы в базе свои? Что значит промежуточное состояние?
В данном моменте важно, чтобы данные где-то сохранялись, для того чтобы функция загрузки работала
Тоесть в директории products у вас на скрине что хранится? Файлы json где в каждом файле один товар?
А после этого вы запускаете какой-то свой скрипт, который считает json файлы и запускает процессор создания товара?
Роман Ильин
Вчера в 08:53
0
Отличная тема, поддерживаю продолжение!
Павел Бигель
Вчера в 08:33
+1
Спасибо!
mSync решение не очень, уж в очень идеальных условиях оно работает
Sem
Sem
Вчера в 08:27
0
Очень интересную тему затронули. Продолжайте, поделитесь своим опытом.
У меня в последнее время стали часто появляться задачи по интеграции небольших магазинов и
сейчас в сайтах на MODX это решается либо компонентом mSync, когда нужна периодическая выгрузка или обмен заказами или когда клиент хочет прям полную интеграцию, тогда стандартный REST API в 1С — плюсом такого решения является отсутствие необходимости в 1С-специалисте, коих сейчас трудно найти.
Всё, что нужно это опубликовать 1С на веб-сервере и поставить одну галочку включения REST интерфейса.
Дальше всё делается со стороны web-разработчика. Сейчас детально изучают эту тему — мне кажется это наиболее оптимальный способ интеграции с 1С как для малых так и для больших магазинов.
Андрей Степаненко
Вчера в 06:52
+1
Лучше не использовать, если в штате нету опытного программиста 1с.
в 1с так заведено, что если ты что то доработал, то при обновлении 1с, ты в ручную все будешь по новой внедрять.
vectorserver
Вчера в 06:31
+2
Согласен, но есть и другие обозреватели Safari, Edge и др кроме хрома (эмуляторы этих браузеров порой не правильно отрабатывают).

ЗЫ — делал чисто для своего удобства (не комерс)
R2m0x94 (Vasily)
Вчера в 00:19
0
Вообще пропали файлы с вкладки ФАЙЛЫ, в базе есть, в источнике лежат. Ошибка качует с 2019.02
Unknown column 'tag' in 'field list'
Александр
06 апреля 2020, 22:49
0
Спасибо, работает!
А в феном есть модификатор?
Баха Волков
06 апреля 2020, 22:23
0
Для этого нужно написать плагин, штатными средствами сделать не получится
Сергей
06 апреля 2020, 20:58
0
Я так полагаю это надо делать через Tagger…