Возможно уже кто-нибудь сталкивался. Прошу откликнуться. Требуется подключить шаблон от яндекса на БУС. Нам дали Шаблон там находятся классы и обработчик события. Привожу отрывки кода и некоторые файлы.
<?php
namespace PhpInterface\YandexMarket\Trading;
use Yandex\Market;
use Bitrix\Main;
if (!Main\Loader::includeModule('yandex.market')) { return; }
class Environment extends Market\Trading\Entity\Sale\Environment
{
protected function createDelivery()
{
return new Delivery($this);
}
protected function createStore()
{
return new Store($this);
}
protected function createOrderRegistry()
{
return new OrderRegistry($this);
}
}
Я подключил это согласно п.1 статьи Автозагрузка классов 1. Создал папку /local/php_interface/lib/yandex_market в нее поместил файлы environment.php и delivery.php 2. в Папке /local/php_interface создал файл autoload.php
3. В файле /local/php_interface/init.php внес такие строки
Код
<?
require_once($_SERVER['DOCUMENT_ROOT'] . '/local/php_interface/autoload.php');
use Bitrix\Main;
use Bitrix\Main\EventManager;
use Bitrix\Main\EventResult;
use Bitrix\Main\Loader;
use Bitrix\Highloadblock as HL;
use Bitrix\Main\Entity;
$eventManager = EventManager::getInstance();
$eventManager->addEventHandler('yandex.market', 'onTradingEntityEnvironmentBuildList', function () {
return new Main\EventResult(Main\EventResult::SUCCESS, [
'CODE' => 'user',
'ENVIRONMENT' => PhpInterface\YandexMarket\Trading\Environment::class,
]);
});
Обработчик зарегистрировался. Сайт работает, init.php отработал. код в консоли возвращает:
Код
use Bitrix\Main\EventManager;
$handlers = EventManager::getInstance()->findEventHandlers("yandex.market", "onTradingEntityEnvironmentBuildList");
echo var_dump($handlers, true);
Но теперь при работе модуле яндекса возникает ошибка PhpInterface\YandexMarket\Trading\Environment must extends Yandex\Market\Trading\Entity\Reference\Environment for user (100)
Правильно ли я подключил классы и обработчик событий из исходников?
написал: А в настройках ВМ виртуальные диски все подключены? Или может отвалилось что?
В том то и дело, что все подключено, Перепроверил в параметрах VM указан IDE0 диск я там ничего не менял. Винда под hyper-v уже наверное 4 года работает хоть бы что. Линукс в прошлом месяце перезаливал.
Уже во второй раз умирает виртуалка. Версия 7.5.0. Работала под hyper-v, в системе ничего не менялось. При выборе основной загрузки виртуалка зависает, после выбора второго пункта в загрузке система пишет warning /dev/disk/by-label/bxRoot does not exist
Подскажите пожалуйста кто знает, как добавить СВОИ параметры для свойств инфоблока (например каталог) аналогично свойствам яндекса "умные свойства для Маркета"?