2015-03-18 2 views
1

Я хотел бы создать базовое веб-приложение zend framework2, и мне нужно использовать движок электронной коммерции от Shopware. Мне нужно использовать корзину и функцию проверки, предоставленную Shopware в моем веб-приложении. Мой вопрос будет:ZendFramework 2 интегрирован с Shopware

  1. Как я могу реализовать функцию проверки, предоставляемую магазином (движком электронной коммерции), в мое веб-приложение zf2?
  2. Как выглядит файловая структура (дерево) моего zf2?

Update: В настоящее время моя структура ZF2 подобны enter image description here

+1

Что вы пробовали? – edigu

+0

Я загрузил пакет программного обеспечения и сумел поднять что-то вроде демонстрационной страницы, которую они предоставили. http://en.shopwaredemo.de/ – max

+0

Итак, в чем проблема? – edigu

ответ

1

Вы можете получить доступ к DI-контейнер из shopware со следующим образцом кода:

<?php 
$shopwarePath = '/some/path/where/shopware/is'; 

// initialize shopware autloader 
require $shopwarePath . '/autoload.php'; 

// create and boot kernel/prepare di container 
$shopwareKernel = new \Shopware\Kernel('production', false); 
$shopwareKernel->boot(); 

// get a service from the di container 
$acl = $shopwareKernel->getContainer()->get('acl'); 

/** @var \Shopware_Components_Acl $acl */ 
$acl->isAllowed('local_admins', 'order', 'create'); // returns true 

Чтобы начать фактическую отправку вы должны передать запрос в метод обработки ядер (https://github.com/shopware/shopware/blob/master/shopware.php#L109):

$request = new \Symfony\Component\HttpFoundation\Request::createFromGlobals(); 

$shopwareKernel->handle($request) 
       ->send(); 

Вы также можете преобразовать существующий объект запроса ZF2 в объект запроса, совместимый с магазином, и передать его во внутренний диспетчер. Мы делаем что-то подобное с Symfony Request: https://github.com/shopware/shopware/blob/master/engine/Shopware/Kernel.php#L145

+0

Я работаю над образцом кода, который вы предоставили, и я получаю сообщение об ошибке «Ресурс, не найденный на acl». я что-то пропустил? – max

+0

Является ли установка магазина вашими $ shopwarePath точками для уже настроенных и установленных? –

+0

Я уже установил его через project.dev/install. Я запускаю свое приложение на бродяжнике, я разместил мою структуру древовидной структуры моего проекта в моем вопросе выше. Я могу открыть интерфейс магазина, когда я укажу свой общественный путь на Shopware/shopware.php. Домашняя страница отображается без элементов, но я не могу перейти в корзину покупок или любой другой маршрут. Он всегда отображает ошибку «url project.dev/checkout/cart не найден на сервере». – max

Смежные вопросы