Дмитрий Зарубин

Дмитрий Зарубин

С нами с 29 апреля 2013; Место в рейтинге пользователей: #109

Проблемы с переопределением метода get

Давеча появилась у меня тут работенка. Суть заключается в следующем: у нас есть компонент который при установке создает наследника в том числе и msProduct. Загвоздка появилась при переопределении метода get, в нашем классе он имеет следующий вид:
public function get($k, $format = null, $formatTemplate = null) {
        return isset(array_merge($this->loadData()->_fieldMeta,$this->_originalFieldMeta)[$k])
            ? parent::get($k, $format = null, $formatTemplate = null)
            : $this->loadChars(false)[$k];
    }
При вызове метода в таком виде скрипт просто падает(вызываю во всем известном компоненте Console), и дает информацию о нехватки памяти. Путем несложного копания — «где проблема», пришел в метод loadData() все того же класса msProduct:
public function loadData()
    {
        if (!is_object($this->Data) || !($this->Data instanceof msProductData)) {
            if (!$this->Data = $this->getOne('Data')) {//виснет как оказалось в этом условии
                $this->Data = $this->xpdo->newObject('msProductData');
                parent::addOne($this->Data);
            }
        }
        return $this->Data;
    }
При чем если вызвать этот кусок кода
!$this->Data = $this->getOne('Data')
выше, то ничего не виснет, получается проблема ТОЛЬКО в методе get нашего класса, в остальных все работает отлично. Суть проблемы вроде описал нормально, будут вопросы — задавайте. И конечно же буду рад любой помощи)
Дмитрий Зарубин
08 августа 2018, 12:22
modx.pro
837
0

Запуск процессора msYmarket

Всем добрый день!

Не получается запустить процессор из сниппета. Подскажите что я делаю не так?) А то уже который день мучаюсь.

$yml_response = $modx->runProcessor('mgr/product/run', array('processors_path' => MODX_CORE_PATH.'components/yandexmarket/processors/'));

if($yml_response->isError())
    echo 'error';
echo $yml_response->getResponse();
Дмитрий Зарубин
25 января 2017, 11:47
modx.pro
672
0

Ищем программиста MODX в офис (Днепр, Украина)

365 500
Всем добрый день!
Ищем толкового программиста MODX в Днепре, Украина. У кого есть контакты таких или сами таковыми являются, то пишите на d@moohii.com или звоните по телефону 063 881 41 53.
Дмитрий Зарубин
03 января 2017, 11:16
modx.pro
543
0

Проблемы с событием msOnBeforeAddToCart

Всем добрый день!
Не могу получить никакие данные в этом событии. При возврате что $product, что $count, что $options, в респонсе пусто. Хотя пробовал mscarthandler.class.php передать свою переменную в методе invokeEvent на это событие, и всё ок.
В чём может быть причина?

Update:
Проблема была во мне.) Я пытался увидеть что же приходит в плагин, делая в нем exit() выводя результаты. А он же выводит только строки.
Дмитрий Зарубин
17 декабря 2016, 12:00
modx.pro
1 671
0

ЧПУ фильтр mFilter2

Всем доброго времени суток!
Уже не в первый раз на своих проектах сталкивались с пожеланием сеошников, чтобы часть параметров фильтра была доступна ЧПУ-ссылками и чтобы это было достаточно универсально. Под катом пара решений, которые я старался пилить достаточно универсально, но всё же без небольших костылей не обошлось!)
Дмитрий Зарубин
21 февраля 2016, 23:06
modx.pro
43
7 191
+12

Работа плагина расширения свойств товара

Всем доброго времени суток.
Написал несколько плагинов для расширения свойств по примерам.
winrecovery.ru/ms2plugin.html и с bezumkin.ru
В админке все отлично, а на странице товара выводятся не все поля.
Например [[+brand]] выводит значение, а [[+material]] нет.

Версия движка 2.3.1 (на более старом тоже не срабатывало)
Minishop2 2.1.8-pl3
pdoTools 1.9.4-pl
Дмитрий Зарубин
12 сентября 2014, 13:56
modx.pro
837
0