Тема пакета Orocommerce не найдена в веб-панели сборки или администратора

#php #symfony #orocommerce

Вопрос:

У меня есть несколько неудачных попыток создать пакет без успешного результата.

Сначала я устанавливаю orocommerce, как информацию о https://doc.oroinc.com/4.1/backend/setup/dev-environment/ (проект форка на https://github.com/juankav89/orocommerce-application, выполните установку composer —prefer-dist и php bin/console oro:установите —env=prod —тайм-аут=2000

Затем я создаю папки и файлы пакета, и когда пытаюсь активировать пакет, покажите мне следующий результат (первая команда «Очистить кэш» и следующая команда «удалить php bin/console oro:активы:сборка боготы«):

 

Building assets.
'/usr/local/bin/node' './node_modules/webpack/bin/webpack.js' '--hide-modules' '--env.theme=my_theme' '--env.stats=' '--env.symfony=dev' '--colors'
/home/juan/atlantictSoft/orocommerce/node_modules/webpack-cli/bin/cli.js:93
                                throw err;
                                ^

Error: Theme "my_theme" doesn't exists. Existing themes:admin.demo, admin.oro, blank, embedded_default, default, custom, view-switcher
 

Когда я пытаюсь установить пакет (с помощью команды php bin/console oro:assets:install), не показывайте мне ошибки, но не включайте пакет в php bin/консоль отладка:контейнер —параметр=ядро.пакеты —формат=результат json.

Далее я включаю структуру моего пакета:

 orocommerce
...
├── src
│   ├── AppCache.php
│   ├── AppKernel.php
│   ├── Bogota
│   │   └── Bundle
│   │       └── NewBundle
│   │           ├── BogotaNewBundle.php
│   │           └── Resources
│   │               └── config
│   │                   └── oro
│   │                       └── bundles.yml
│   ├── MedellinBundle
│   │   └── Resources
│   │       ├── public
│   │       │   └── images
│   │       │       ├── descarga.png:Zone.Identifier
│   │       │       └── logo.png
│   │       └── views
│   │           └── layouts
│   │               └── first_theme
│   │                   └── theme.yml
│   └── teste
│       └── Bundle
│           └── TesteBundle
│               ├── Resources
│               │   ├── config
│               │   │   └── teste
│               │   │       ├── bundles.yml
│               │   │       └── bundles.yml:Zone.Identifier
│               │   ├── public
│               │   │   └── theme
│               │   │       ├── favicons
│               │   │       │   ├── favicon.ico
│               │   │       │   └── favicon.ico:Zone.Identifier
│               │   │       ├── images
│               │   │       │   ├── logo.svg
│               │   │       │   └── logo.svg:Zone.Identifier
│               │   │       └── scss
│               │   │           ├── components
│               │   │           │   ├── top-bar.scss
│               │   │           │   └── top-bar.scss:Zone.Identifier
│               │   │           ├── settings
│               │   │           │   ├── _colors.scss
│               │   │           │   ├── _colors.scss:Zone.Identifier
│               │   │           ├── styles.scss
│               │   │           ├── styles.scss:Zone.Identifier
│               │   │           └── variables
│               │   │               ├── top-bar-config.scss
│               │   │               └── top-bar-config.scss:Zone.Identifier
│               │   └── views
│               │       └── layouts
│               │           └── theme
│               │               ├── config
│               │               │   ├── assets.yml
│               │               │   └── assets.yml:Zone.Identifier
│               │               ├── theme.yml
│               │               └── theme.

 

Я проверяю, правильно ли определены пространства имен и имена файлов; ex Bogota Bundle:

src/Богота/Пакет/NewBundle/Ресурсы/конфигурация/oro/пакеты.yml

 bundles:
    - BogotaBundleNewBundleBogotaNewBundle

 

src/Bogota/Bundle/NewBundle/BogotaNewBundle.php

 <?php
namespace BogotaBundleNewBundle;
use SymfonyComponentHttpKernelBundleBundle;
class BogotaNewBundle extends Bundle
{
}
 

Наконец я пытаюсь проверить «http://localhost/app_dev.php/» но верните 4040 и **http://localhost/admin/config/system в конфигурации->Торговля->>Дизайн->>>Тема**, но не показывать пользовательские пакеты

Ответ №1:

Пожалуйста, обратите внимание, что единственным правильным определением пакета в предоставленной структуре является BogotaNewBundle. Определения, сделанные в нем, верны, и он успешно зарегистрирует пакет в приложении.

Элемент MedellinBundle не является пакетом Symfony, а что касается темы Oro, то она зависит от пакета и должна быть определена внутри него.


Рекомендуется изучить следующий https://doc.oroinc.com/master/frontend/storefront/quick-start содержание статьи немного точно, а затем все остальные темы в https://doc.oroinc.com/master/frontend/storefront


Вот ссылка на архив простого рабочего пакета с соответствующими определениями тем.

!!!Обратите внимание на папку src/Bogota/Bundle/NewBundle/Ресурсы/представления/макеты/first_theme. first_theme-это имя темы, и оно должно использоваться с командой php bin/console oro:assets:build, если вы хотите запустить сборку только для нее. Также эта команда ожидает, что ресурсы будут установлены в общую папку с помощью команды php bin/console oro:assets:install раньше. Запуск oro:активы:установка включает в себя процедуры сборки.